Глоссарий

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

Continual Learning

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

Тебе нужно учить модель новому, сохраняя прежние умения. Это цель Continual Learning: обучения на данных или задачах, которые поступают последовательно, с учётом того, чему модель научилась раньше. Название обозначает проблему и семейство подходов; оно не гарантирует, что забывания не будет. Такую потребность описывают Kirkpatrick et al., Overcoming catastrophic forgetting in neural networks, §1.

На одном куске ткани остаются вышитые круги и треугольники, а игла добавляет новый волнистый узор: метафора развития умений с сохранением прежних.

Что мы меняем в обучении и проверке

Допустим, полный архив примеров, на которых модель училась раньше, уже недоступен. Перед его удалением мы сохранили небольшую выборку: 20 сообщений с известными правильными отделами. Один из возможных методов состоит в том, чтобы подмешать эту выборку к новым примерам рекламаций. Благодаря этому дальнейшее обучение получает ещё и сигнал по-прежнему правильно обрабатывать «Где моя посылка?». Повторное использование старых примеров — одна из стратегий, которые описывают van de Ven и Tolias, Three scenarios for continual learning, §3.3.

См. также: Experience Replay — хранение небольшой выборки старых примеров и подмешивание её к новому обучению.

Команда, которая оценивает модель, держит отдельный тест из старых сообщений, который мы не используем для обучения. После каждого обновления мы проверяем и старые, и новые категории. Числа ниже — выдуманный пример, а не результат исследования; в каждом тесте 100 сообщений.

Вариант моделиПравильные старые сообщенияПравильные рекламации
До нового обучения90/1000/100 — такой категории нет
После обучения только на рекламациях40/10092/100
После обучения с выборкой старых сообщений89/10087/100

Последний вариант лучше сохраняет прежнее умение, хотя распознаёт рекламации слабее, чем второй. Таблица показывает, что сравнивать; она не обещает такого результата после добавления 20 примеров.

Условия меняют сложность

В нашем примере модель сама выбирает среди всех известных ей отделов. Подсказка «это сообщение из новой категории» облегчила бы тест. Доступность таких подсказок и границ между задачами важна при сравнении методов (van de Ven и Tolias, §2–2.3). Небольшая выборка может упустить редкие вопросы; хорошее среднее не доказывает, что сохранилось каждое умение.

  • Catastrophic Forgetting [Polski] описывает значительное ухудшение старых умений; его демонстрация показывает, как новое обучение меняет общие настройки.
  • Fine-tuning [Polski] — это дальнейшее обучение модели на отобранных примерах. После очередных тренировок мы проверяем и прежние способности.
  • Knowledge Distillation [Polski] может передавать подсказки от старой модели к обновляемой; это другая стратегия, чем хранение исходных сообщений (§3.3 работы van de Ven и Tolias).

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