Вступление

В недавних публикациях в рамках НЛП представлены модели с количеством параметров, которые одна за другой продолжают увеличиваться и теперь достигают десятых долей миллиардов (Google T5 с параметрами 11B). Хотя большее количество параметров может быть ключом к оптимальной производительности, это препятствует обучению и обслуживанию модели там, где вычислительный бюджет может быть ограничен. В документе, кратко изложенном в этой статье, DistillBERT, дистиллированная версия BERT: меньше, быстрее, дешевле и легче »эта проблема рассматривается с помощью метода, называемого Кистилляция знаний.

Кистилляция знаний

Дистилляция знаний, представленная Bucila et al. (2006) и дополнительно улучшены Hinton et al. (2015) (комментарии по поводу вклада этих работ см. В приложении) использует более крупную модель в качестве учителя для более мелкой модели, которая пытается воспроизвести ее результаты и активацию подуровня для заданного набора входных данных. Предыдущая работа показала, что при обучении студента полезно учитывать не только истинные цели (горячие векторы). Использование распределения выходных данных учителя по всем возможным целям может предоставить ценную информацию для создания учащегося, способного к обобщению. Например, предсказывая скрытое слово в последовательности Я думаю, что это начало красивой [маски], учитель может назначить высокую вероятность таким словам, как день и жизнь. Условно говоря, могут быть также высокие вероятности, присвоенные другим словам, таким как мир, история или будущее. Этот нюанс важен для изучения модели учащегося, чтобы она могла обобщать, а не только изучать правильную цель. Этот документ фиксирует эту информацию через функцию потерь, используемую для обучения студента, состоящую из линейной комбинации следующих трех факторов:

Потеря дистилляции. Выходные вероятности учителя (t) объединяются с ответами учащегося (s), как показано в уравнении ниже. Следовательно, чтобы минимизировать эту потерю, студенческая сеть хочет иметь более высокую уверенность (вероятность) для тех же результатов, которые учитель предоставил с большими вероятностями. Вероятности учителя рассчитываются с помощью температуры softmax, модификации softmax, введенной Hinton et al. как способ получить больше от детализации распределения результатов модели учителя. Это в основном уменьшает размер больших вероятностей, увеличивая размер меньших, создавая более плавное распределение выходных данных.

Косинусные потери при внедрении. Измерение расстояния между скрытыми представлениями учащегося и учителя. По сути, это позволяет ученику имитировать учителя в большем количестве слоев, чем только выходной слой, интуитивно позволяя создавать лучшую модель.

Потери при моделировании замаскированного языка. Те же потери, что и при обучении BERT для предсказания правильного токена, замаскированного из последовательности.

Архитектура

Студенческая сетевая архитектура представляет собой модель кодировщика Transformer с половиной количества слоев по сравнению с базой BERT, при сохранении того же размера скрытого представления. Это приводит к общему количеству параметров 66 миллионов по сравнению с 110 миллионами в модели учителя. Причина этого выбора заключается в том, что уменьшение размера модели за счет количества слоев приводит к максимальному снижению сложности вычислений. Уменьшение представления скрытого состояния (размера векторов) из-за оптимизации линейной алгебры, используемой для каждой векторной операции, привело бы к такому же уменьшению размера модели, но не в вычислительной сложности. Кроме того, простое изменение количества слоев позволяет инициализировать сеть учеников с параметрами из всех остальных слоев модели учителя.

Обучение

Эта студенческая сеть была обучена на том же наборе данных, что и исходная модель BERT, в соответствии с передовыми практиками для кодировщиков трансформаторов; большие партии (до 4 тыс. выборок), предназначенные только для прогнозирования замаскированных токенов, а не для следующей задачи прогнозирования предложения. По сравнению с RoBERTa, эта дистиллированная модель BERT могла быть обучена всего за 1,5% от вычислительных затрат вышеупомянутой модели.

Полученные результаты

DistillBERT может набрать 97% баллов BERT-base в тесте GLUE и 99,3% в задаче классификации IMDb. Это при сокращении размера модели и времени вычислений примерно на 40%.

Исследование абляции возрождает важность различных целей потерь, показывая, что косинусное расстояние между скрытыми представлениями ученика и учителя и потеря дистилляции вносят наибольший вклад в общую успеваемость ученика, увеличивая оценку GLUE примерно на 4 балла. Инициализация веса из предварительно обученной модели также обеспечивает аналогичный прирост производительности, увеличивая показатель GLUE на 4,83 по сравнению с дистиллированной моделью, обученной без инициализации.

Заключение

Кистилляция знаний позволяет объединить более крупные модели или ансамбли моделей в единую меньшую студенческую сеть. Это позволяет использовать современные архитектуры там, где вычислительная среда ограничена. С последними разработками в области НЛП, например Google T5, я действительно верю, что область извлечения знаний продолжит развиваться в ближайшие годы.

Приложение

Bucila et al. собрать ансамбль моделей в единую студенческую модель. Авторы также загружают обучающие данные путем обработки немаркированных примеров с помощью ансамбля, что позволяет ученику легче имитировать своих учителей.

Hinton et al. введите softmax температуры как часть функции потерь, которая создает более мягкие цели для подражания учащемуся. Эта высокая энтропия (близкая к равномерному распределению) дает гораздо больше информации, чем истинные цели, что позволяет учащемуся легче научиться обобщать.