Глубокое обучение

Transfer Learning

Перенос обучения

актуальноТекущий рабочий стандарт

Направления: Машинное обучение · Обучение представлений, Глубокое обучение · Нейросети

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

Ключевые тезисы

  • Заморозка бэкбона и обучение головы — минимальный рецепт при нескольких сотнях примеров.
  • Дискриминативный : нижние слои учим медленнее верхних.
  • Разрыв доменов решает промежуточное на неразмеченных данных целевого домена.

Какую задачу решает

Обучить сеть с нуля можно, если у вас миллионы размеченных примеров и бюджет на тысячи GPU-часов. У большинства задач нет ни того, ни другого — есть пара тысяч картинок и неделя. снимает это ограничение: берётся модель, уже обученная на большом корпусе, и адаптируется под вашу задачу.

Работает это потому, что нижние слои выучивают универсальные вещи — края, текстуры, части объектов, синтаксис языка, — которые не зависят от конкретной задачи. Специфика живёт наверху, и переучивать нужно в основном её. На практике это даёт качество, недостижимое при обучении с нуля на малых данных, за считанные часы вместо недель.

Рабочий рецепт на 2000 картинках

Шаг 1: заменяем последний слой на свой (число классов ваше), замораживаем всё остальное, обучаем только голову 3–5 эпох со скоростью — модель быстро выходит на разумное качество. Шаг 2: размораживаем всё, снижаем скорость до и обучаем ещё 5–10 эпох с косинусным спадом. Шаг 1 не даёт случайно инициализированной голове разрушить бэкбон большими на первых итерациях; шаг 2 подстраивает под ваш домен. Пропуск первого шага — самая частая причина, по которой выдаёт результат хуже, чем заморозка.

Подробный разбор

2 подтемы — объяснения, формулы, примеры и интерактивные графики.

  1. Заменить голову под свою задачу, заморозить бэкбон, обучить голову (2–3 эпохи).
  2. Разморозить верхние блоки, продолжить с lr в 5–10 раз меньше.
  3. При достаточном объёме данных разморозить всё с дискриминативным lr по слоям.
  4. Всегда: , , отслеживание разрыва train/val.
На практике

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

Медицинские снимки, спутниковые изображения и промышленный контроль плохо покрываются обычным предобучением. Помогает промежуточный этап: self-supervised на своих неразмеченных данных, а уже потом обучение с метками.

  • Даже несколько тысяч неразмеченных изображений своего домена дают заметный эффект.
  • Для текста аналог — на корпусе домена перед классификацией.

Где применяется

  • Зрение с малой выборкойТысяча размеченных снимков дефектов: предобученный ResNet или доводится до рабочего качества за часы.
  • Специализированный NLP на юридических или медицинских текстах: домен узкий, размеченных данных мало.
  • МультиязычностьМодель, обученная на многих языках, переносится на язык, для которого данных почти нет.
  • без Предобученная сеть как экстрактор , поверх — простая или .

Плюсы, минусы и альтернативы

Плюсы

  • Радикально снижает требования к объёму размеченных данных.
  • Сокращает обучение с недель до часов и стоимость — на порядки.
  • На малых выборках качество почти всегда выше, чем при обучении с нуля.
  • Стартовая точка лучше случайной, поэтому обучение устойчивее.
  • Огромный выбор готовых весов почти под любую модальность.

Минусы

  • Наследует смещения и слабости исходной модели вместе с её знаниями.
  • При большом разрыве доменов выигрыш тает, а иногда становится отрицательным.
  • Архитектура фактически задана выбором бэкбона.
  • Легко испортить веса слишком большой скоростью обучения на старте.
  • Лицензии и происхождение обучающих данных исходной модели — реальный юридический риск.

Брать, если

  • Размеченных данных меньше десятков тысяч примеров.
  • Существует предобученная модель на близком домене.
  • Нужен быстрый рабочий прототип с приличным качеством.

Не брать, если

  • Ваш домен радикально не похож на всё предобученное (специфические сенсоры, нестандартные модальности).
  • Данных миллионы и есть бюджет — обучение с нуля даст архитектуру ровно под задачу.
  • Лицензия исходной модели несовместима с вашим применением.

Чем заменяют

Видеолекции

Тайм-кода именно на эту тему в записях нет. Но глава «Глубокое обучение» разобрана в курсах целиком — с той оговоркой, что место в записи придётся искать самому.

Связанные темы

Эффективность моделей

Проверить себя

Тема встречается в тестах по направлениям — ошибки приведут обратно на эту страницу.

Следующий шагПроверить себя: Computer VisionТема встречается в этом тесте 2 раза. Ошибка приведёт обратно на эту страницу — с объяснением, что именно не сошлось.Перейти →

Глава «Глубокое обучение» последний раз правилась . Нашли ошибку — напишите.