Дистилляция моделей
Материал из MachineLearning.
| | Статья написана с использованием LLM DeepSeek-V3 и проверена участником М. Мишин 14:17, 17 июня 2026 (MSD)
Промпт приводится полностью в Обсуждение:Дистилляция моделей |
|
Определение и основная идея
Дистилляция моделей (англ. knowledge distillation) — метод обучения компактной модели (ученика), при котором целевыми значениями выступают не только истинные метки, но и выходы более мощной, предварительно обученной модели (учителя). В основе подхода лежит аналогия с педагогической передачей опыта: учитель, обладающий обширными знаниями о предметной области, снабжает ученика не просто верными ответами, а подробными объяснениями относительного правдоподобия всех альтернатив. В машинном обучении таким объяснениям соответствуют мягкие метки — векторы вероятностей классов, полученные применением сигмоиды или softmax к выходам модели-учителя.
Ключевым понятием дистилляции является тёмное знание — информация о сходстве классов, закодированная в вероятностях, которые учитель назначает ошибочным классам. Например, если для изображения рукописной цифры «3» учитель отводит заметную вероятность классу «8», а для «8» — классу «3», это отражает геометрическую близость форм. Жёсткая метка (one-hot вектор) полностью уничтожает эти сведения, тогда как мягкие метки сохраняют структуру многообразия данных, позволяя ученику быстрее обобщать и избегать переобучения.
Чтобы сделать тёмное знание более доступным, распределение вероятностей «сглаживают» с помощью параметра температуры в функции softmax:
где
— логит для
-го класса. При
получается стандартное распределение; при
распределение стремится к равномерному; при
вероятности нецелевых классов возрастают, и модель-ученик получает более «мягкую» цель. На этапе предсказания ученик всегда использует
.
Формально дистилляция определяется как процесс обучения ученика путём совместной минимизации двух потерь: одной, основанной на истинных метках, и второй, измеряющей расхождение между выходами учителя и ученика при повышенной температуре.
Математическая формализация
Пусть и
— векторы логитов учителя и ученика соответственно;
— истинная жёсткая метка (one-hot);
— стандартный softmax (
);
— softmax с температурой
. Функция потерь ученика записывается как взвешенная сумма двух слагаемых:
где — коэффициент дистилляции, а
обычно выбирается как дивергенция Кульбака–Лейблера:
Множитель компенсирует масштабирование градиентов: при больших
градиенты
убывают пропорционально
, поэтому умножение на
сохраняет относительный вклад дистилляционной потери неизменным при изменении температуры. На практике иногда используют упрощённый вариант без
, подбирая
эмпирически.
Выбор регулирует баланс между подражанием учителю и следованию истинным меткам. Часто полагают
, полностью полагаясь на мягкие метки, если учитель достаточно точен. Температуру обычно выбирают в диапазоне от 2 до 20, адаптируя её к количеству классов и уверенности учителя.
Классификация методов
Офлайн-дистилляция
Наиболее распространённый сценарий: большая модель-учитель предварительно обучена на полном наборе данных и зафиксирована. Ученик обучается на выходах учителя, не влияя на него. Процесс однонаправлен и прост в организации, однако качество ученика ограничено качеством учителя, а вычислительные затраты на обучение учителя не амортизируются. Офлайн-дистилляция лежит в основе таких широко известных моделей, как DistilBERT.
Онлайн-дистилляция
Учитель и ученик обучаются одновременно, обычно в рамках одного цикла. Знания могут передаваться от ансамбля моделей к каждому участнику (ансамблевая дистилляция) или циркулировать между несколькими равноправными моделями (взаимное обучение, deep mutual learning). Такой подход позволяет ученику влиять на учителя и часто приводит к взаимному улучшению, но требует больших вычислительных ресурсов во время обучения. Онлайн-дистилляция особенно полезна, когда заранее готового учителя нет, или требуется обучить несколько компактных моделей одновременно.
Самодистилляция
Ученик использует собственные предсказания или внутренние представления в качестве учительских сигналов. Распространённые приёмы:
- глубокая часть сети выступает учителем для мелкой («self-distillation from deeper layers»);
- модель на поздних эпохах обучения служит учителем для своих ранних состояний (born-again networks);
- агрегация предсказаний нескольких ветвей внутри одной модели.
Самодистилляция не требует отдельной модели-учителя и может улучшать качество без дополнительных данных, однако прирост часто скромнее, чем от внешней дистилляции, и требует тщательного подбора архитектурных решений.
Связь с другими методами сжатия
Дистилляция направлена на уменьшение вычислительной сложности модели и занимает место в ряду техник сжатия наряду с прунингом и квантизацией, однако принципиально отличается от них по механизму и областям применения.
- Сравнение с прунингом. Прунинг удаляет избыточные веса или нейроны в уже обученной модели, не меняя её архитектурного типа. Дистилляция переносит знания в модель произвольной, потенциально совершенно иной архитектуры, возможно, более эффективной для целевого оборудования. Прунинг часто не требует дорогостоящего переобучения с нуля, тогда как дистилляция — это полноценный процесс обучения ученика. Взаимодополнение: прунинг может применяться к ученику после дистилляции для дополнительного сжатия.
- Сравнение с квантизацией. Квантизация уменьшает разрядность весов и активаций, сокращая объём памяти и ускоряя инференс на аппаратуре с поддержкой низкой точности, но сохраняет топологию сети и количество операций. Дистилляция уменьшает именно количество операций за счёт меньшего числа параметров и слоёв. Квантизация практически не требует данных, тогда как дистилляция нуждается в обучающей выборке или синтезированных примерах. На практике дистилляцию часто комбинируют с последующей квантизацией ученика.
Дистилляция выигрывает в сценариях, где допустимо изменить архитектуру и важно сократить как память, так и вычислительную сложность, а также когда хотят использовать сильные стороны разных типов моделей (например, перенести знания из ансамбля в одиночную сеть). Прунинг и квантизация предпочтительнее, когда требуется сохранить исходную структуру модели или обучение ученика невозможно из-за ограничений на данные и вычислительные ресурсы.
Современные направления и прикладное значение
Дистилляция стала стандартным инструментом при развёртывании нейросетевых моделей в промышленности. В обработке естественного языка эталонным примером служит DistilBERT — версия BERT, обученная с использованием трёх сигналов: дистилляция на логитах (), косинусное расстояние между эмбеддингами и расстояние между скрытыми состояниями. При 40%-м сокращении числа параметров DistilBERT сохраняет до 97% качества на задачах классификации и ответа на вопросы. Модели семейства TinyBERT развивают идею, применяя двухстадийную дистилляцию (общая и предметно-специфичная) и перенося знания не только на уровне выходов, но и на уровне матриц внимания и скрытых представлений.
В компьютерном зрении активно применяются дистилляция признаков (FitNets), перенос внимания (attention transfer) и дистилляция отношений между объектами (relational knowledge distillation). Эти методы позволяют обучать компактные архитектуры типа MobileNet или EfficientNet от больших учителей, сохраняя точность в задачах классификации, детекции и сегментации.
Дистилляция больших языковых моделей (LLM) сталкивается с особыми трудностями, вызванными авторегрессионным характером генерации текста. Стандартная дистилляция на уровне next-token prediction с teacher forcing возможна, но требует осторожного подбора температуры и часто приводит к накоплению ошибок. В последние годы распространение получила дистилляция инструктивных моделей: учитель генерирует пары «инструкция — ответ», а ученик обучается на этих синтетических данных, имитируя стиль и фактические знания учителя (Alpaca, Orca). Активно исследуются методы дистилляции цепочек рассуждений (chain-of-thought distillation), направленные на перенос способности к многошаговым рассуждениям. Среди открытых проблем — сохранение фактической точности и предотвращение переноса галлюцинаций учителя, а также высокая стоимость инференса учителя при генерации больших датасетов.
Другие перспективные направления включают бесданную дистилляцию (data-free knowledge distillation), синтезирующую обучающие примеры без доступа к оригинальной выборке, кросс-модальную дистилляцию (перенос знаний между модальностями, например из изображений в текст) и дистилляцию задач (task distillation), где мягкие метки формируются ансамблем специализированных моделей для обучения многозадачного ученика.
См. также
- Logit
- Дивергенция Кульбака-Лейблера
- Transfer learning
- Сжатие моделей
- Pruning
- Quantization
- DistilBERT
- Трансформер (архитектура)
- Teacher model
- Student model
- Soft labels
- Dark knowledge
- Softmax температура
Литература
- Hinton G., Vinyals O., Dean J. Distilling the Knowledge in a Neural Network // NIPS Deep Learning and Representation Learning Workshop, 2015. arXiv:1503.02531 — основополагающая работа, вводящая понятия дистилляции знаний, тёмного знания и температурного сглаживания softmax.
- Romero A., Ballas N., Kahou S. E., Chassang A., Gatta C., Bengio Y. FitNets: Hints for Thin Deep Nets // ICLR, 2015. arXiv:1412.6550 — первая работа по дистилляции через промежуточные представления (hints), положившая начало дистилляции признаков.
- Zagoruyko S., Komodakis N. Paying More Attention to Attention: Improving the Performance of Convolutional Neural Networks via Attention Transfer // ICLR, 2017. arXiv:1612.03928 — метод переноса карт внимания, ставший стандартным подходом в дистилляции для компьютерного зрения.
- Zhang Y., Xiang T., Hospedales T. M., Lu H. Deep Mutual Learning // CVPR, 2018. arXiv:1706.00384 — формализация онлайн-дистилляции, где равноправные модели обучаются одновременно, обмениваясь мягкими метками.
- Furlanello T., Lipton Z. C., Tschannen M., Itti L., Anandkumar A. Born-Again Neural Networks // ICML, 2018. arXiv:1805.04770 — строгая постановка самодистилляции, при которой модель последовательно переобучается, используя собственные предсказания как целевые.
- Chen H., Wang Y., Xu C., Yang Z., Liu C., Shi B., Xu C., Xu C., Tian Q. Data-Free Learning of Student Networks // ICCV, 2019. arXiv:1904.01186 — первая эффективная техника бесданной дистилляции, породившая целое семейство методов генерации синтетических обучающих примеров.

