Sobes.tech
Back to questions
Middle — Senior
9

Что такое continual learning и проблема catastrophic forgetting?

Companies where asked
ЛингваАИ

Answer from AI

sobes.tech AI

Что хотят услышать интервьюеры:

Continual learning — это обучение модели на последовательности задач или потоков данных без полного переобучения с нуля. Ключевая проблема здесь — catastrophic forgetting: при обучении на новых данных модель заметно теряет качество на старых. Важно показать, что это одна из центральных проблем для систем, которые должны долго жить и адаптироваться.

Определение:

Continual learning — подход к машинному обучению, при котором модель постепенно дообучается на новых данных или новых задачах, сохраняя способность решать уже изученные задачи.
Catastrophic forgetting — резкое забывание ранее выученных знаний при обучении на новой информации, особенно если новые данные не содержат примеров старых задач.

Проблема возникает потому, что параметры модели оптимизируются под новые данные, и это может разрушать представления, полезные для старых задач.

Пример использования:

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

# Условный пример дообучения модели на новых данных
model.train(home_commands_data)   # первая задача
model.train(car_commands_data)    # вторая задача

# Если не применять методы continual learning,
# качество на home_commands_data может заметно упасть
home_score = model.evaluate(home_commands_data)
car_score = model.evaluate(car_commands_data)

Если после обучения на автомобильных командах модель хуже распознаёт домашние, это и есть catastrophic forgetting.

Пояснение кода:

Код показывает последовательное обучение на двух наборах данных. Сначала модель подстраивается под первую задачу, затем — под вторую. Если обучение идёт без специальных механизмов сохранения старых знаний, градиенты от второй задачи могут «перезаписать» важные веса, и первая задача деградирует.
На практике для этого используют replay старых примеров, регуляризацию, архитектурное разделение параметров или distillation, чтобы уменьшить забывание.

Ключевые моменты:

  • Continual learning нужен там, где данные приходят постепенно, а модель должна адаптироваться без полного retrain.
  • Catastrophic forgetting — главный риск: новая задача ухудшает старые.
  • Проблема особенно заметна в нейросетях, потому что параметры общие для многих знаний.
  • Популярные способы борьбы: replay, regularization, distillation, изоляция частей модели.
  • Важно не только учить новые задачи, но и сохранять качество на уже изученных.