Некоторые подробности об ELMo, которых вы не знали

NLP
В апреле этого года я занимался воспроизведением и тонкой настройкой элмо. Недавно я дважды делился с Fengchao информацией об elmo. Я чувствую, что все относительно незнакомы с этой моделью. Я нашел некоторые детали и опыт, о которых стоит упомянуть. Надеюсь, это будет вам полезно.
Полное название ELMo — «Вложения из языковых моделей».
Раз есть Берт, почему ты хочешь говорить об ELMo? Лично я считаю, что метод тонкой настройки ELMO на самом деле инновационный и вдохновляющий.
Вот некоторые детали, на которые следует обратить внимание, исходя из личного опыта.

Деталь 1: Сетевая структура elmo представляет собой двусторонний двухуровневый lstm Как реализовать двусторонний lstm?

В отличие от использования Бертом маскированной языковой модели в цели предварительного обучения для достижения двунаправленности, двунаправленная концепция ELMo фактически отражена в сетевой структуре. Внедрение ввода используется в качестве прямого вывода через скрытое состояние lstm, а результат после обращения внедрения затем выводится в обратном направлении через скрытое состояние lstm, а прямой вывод и обратный вывод объединяются. Конечным результатом на самом деле является языковая модель, которая вычисляет вероятность появления следующего слова на основе предыдущего слова.

Деталь 2: Как достигается тонкая настройка ELMo по сравнению с Бертом?

Тонкая настройка ELMo — это строго говоря, не настоящая тонкая настройка, фиксируется результат предобученной сети. В целом предложение вводится во встраивание предобучающей сети, а concat выполняется с встраиванием слов нижестоящей задачи, а результат concat используется как выход нижестоящей задачи НЛП в целом. На рисунке показан переход от восходящей сети ELMO к нижестоящей сети bidaf для понимания прочитанного.
ELMo переходит на последующие задачи NLP

Деталь 3: Как обрабатывается вывод семантического представления ELMo?

Формула расчета выходного семантического представления ELMo выглядит следующим образом:

Среди них hk представляет выходные данные трех слоев (соответственно слой внедрения, первый слой lstm, второй слой lstm), параметр веса, умноженный на W, полученный с помощью softmax, и параметр веса W добавляется к L2. регулярность для предотвращения подгонки.
r — общий коэффициент масштабирования, чтобы его можно было унифицировать с распределением вероятностей встраивания нисходящей задачи.
В коде также есть небольшая хитрость: слой встраивания слов 256-мерный, поэтому он делает конкат одного и того же встраивания слов и объединяет его с 516-мерным выводом lstm.
Из этих деталей видно, что обработка ELMo на этапе тонкой настройки сильно отличается от обработки Bert.

Деталь 4: Для каких последующих задач НЛП подходит elmo?

ELMo хорошо справляется с короткими задачами. ELMo мигрирует в нисходящую сеть, один представляет собой набор данных с коротким ответом, улучшение составляет 3-4 балла, а набор данных с более длинным ответом улучшение составляет всего около 0,5. В эксперименте мы сравнили задачи лексического анализа и понимания прочитанного, и его результаты в лексическом анализе лучше, чем в понимании прочитанного.

Деталь 5: Какие еще параметры elmo заслуживают внимания?

1. Метод обработки отсева: установите значение 0,5 во время обучения, чтобы предотвратить переоснащение. Отсев этапа вывода установлен на 0.
2. Значение r оказывает большое влияние на этап тонкой настройки. Значение r очень помогает в настройке вывода семантического представления и порога последующих задач НЛП.
3. L2 и L2 не имеют одинаковых эффектов. Семантика elmo указывает на то, что регулярность L2 добавляется к весовому параметру W в выходной формуле. Судя по экспериментальным результатам, отсутствие регулярности L2 мало влияет на результаты. Предполагается, что настройка отсева может быть слишком большой, в результате чего в L2 не влияет на результаты.
На картинке показан результат миграции ELMo в нисходящую сеть.Красная базовая линия — это лексический анализ Baidu LAC.

Деталь 6: Как обучить мою собственную модель предварительной подготовки китайского языка elmo?

Подготовьте информацию о китайских документах 3G. Графический процессор: 8-карточный графический процессор, объем видеопамяти превышает 22 ГБ, отрегулируйте размер партии в соответствии с размером видеопамяти и максимально используйте ресурсы видеопамяти. Время обучения около недели, 7 дней.

Деталь 7: Как ELMO может точно настроить последующие задачи с длительным периодом обучения, чтобы убедиться, что они надежны за короткий период времени?

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