Distillation: сокращение моделей через перенос поведения

Термин глоссария

Distillation


Distillation (дистилляция модели) — метод, при котором компактная модель обучается повторять поведение более крупной, перенимая её ответы и структуру решений.

Определение

Distillation — это процесс передачи поведения и знаний от крупной модели (teacher) к компактной модели (student). Большая модель генерирует ответы, логиты или промежуточные представления, а малая модель обучается воспроизводить эти сигналы.

Подход позволяет создавать компактные версии крупных систем с меньшими вычислительными затратами и приемлемым качеством. Несмотря на уменьшение размеров, student сохраняет ключевые особенности поведения teacher-модели.

Как работает

Дистилляция включает три основных компонента:

  • teacher-модель — крупная, мощная система, выдающая референсные ответы;
  • student-модель — сжатая архитектура, обучаемая повторять сигналы teacher;
  • датасет дистилляции — набор запросов, на которых teacher формирует ответы.

Основные этапы:

  • формируется набор входов: реальные данные, синтетика или смесь;
  • teacher генерирует ответы и логиты для каждого входа;
  • student обучается по этим сигналам, стремясь минимизировать разницу между своим выходом и выходом teacher;
  • модель оптимизируется до тех пор, пока не будет достигнуто стабильное качество.

Варианты distillation:

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

Дистилляция не меняет архитектуру teacher-модели. Она создаёт новую модель, построенную с нуля, но обученную под поведение большой системы.

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

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

Практические примеры использования

В компаниях, использующих крупный ассистент, дистилляция помогает создать компактную модель, способную работать локально. Teacher генерирует ответы для внутренних кейсов, а student обучается воспроизводить стиль и логику решений.

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

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

В корпоративных сценариях distillation используется для создания приватной модели, которая не зависит от облака. Teacher обучает student на бизнес-данных, при этом основная модель остаётся закрытой и не используется в продакшене.

В мультиязычных системах distillation помогает адаптировать модель под конкретный язык: teacher выдаёт референсные ответы, а student перенимает стиль и особенности текста.

Преимущества и ограничения

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

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

  • Teacher model
  • Student model
  • Fine-tuning
  • Parameter-efficient training
  • Domain adaptation
  • Low-rank methods
  • Adapters

Категория термина

Обучение и дообучение