Можно ли дистиллировать между сильно отличающимися архитектурами, например, ResNet и трансформером?
Что проверяют
Понимаете ли вы, какие виды дистилляции от архитектуры не зависят, а какие ломаются, когда у учителя и ученика разное внутреннее представление. Следом часто просят реальный пример и спрашивают, как сопоставить признаки свёрточной сети и трансформера.
Как отвечать
Да, можно, и это проверенный путь. Разберите по уровням:
- дистилляция по выходам: ученик учится на мягких вероятностях учителя, loss это KL-дивергенция между распределениями с температурой
T(с множителемT²) плюс обычная cross-entropy по истинным меткам. Нужны только общее пространство выходов и одинаковые входы, внутреннее устройство моделей не важно; - дистилляция по признакам: ученик повторяет промежуточные представления учителя. Тут архитектуры мешают: у ResNet карта признаков
C×H×Wс локальным рецептивным полем, у ViT последовательность токеновN×D. Нужны адаптеры: линейная проекция или свёртка 1×1, приведение к одному пространственному разрешению, выбор соответствующих слоёв; - дистилляция внимания: у свёрточной сети нет прямого аналога карт внимания, между такими архитектурами приём почти не переносится.
Хороший пример: в работе DeiT трансформер-ученика учили на предсказаниях свёрточного учителя, и такой учитель дал результат лучше, чем учитель-трансформер. Авторы объясняют это тем, что ученик перенимает индуктивное смещение свёрток, которого ему не хватает при обучении только на ImageNet.
Практические детали: учитель и ученик должны видеть одну и ту же аугментированную картинку, иначе мягкие метки не соответствуют входу; дистилляции нужно долгое обучение; слишком сильный учитель при слабом ученике помогает хуже, чем учитель среднего размера.
Где спотыкаются
Говорят «нельзя, архитектуры разные», путая дистилляцию по логитам с копированием весов или признаков.
Пытаются напрямую приравнять признаки ResNet и ViT через MSE без проекции и выравнивания, а потом удивляются, что loss не падает.
Считают учителя с лучшей точностью автоматически лучшим учителем. Разрыв в ёмкости и несовпадение индуктивных смещений важнее одного числа на валидации.