Дистилляция моделей
Дистилляция моделей - это техника обучения, при которой небольшая модель-"ученик" учится имитировать гораздо более крупную модель-"учителя", обучаясь на выходах учителя (или его внутренних вероятностных распределениях) вместо сырых меток. Результат - модель с большей частью возможностей учителя при доле размера, задержки и стоимости.
Дистилляция моделей - это техника обучения, при которой небольшая модель-"ученик" учится имитировать гораздо более крупную модель-"учителя", обучаясь на выходах учителя (или его внутренних вероятностных распределениях) вместо сырых меток. Результат - модель с большей частью возможностей учителя при доле размера, задержки и стоимости.
Почему это важно
Компромисс между передовыми и дешёвыми моделями раньше был жёстким: плати в 10 раз больше за модель, которая на 5% умнее, или довольствуйся малым. Дистилляция схлопывает этот разрыв. GPT-4o-mini, Claude Haiku, Gemini Flash, Llama 3 8B Instruct - каждый уровень "малый, быстрый, дешёвый" от крупной лаборатории на практике является дистиллированным потомком флагманской модели. Дистилляция также является предпочтительным способом специализации: модель на 7 млрд, дистиллированная из GPT-4 на транскриптах клиентской поддержки, может превзойти оригинал на этой одной задаче, стоя при этом в 1/100 обслуживания. Для разработчиков дистилляция переформулирует вопрос "какую модель использовать" из "самую большую, что я могу себе позволить" в "какая самая маленькая модель всё ещё справляется с моей задачей".
Как это работает
1. Выберите учителя: Обычно большая, способная модель (GPT-4, Claude Opus, Llama 70B).
2. Сгенерируйте обучающие данные: Одним из способов:
- Дистилляция по выходам: Прогоните учителя на большом наборе входов и сохраните его ответы. Обучите ученика на этих парах (вход, ответ учителя).
- Дистилляция по логитам: Захватите полное вероятностное распределение учителя по словарю на каждом токене ("мягкие цели") и обучите ученика ему соответствовать.
3. Обучите ученика: Стандартное обучение с учителем (fine-tuning), но с использованием выходов учителя в качестве меток. Потеря ученика - это его расхождение с выходом учителя, а не с эталонным ответом, размеченным человеком.
4. Опциональная фокусировка на задаче: Дистиллируйте на данных из конкретной области (код, чат, математика, клиентская поддержка) для специализированной малой модели.
5. Оцените: Сравните ученика с учителем на отложенных бенчмарках. Цельтесь в 80-95% качества учителя при <10% стоимости.
Дистилляция по выходам против дистилляции по логитам
| Аспект | Дистилляция по выходам (ответам) | Дистилляция по логитам (мягким целям) |
|---|---|---|
| Данные | Только текстовые выходы учителя | Полные вероятности токенов учителя |
| Требуемый доступ | Только API | Нужны сырые веса модели |
| Качество | Хорошее | Лучше (больше сигнала на токен) |
| Стоимость | Дёшево | Дороже (стоимость захвата) |
| Сценарий применения | Дистилляция из закрытых API | Дистилляция из открытых или собственных моделей |
Дистилляция по выходам - это то, что делает большинство команд, потому что у них нет доступа на уровне весов к GPT-4 или Claude. Дистилляция по логитам - это академический стандарт, но требует открытых моделей.
Известные дистиллированные модели
DistilBERT (Hugging Face, 2019): Оригинал. 60% размера BERT, 95% его производительности, на 60% быстрее.
Alpaca / Vicuna (Stanford / LMSYS, 2023): Llama, дистиллированная из выходов GPT-3.5. Сделала малые модели, следующие инструкциям, дешёвыми.
GPT-4o-mini, Claude Haiku, Gemini Flash: По сообщениям, дистиллированы из соответствующих флагманов, хотя детали не публичны.
Llama 3.2 1B / 3B: Малые модели Meta, дистиллированные из более крупных вариантов Llama для использования на устройстве.
DeepSeek-R1-Distill (2025): Открытые дистиллированные версии рассуждений DeepSeek-R1 в более малые базовые модели Llama и Qwen.
TinyLlama, Phi-3: Малые модели, обученные с применением техник в стиле дистилляции, чтобы превзойти свой весовой класс по параметрам.
Когда применять дистилляцию
Продукт, ориентированный на стоимость: Вам нужна большая часть качества, но вы не можете позволить себе GPT-4 или Claude Opus на каждый запрос.
UX, чувствительный к задержке: Чат-ассистенты, где ответы должны укладываться в доли секунды.
Специализация: Узкая задача (классификация намерений, извлечение JSON, автодополнение кода), где малая дообученная модель превосходит общий флагман.
На устройстве или в изолированной среде: Где запуск модели на 70 млрд невозможен.
Высокообъёмная пакетная обработка: Классификация документов миллионами в день - флагманские модели слишком дороги.
Когда её не применять
У вас недостаточно данных от учителя: Нужны минимум тысячи качественных пар (вход, выход учителя).
Открытые творческие задачи: Дистиллированные модели часто теряют нюансы и креативность.
Передовые рассуждения: Математика, программирование и сложные рассуждения по-прежнему выигрывают от запуска настоящей передовой модели.
Быстро меняющиеся области: Дистиллированная модель - это снимок. Если область меняется еженедельно, дистилляция отстаёт.
Компромиссы
Потолок качества: Ученик не может превзойти учителя. Дистилляция переносит, а не создаёт.
Хрупкость на незнакомых входах: Малые модели хуже обобщают. Входы вне распределения деградируют быстро.
Наследование смещений: Смещения учителя (а также ошибки и галлюцинации) запекаются в ученика.
Авансовая стоимость API: Дистилляция из закрытого API требует оплаты тысяч инференсов учителя в ходе генерации данных.
Риск соответствия требованиям: Некоторые условия использования закрытых API запрещают применять выходы для обучения конкурирующих моделей. Читайте условия.
Распространённые ошибки
Дистилляция без оценки: Без отложенных бенчмарков вы не можете сказать, соответствует ли ученик учителю.
Крошечный ученик, сложный учитель: Ученик на 1 млрд не может уловить всё поведение учителя на 175 млрд. Сопоставляйте масштаб амбициям.
Пренебрежение качеством данных: Плохие выходы учителя (галлюцинированные, не по задаче) запекаются в плохое поведение ученика.
Отсутствие специализации: Дистилляция общей модели из общей модели часто даёт худшую общую модель. Дистиллируйте под задачу.
Слепые зоны в соответствии требованиям: Тихое обучение на выходах API конкурентов - это юридическая бомба замедленного действия. Сверьтесь с условиями использования.
Источники: