[ссылка на статью на arXiv]

## Разбивка заголовка

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

## Так о чем эта статья?

Трансферное обучение

Я баловался биоинформатикой и, работая в медицине, часто читал о перепрофилировании лекарств. Это именно то, на что это похоже: принять лекарство, созданное для одного состояния, и использовать его для лечения другого. С учетом пресловутых сроков обновления FDA, перепрофилирование быстро превратилось в прямую альтернативу процессу открытия лекарств, который в остальном длился десятилетия.

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

Акроним дня: ULMFiT

К сожалению, трансферное обучение не было таким успешным в языковой сфере, как в видении. Преобладающее мнение о компьютерном зрении состоит в том, что более глубокие слои более специфичны для задач, а верхние - общие. Вот почему тонкая настройка вращалась вокруг изменения последних двух слоев и замораживания остальной сети. Однако модели НЛП, как правило, намного мельче, чем наши ResNet-101. Вдобавок к этому, поскольку языковые модели (LM) чрезмерно подходят для небольших наборов данных, для их достаточно точной настройки требуются миллионы документов из целевого набора данных. LM также особенно склонны к катастрофическому забыванию, явлению, при котором нейронные сети теряют знания о ранее изученной задаче по мере включения информации для текущей задачи.

Этот документ вносит следующие ключевые вклады в улучшение обучения трансфертному обучению, ориентированному на НЛП:

  1. Они предлагают различительную тонкую настройку, наклонные треугольные скорости обучения и постепенное размораживание, чтобы избежать катастрофического забывания.
  2. Они демонстрируют выборочную эффективность своего подхода с помощью обширного анализа абляции (удаляя некоторые особенности модели и наблюдая, как это влияет на производительность).

Статистическая языковая модель - это распределение вероятностей по строкам, которое отражает частоту данной строки в предложении. Авторы обнаружили, что языковое моделирование является идеальной исходной задачей, учитывая, что оно фиксирует информацию, которая имеет решающее значение для последующих задач. Другими словами, LM создают пространство гипотез, которое можно использовать для других задач НЛП. LM, с которым они работают, представляет собой современную модель, разработанную Salesforce, под названием AWD-LSTM, или ASGD Weight-Dropped LSTM, или Averaged SGD Weight-Dropped LSTM (я мог бы продолжить развертывание). По сути, это стандартный LSTM с лучшим отсевом для периодической регуляризации.

Их новый и улучшенный подход к обучению состоит из трех основных этапов:

Оптимизация обучения

Самое первое, что вам понадобится для трансферного обучения, - это набор данных для предварительного обучения вашей модели. Здесь авторы обучили свою LM работе с Wikitext-103, который состоит из 28 595 предварительно обработанных статей Википедии и 103 миллионов слов. После предварительного обучения этот LM необходимо настроить под целевую задачу.

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

Авторы также отмечают, что «для адаптации своих параметров к особенностям конкретной задачи мы хотели бы, чтобы модель быстро сходилась к подходящей области пространства параметров в начале обучения, а затем уточняла ее параметры». Это означает, что обучение должно вначале резко увеличиваться, а затем постепенно снижаться. Подобно графику, это называется графиком скорости обучения с наклонным треугольником :

В данной статье основное внимание уделяется классификации текста как целевой задаче. Это означает, что помимо точной настройки LM, классификатор (в данном случае набор из двух линейных слоев), прикрепленный в конце, также должен быть настроен. Настройка классификатора - это искусство. Слишком агрессивно, и мы можем закончить катастрофическим забыванием. Чрезмерно осторожный подход приведет к переобучению.

Чтобы создать первый линейный слой, авторы используют так называемое объединение пулов, чтобы максимизировать удержание информации между слоями. Они «объединяют скрытое состояние на последнем временном шаге h документа как с максимальным, так и со средним пулом представления скрытых состояний», насколько им позволяет их память графического процессора.

Второй метод тонкой настройки классификатора, который они обсуждают, - это постепенное размораживание во избежание забывания. Сначала они размораживают последний слой и настраивают все незамороженные слои для одной эпохи. Затем размораживается следующий нижний замороженный слой, и процесс точной настройки повторяется до тех пор, пока не будет настроена вся модель.

Они также предлагают модификацию обратного распространения ошибки во времени для классификации больших документов под названием BPT3C. Документ разделен на пакеты фиксированной длины. В начале каждого пакета модель инициализируется конечным состоянием предыдущего пакета. Градиенты обратно распространяются на пакеты, скрытые состояния которых способствовали окончательному прогнозу. BPT3C эффективен, потому что входные документы могут состоять из сотен слов. Выполняя обновления в отношении нескольких скрытых состояний, мы в полной мере используем историческую информацию и объединение пулов.

## Заключительные примечания

Эта структура для трансфертного обучения, ориентированного на НЛП, была протестирована с помощью анализа настроений, классификации вопросов и задач классификации тем. По всем задачам и наборам данных ULMFiT превзошел другие, более сложные модели, что подтверждает требование универсальности. Были проведены исследования абляции, чтобы подтвердить важность каждого из методов точной настройки. ULMFiT обладает большим потенциалом для решения новых задач НЛП, в которых отсутствуют современные технологии или обучающие наборы ограничены.

Другие подходы, такие как ELMo и Transformer OpenAI, также позволили обнаруживать нюансы языка более высокого уровня, такие как контекст. Благодаря ULMFiT в составе пакета NLP мы на несколько шагов приблизились к разработке ImageNet для языка.