Автоматы и сознание

Учиться учиться

Цели урока

  • Понимать проблему sample efficiency и почему стандартное ML-обучение требует много данных
  • Разбираться в алгоритме MAML - двухуровневая оптимизация, inner/outer loop
  • Объяснить In-Context Learning как имплицитную форму мета-обучения через attention
  • Видеть связку мета-обучение - самоулучшение - alignment

Предварительные знания

  • Attention и трансформеры (урок 07-attention-memory)
  • Градиентный спуск и backpropagation
  • Функции потерь и основы supervised learning

Ребёнок видит одного жирафа - и узнаёт всех жирафов. ImageNet требует 1,28 миллиона изображений. Разрыв в 200 000 раз - и мета-обучение единственный подход, который его сокращает.

  • **GPT-3 few-shot (2020)** - 175 млрд параметров адаптируются к новой задаче за 3-5 примеров без обновления весов
  • **AlphaGo Zero (2017)** - за 40 дней самоигры достиг уровня выше всех людей, без единой человеческой партии
  • **MAML (Chelsea Finn, 2017)** - классификатор изображений, обученный мета-методом, адаптируется к новому классу за 5 примеров
  • **Robotics (Berkeley, 2019)** - роботизированная рука мета-обучается хватать новые объекты за 10-15 демонстраций
  • **Drug discovery (2022)** - мета-обученные модели предсказывают эффективность новых молекул с 50+ примерами вместо 10 000+

MAML - элегантная идея за 7 страниц

Chelsea Finn опубликовала MAML в 2017 году на ICML - в 7 страницах уместилась идея, которая открыла новое направление исследований. Ключевая интуиция: не оптимизировать веса для решения задач, а оптимизировать их для быстрой адаптации. Статья получила >10 000 цитирований за 5 лет и стала одной из самых влиятельных в истории современного ML.

Проблема sample efficiency

**Ребёнок видит одного жирафа - и узнаёт всех жирафов. ImageNet-модель требует 1,28 миллиона размеченных изображений только чтобы научиться отличать кошку от собаки.** Разрыв не в интеллекте - в том, что ребёнок приходит с предзнаниями о структуре мира, накопленными эволюцией за сотни тысяч лет. ML-модель начинает с нуля при каждом запуске.

ЗадачаЧеловекML-модель
Распознать новый объект1-5 примеров10 000+ примеров
Освоить новую игруМинутыМиллионы игровых шагов
Выучить новое слово1-2 упоминанияСотни контекстов
Адаптироваться к новому APIЧасы чтения документацииFine-tuning на тысячах примеров

**Мета-обучение** - вместо того чтобы учить конкретный навык, обучается сама способность быстро учиться. Цель: найти алгоритм или инициализацию, которые делают адаптацию к новой задаче максимально быстрой при минимуме данных.

  1. **Уровень 0 (задача)**: решить конкретную задачу - например, классифицировать собак/кошек
  2. **Уровень 1 (обучение)**: научиться решать класс задач - любую классификацию изображений
  3. **Уровень 2 (мета-обучение)**: научиться быстро адаптироваться к любой новой задаче
  4. **Уровень 3 (мета-мета)**: улучшать сам алгоритм мета-обучения

Иерархия уровней в коде

// Уровень 0: решить задачу function solve(task: Task): Solution { return model.predict(task.input) } // Уровень 1: обучить модель function train(data: Example[]): Model { return gradientDescent(data, randomInit()) } // Уровень 2: мета-обучение function metaLearn(tasks: Task[]): MetaLearner { // Оптимизируем для быстрой адаптации к ЛЮБОЙ задаче return optimizeForFastAdaptation(tasks) } // Уровень 3: мета-мета (самоулучшение) function metaMetaLearn(): MetaMetaLearner { return improveMetaLearningAlgorithm() }

Мета-обучение - это просто обучение на большем количестве данных

Мета-обучение оптимизирует инициализацию или алгоритм для быстрой адаптации с малым числом примеров

Большие датасеты помогают при обычном обучении, но не решают проблему few-shot adaptation. Мета-обучение меняет цель оптимизации - вместо минимизации ошибки на одной задаче ищется инициализация, из которой легко адаптироваться к любой задаче.

В чём принципиальная разница между обычным обучением и мета-обучением?

MAML - найти хорошую точку старта

**Chelsea Finn (Berkeley, 2017) предложила MAML - Model-Agnostic Meta-Learning. Идея: найти такую начальную инициализацию весов, из которой модель адаптируется к любой новой задаче за 1-5 шагов градиентного спуска.** Геометрически - найти точку в пространстве параметров, равноудалённую от оптимумов всех задач.

**Вычислительная цена MAML:** вычисление градиента через inner loop требует дифференцирования по шагам адаптации - это second-order gradients. На практике используют Reptile (first-order приближение) или FOMAML, которые на 50-70% быстрее при сопоставимом качестве.

МетодПорядок градиентовСкоростьКачество
MAML2-й порядокМедленнееЛучше
FOMAML1-й порядокБыстрееБлизко к MAML
Reptile1-й порядокСамый быстрыйНемного хуже
ProtoNetsБез градиентовОчень быстроХорошо для классификации

MAML учится решать задачи

MAML учится находить инициализацию, из которой легко адаптироваться к любой задаче

Мета-параметры theta не оптимизированы для решения какой-либо конкретной задачи - они оптимизированы для того, чтобы из них быстро получить хорошее решение любой задачи. Это принципиально другая цель оптимизации.

Почему MAML использует два вложенных цикла оптимизации (inner и outer loop)?

In-Context Learning - мета-обучение без градиентов

**GPT-3 (Brown et al., 2020) обнаружил феномен, которого никто не планировал: дай модели 3-5 примеров задачи в промпте - и она выполняет задачу без какого-либо обновления весов.** Это называется In-Context Learning (ICL) - форма мета-обучения, где адаптация происходит через механизм attention, а не через градиентный спуск.

Few-shot learning: антонимы без дообучения

const prompt = ` Input: happy Output: sad Input: big Output: small Input: fast Output: slow Input: hot Output:` // GPT отвечает: "cold" // 3 примера - и задача понята без обновления весов!

Как это работает? Гипотеза Akyurek et al. (2022): трансформер при предобучении неявно реализует алгоритм градиентного спуска внутри attention-слоёв. Примеры в контексте - это неявные "шаги обучения" без явного обновления весов.

Тип обученияГде хранится знаниеКак адаптируетсяОбновление весов
Fine-tuningВ весах моделиЧерез градиентный спускДа
MAMLВ мета-инициализацииЧерез inner loop (5 шагов)Да (inner)
ICL (few-shot)В активациях attentionЧерез примеры в контекстеНет
RAGВо внешней базе данныхЧерез retrieval + contextНет

**Байесовская интерпретация ICL:** модель неявно оценивает P(задача | примеры) - "какая задача лучше объясняет увиденные пары input/output?" - и применяет соответствующий алгоритм. Это Байесовский вывод без явной вероятностной модели.

Почему In-Context Learning работает без обновления весов модели?

Путь к самоулучшению

**AlphaGo Zero (DeepMind, 2017) стал лучшим игроком в го за 40 дней, не видя ни одной человеческой партии. Только самоигра и reinforcement learning.** Это крайний случай мета-обучения: система сама генерирует задачи, сама обучается на них, сама оценивает прогресс.

РискОписаниеЧастичное решение
Reward hackingСистема находит лазейки в функции оценкиRLHF, Constitutional AI
Distribution shiftСинтетические данные не совпадают с реальнымиРегулярная проверка на реальных бенчмарках
Catastrophic forgettingУлучшение одного навыка ломает другиеEWC, Progressive Neural Networks
Alignment driftЦели смещаются от изначальныхВнешние ограничения и верификация

**Scalable Oversight** - активная область исследований Anthropic и OpenAI: как обеспечить, чтобы самоулучшающиеся системы оставались aligned с намерениями создателей, когда их возможности превышают возможности надзирающих людей.

**Goodhart's Law в контексте мета-обучения:** когда метрика становится целью, она перестаёт быть хорошей метрикой. Самоулучшающаяся система найдёт способ максимизировать reward-сигнал, не обязательно улучшая реальные способности. AlphaGo Zero избегает этого за счёт чётко определённой игровой среды с однозначным исходом.

Самоулучшающийся AI неизбежно станет сверхинтеллектом

Самоулучшение ограничено качеством reward-сигнала, вычислительными ресурсами и риском distribution shift

AlphaGo Zero достиг superhuman уровня в го - но только в го. Обобщение на другие задачи требует другой архитектуры. Бесконтрольный recursive self-improvement теоретически возможен, но практически ограничен реальными constraints.

Почему AlphaGo Zero смог эффективно самообучаться, тогда как языковые модели сталкиваются с reward hacking при самоулучшении?

Вопросы для размышления

  • Почему люди после изучения одного языка программирования осваивают следующий значительно быстрее - и как это связано с мета-обучением?

Связанные уроки

  • ml-01-intro
Учиться учиться

0

1

Войти