В опубликованной Google статье «Предобучение глубоких двунаправленных преобразователей для понимания языка» упомянутая модель BERT обновила 11 записей при обработке естественного языка. Недавно я работал над содержанием, связанным с вопросами и ответами в НЛП, и нашел время, чтобы написать подробную интерпретацию статьи. Я обнаружил, что большинство друзей, которые интересуются областью искусственного интеллекта, не могут понять основных выводов в ней.Чтобы вы могли быстро понять суть статьи, вот дорожная карта для новичков и друзей, которые плохо знакомы с глубоким обучение. Если вы не можете понять интерпретацию статей, написанных другими, значит, вам необходимо дополнить базовые знания. Кроме того, дана ссылка на основную статью, которая, надеюсь, будет полезна для вашего всестороннего понимания области НЛП в пятой части.
1. Общее введение
Модель BERT на самом деле является кодировщиком языка, который преобразует входное предложение или абзац в вектор признаков (встраивание). В документе есть два основных момента: 1. Двунаправленный энкодер. Автор следует языковому кодировщику, упомянутому в разделе «Внимание — это все, что вам нужно», и предлагает концепцию двустороннего взаимодействия, используя модель маскированного языка для достижения двустороннего взаимодействия. 2. Автор предлагает два метода предварительного обучения: модель маскированного языка и метод предсказания следующего предложения. Автор считает, что многие языковые модели в настоящее время недооценивают силу предварительного обучения. Языковая модель Masked имеет больше двусторонних понятий, чем языковая модель, которая предсказывает следующее предложение.
2. Структура модели
Модель BERT повторно использует структуру в «Улучшение понимания языка с помощью обучения без учителя», опубликованного OpenAI. Общая структура модели и настройки параметров BERT максимально приближены к OpenAI GPT, и был изменен только метод предварительного обучения. А GPT позволяет кодировщику запоминать только каждый токен (слово) и предыдущее связанное содержимое.
Целое разделено на два процесса: 1. Процесс предварительного обучения (левое изображение) Процесс предварительного обучения представляет собой многозадачное обучение, задачу переноса обучения, цель которой состоит в том, чтобы изучить вектор входного предложения. 2 Процесс тонкой настройки (рисунок справа) может быть основан на небольшом количестве контролируемых образцов обучения и добавлен в нейронную сеть Feedword для достижения цели. Поскольку цель обучения на этапе тонкой настройки состоит из простой нейронной сети с прямой связью и использует небольшое количество помеченных образцов, время обучения короткое.
1. Входное представление
По сравнению с другими языковыми моделями входными данными является предложение или документ, модель Берта определяет входные данные более широко, а входным представлением может быть предложение или пара предложений (например, пара вопросов и ответов, состоящая из вопрос и ответ).
Вход представлен добавлением вектора слов, соответствующего каждому слову, вектора сегмента и вектора положения. (Обратитесь к «внимание — это все, что вам нужно» для вектора положения)
2. Процесс предварительной подготовки — языковая модель в маске
Модель маскированного языка используется для обучения векторов глубокого двунаправленного представления языка.Автор использует очень прямой способ маскировать определенные слова в предложении и позволить кодировщику предсказать, что это за слово. Метод обучения: автор случайным образом охватывает 15% слов в качестве обучающих образцов. (1) 80% из них заменены замаскированными токенами. (2) 10% заменяются случайным словом. (3) 10% сохраняют слово без изменений. Автор упомянул в статье, что преимущество этого заключается в том, что кодировщик не знает, какие слова нужно предсказать, а какие нет, поэтому он вынужден изучать вектор представления каждого токена. Кроме того, автор сказал, что причиной того, что охватывается только 15% слов на размер пакета, являются накладные расходы на производительность. Двунаправленные кодировщики медленнее обучаются, чем одночленные кодировщики.
3. Предскажите следующее предложение.
Предварительно обучите модель бинарной классификации, чтобы изучить взаимосвязь между предложениями. Метод предсказания следующего предложения очень полезен для изучения связи между предложениями. Метод обучения: соотношение положительных и отрицательных образцов составляет 1:1, 50 % предложений являются положительными образцами, а 50 % предложений выбираются случайным образом в качестве отрицательных образцов.
4. Параметры предтренировочного этапа
(1) 256 предложений используются как пакет, и каждое предложение имеет максимум 512 токенов. (2) Повторить 1 миллион шагов. (3) Всего имеется более 3,3 миллиарда обучающих выборок. (4) Итерация в течение 40 эпох. (5) Используя скорость обучения Адама, 1 = 0,9, 2 = 0,999. (6) Скорость обучения остается фиксированной в течение первых 10 000 шагов, а затем линейно снижается. (7) Затухание L2, параметр затухания равен 0,01. (8) отсев установлен на 0,1. (9) Функция активации использует GELU вместо RELU. (10) Базовая версия Bert использует 16 TPU, большая версия Bert использует 64 TPU, а время обучения составляет 4 дня. (В документе определены две версии: одна базовая, а другая большая. Большая версия (L=24, H=1024, A=16, общие параметры=340M). Базовая версия (L=12, H= 768, A = 12, Total Parameters = 110M. L представляет количество сетевых слоев, H представляет количество скрытых слоев, а A представляет количество головок с самостоятельным вниманием.)
5. Этап доводки
На этапе тонкой настройки используются разные модели сети в соответствии с разными задачами. На этапе тонкой настройки большинство гиперпараметров модели аналогичны параметрам предварительной подготовки, за исключением размера партии, скорости обучения и эпох. Параметры тренировки: Размер партии: 16, 32 Скорость обучения (Адам): 5e-5, 3e-5, 2e-5 Количество эпох: 3, 4
3. Экспериментальный эффект
1. Производительность на категориальных наборах данных
2. Производительность набора данных для ответов на вопросы
Производительность набора данных для ответов на вопросы SQuAD v1.1, TriviaQA — это набор данных для ответов на вопросы. Основной алгоритм EM заключается в сравнении степени совпадения двух строк. F1 — это индикатор, который всесторонне измеряет точность и полноту.
3. Производительность при распознавании именованных объектов
4. Выполнение рассуждений здравого смысла
Исследование блации - это эксперимент, предназначенный для изучения эффективности некоторых структур, предложенных в модели. Он играет большую роль в продвижении и инженерном внедрении этой модели.
1. Предтренировочный тест эффекта
НЕТ NSP: использовать языковую модель в маске без предсказания следующего предложения LTR&NO NSP: использовать языковую модель слева направо (LTR), без маскированной языковой модели, без метода прогнозирования следующего предложения + BiLSTM: добавьте двунаправленную модель LSTM для предварительного обучения.
2. Влияние сложности структуры модели на результаты
L представляет количество сетевых слоев, H представляет количество скрытых слоев, а A представляет количество головок с самостоятельным вниманием.
3. Влияние шага обучения на результаты предобучения.
4. Влияние методов, основанных на признаках, на результаты
V. Важные справочные документы
Если вы хотите понять важные тенденции развития в области НЛП с 2017 по 2018 год, вы можете обратиться к следующим документам. Google может скачать напрямую. «Внимание — это все, что вам нужно» — одна из самых важных прорывных статей в области НЛП в 2017 году. Convolutional Sequence to Sequence Learning — одна из самых важных прорывных статей в области НЛП в 2017 году. «Глубокие контекстуализированные представления слов», лучшая статья NAACL 2018 года, знаменитый ELMO. «Улучшение понимания языка с помощью генеративного предварительного обучения», OpenAI GPT, модель Берта в основном используется для справки и сравнения. Метод представления вектора предложений «Эффективная структура для изучения представлений предложений». «Частично контролируемое тегирование последовательностей с двунаправленными языковыми моделями» предлагает двунаправленную языковую модель.
6. Личное мнение
Лично, если иметь общее представление о развитии НЛП за последние два года, прорыв модели BERT разумен.Большинство идей заимствовано из прорывов предшественников.Например, идея двунаправленного encoder основан на документе "Полуконтролируемая последовательность тегов с двунаправленными моделями языка". Более того, некоторые из предложенных им новых идей, естественно, являются для нас осмысленными. (Когда я был дома на Одиннадцатом, когда я работал над моделью вопросов и ответов, я думал, почему я не могу использовать предыдущее предложение и следующее предложение как размеченные данные, чтобы сформировать двухклассовую модель для обучение.) Я думаю, что наиболее ценными частями всей статьи являются два метода предварительного обучения, которые не требуют большого количества размеченных данных и имеют большое значение в инженерной практике и некотором базовом обучении НЛП. Две большие тенденции в обработке естественного языка в 2017 и 2018 годах: с одной стороны, модели регрессируют от сложных к простым. С другой стороны, трансферное обучение и полуконтролируемое обучение очень популярны. Эти две тенденции являются признаками перехода НЛП из академических кругов в индустрию, поскольку реальность часто такова, что невозможно получить большое количество высококачественных размеченных данных, а ресурсное оборудование стоит дорого и не может решить проблему эффективности.