Глоссарий

Термин глоссария · · 3 мин чтения

Experience Replay

Модель научилась направлять вопросы клиентов в отделы «доставка» и «возвраты». Теперь ты дообучаешь её распознавать рекламации, например «Товар пришёл повреждённым». Если в следующих упражнениях она видит одни только рекламации, она может хуже справляться с давно знакомым «Где посылка?». Полный старый архив недоступен. Можно ли возвращаться хотя бы к нескольким сохранённым сообщениям?

Experience Replay (ER) состоит в том, чтобы хранить часть прежних примеров и повторно использовать их для обучения. В простом варианте к порции новых данных подмешиваются примеры из памяти, которую называют replay buffer. Это контейнер с данными для повторения, а не запись всех знаний модели. Такое совместное обучение описывают Chaudhry et al., Continual Learning with Tiny Episodic Memories, §2, алгоритм 1.

Сохранённые тёмно-синие и охристые карточки возвращаются из небольшой коробки в ряд новых красных карточек: метафора повторения во время дальнейшего обучения.

Что попадает в следующее упражнение

Перед потерей архива мы сохранили четыре сообщения вместе с правильными отделами. Теперь у нас четыре новые рекламации. Без повторов модель учится на четырёх новых сообщениях. С повторами она упражняется ещё и на четырёх старых: снова получает сигнал, что «Где посылка?» относится к доставке. В этом маленьком примере мы используем весь буфер; большие буферы обычно выдают случайно выбранную порцию.

Однако посчитать места в памяти недостаточно. В четырёх сохранённых вопросах о доставке нет ни одного примера возврата. Если заменить два из них на «Как отправить покупку обратно?» и «Хочу вернуть рубашку», число повторов останется тем же, но они охватят оба прежних отдела. Эксперимент ниже считает примеры в порции данных; он не предсказывает точность модели.

Повторы помогают только на доступных данных

Модель получает возможность упражняться в прежних ответах, но не гарантию сохранения всех умений. Маленькая случайная выборка может полностью упустить редкую категорию; такую проблему исследователи наблюдали при очень маленьких буферах (§4.4 той же работы). Наши сообщения — собственный пример, а не результат этих экспериментов. Результат обучения нужно проверять на отдельных старых и новых сообщениях, не использованных для тренировки. Кроме того, буфер занимает память и требует хранить отобранные данные.

См. также: Reservoir Sampling — способ решать, какие примеры из потока попадают в буфер постоянного размера, дающий каждому равный шанс.

В играх, в Reinforcement Learning [Polski] — обучении действиям на основе наград — сохраняют ситуацию, действие, награду и следующую ситуацию. Случайный выбор таких записей ослабляет зависимость от событий, следующих непосредственно друг за другом (Mnih et al., Human-level control through deep reinforcement learning, Methods, «Training algorithm for deep Q-networks»). Это другие данные, чем сообщение с правильным отделом; результаты с Atari нельзя напрямую переносить на LLM.

  • Continual Learning задаёт цель дальнейшего обучения с сохранением прежних способностей; ER — один из способов её достижения.
  • Catastrophic Forgetting [Polski] описывает значительное ухудшение прежних умений, которое повторы могут ограничивать.
  • Fine-tuning [Polski] — это дальнейшее обучение модели; replay меняет подбор его данных. Простая вставка старых сообщений в разговор не является таким обновлением модели.

Текст и иллюстрация подготовлены с помощью ИИ. Сообщения и демонстрация — собственный упрощённый учебный пример; иллюстрация — метафора, а не схема устройства модели.