Словарь ИИ
Что такое перенос обучения
Коротко
Перенос обучения (transfer learning) это подход, при котором модель, уже обученную на одной большой задаче, доучивают под новую задачу на небольшом наборе данных.
Машинное обучение · transfer learning
Михаил МозгПроверено: 1 минута чтения
Ребенку
Если ты умеешь кататься на самокате, научиться ездить на велосипеде легче: ты уже держишь равновесие и смотришь на дорогу. Не нужно начинать с нуля, осталось привыкнуть к педалям. Компьютер учится похожим образом. Сначала он долго учится смотреть на картинки вообще, а потом быстро запоминает, как выглядят именно твои игрушки.
Простыми словами
Обучить модель с нуля дорого: нужны горы примеров и много вычислений. Поэтому берут модель, которая уже научилась общим вещам, например различать линии, формы и текстуры на фотографиях или понимать устройство языка. Ее последние слои меняют под свою задачу и доучивают на сотнях или тысячах собственных примеров. Так клиника получает модель для снимков, а завод для фото деталей, хотя своих данных у каждого мало. Большие языковые модели устроены по тому же принципу: сначала их учат на огромном массиве текста, потом подстраивают.
Для бизнеса
Подход объясняет, почему компании среднего размера вообще могут позволить себе ИИ: не нужно собирать миллионы примеров и арендовать вычисления на месяцы. Берут открытую или коммерческую базовую модель и доучивают ее на своих данных, иногда несколько сотен размеченных примеров уже дают рабочий результат. Затраты складываются из подготовки данных, времени работы видеокарт и проверки качества. Риски: исходная модель может не знать вашей отрасли, переносит чужие ошибки и предвзятость, а ее лицензия может ограничивать коммерческое использование. До выбора модели проверяют лицензию, место хранения данных при обучении и качество на ваших примерах. Как такие модели встраиваются в работу компании, показано в разборе устройства ИИ по этажам.
Для специалиста
Перенос обучения (transfer learning) использует представления, выученные на исходной задаче (source task), для целевой задачи (target task) с меньшим объемом данных. Классическая схема: сеть предобучают на большом корпусе, затем либо замораживают как извлекатель признаков (feature extraction), либо дообучают целиком или частично (fine-tuning). Yosinski и др. (2014) показали, что ранние слои сверточных сетей выучивают общие признаки, а поздние специфичны для задачи, и что инициализация перенесенными весами усиливает обобщение даже после дообучения. В NLP метод ULMFiT (Howard, Ruder, 2018) со ста размеченными примерами достиг качества обучения с нуля на объеме в сто раз больше. Сегодня схема выглядит как предобучение базовой модели и последующее дообучение, в том числе параметро-эффективными методами (PEFT). Смежные понятия: адаптация домена (domain adaptation), многозадачное обучение (multi-task learning), обучение по нескольким примерам (few-shot).
Пример
Сеть автосервисов хочет по фото определять тип повреждения кузова. Вместо обучения с нуля инженеры берут модель, уже обученную на большом наборе обычных фотографий, и доучивают ее на нескольких тысячах снимков из своих заказ-нарядов.
Связанные термины
Вопросы и ответы
Чем перенос обучения отличается от дообучения?
Сколько данных нужно, если модель уже обучена?
Источники
Где это применяют в компании
Не уверены, нужно ли это вашей компании?
Карта ИИ-решений