❌

Normal view

От учителя к студенту: путь к изотропным эмбеддингам в 29M модели. Часть 1/10

Просмотр слоев моделей, первые "пристрелочные" тесты для определения общего направления работы и выбор базовой модели для дистилляции. Эта часть довольно простая и короткая, но содержит некоторые важные наблюдения.

Читать далее

От учителя к студенту: путь к изотропным эмбеддингам в 29M модели. Часть 0/10

Ставим задачу: компактная русскоязычная модель эмбеддингов для CPU, способная решать семантический поиск, дедубликацию и кластеризацию. Учитель — 180-миллионный DeepPavlov, студент — 29-миллионный turbo с доработанной головой. Четыре цели: разобраться, что даёт attention pooling, дистиллировать семантику учителя, победить анизотропию и слепоту к отрицаниям, получить рабочий инструмент. В этой части — постановка целей, метрики успеха и план серии.

Читать далее

Почему softmax теряет градиенты — и как школьная алгебра 7-го класса помогает их сохранить

Модель почти идеально выучила ответ, а градиент правильного класса уже стал машинным нулём. При дистилляции возможна обратная ситуация: ученик повторяет учителя, но вычисление всё ещё выдаёт сигнал ошибки. Разбираю исправления DeepMind на школьной алгебре, проверенных примерах NumPy и четырёх графиках: где теряются маленькие числа, как это влияет на обучение и что стоит проверить в своей среде.

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

Самое удивительное тут то, что, казалось бы, подобная тема должна быть исследована вдоль и поперек еще на заре развития машинного обучения, а в реальности важнейший научный препринт от DeepMind об этом вышел 22 октября, то есть меньше недели назад.

Кроме того, рекомендую включать этот материал в базовые учебные курсы.

Читать далее
❌