Начните легко с Bert

NLP

Это 22-й день моего участия в Gengwen Challenge.Подробности о мероприятии:Обновить вызов

Что такое БЕРТ

Полное название BERT — Представления двунаправленного кодировщика от трансформаторов, На самом деле цель BERT — предварительно обучитьTransformersСеть кодировщика модели, что значительно повышает производительность. В этой статье не рассматриваются конкретные технические детали, а только основная идея. Конкретное содержание можно найти в статье:АР Вест V.org/PDF/1810.04…

первая задача

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

bert-1.jpg

  • Второе слово ввода на рисунке изначально было cat, но было заменено символом MASK.

  • МАСКА будет преобразована в вектор слов x с помощью слоя Embedding.M.

  • Выход в этот момент uM, а тыMзависит не только от хM, и зависит от всех x1до х6всех входных векторов. то есть тыMЗнать всю вводную информацию. именно из-за тебяMЗная всю информацию о контексте, ее можно использовать для предсказания закрытого слова cat.

  • Мог бы тыMВ качестве входного вектора признаков в Softmax получается распределение вероятностей p, и слово, соответствующее максимальной вероятности, может быть получено через словарь. Слово кошка здесь заблокировано, поэтому модель необходимо обучить так, чтобы значение вероятности кошки в выходном распределении вероятностей p модели было как можно больше.

Какая польза от первой задачи

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

вторая задача

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

Во-первых, подготовьте обучающие данные, 50% выборок в обучающих данных используют два реальных смежных предложения, а оставшиеся 50% выборок используют случайную выборку для выбора любых двух несмежных предложений.

Метод обработки выбора реальных смежных предложений сращивается, как показано на рисунке ниже. При сращивании используются символы CLS и SEP. CLS — это символ «классификации», а SEP — это символ «разделения» двух предложений. Поскольку эти два предложения действительно являются смежными предложениями, их метки истинны.

bert-3.jpg

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

bert-4.jpg

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

bert-2.jpg

  • Введите в модель последовательность символов, объединенную [CLS][первое предложение][SEP][второе предложение].

  • Преобразованы в векторы слов через слой Embedding.

  • Конечным результатом позиции [CLS] является вектор C. Поскольку информация обо всех входных двух предложениях извлекается моделью в векторе c, вектор c может определить, действительно ли два предложения являются смежными.

  • Введите вектор c в двоичный классификатор, и выходное значение равно 0 или 1 , где 0 представляет false и 1 представляет true . Модель можно обучить так, чтобы предсказанные метки двух предложений были как можно ближе к их истинным меткам.

Какая польза от второго задания

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

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

третья задача

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

Нам нужно подготовить данные. Как показано на рисунке ниже, мы использовали два реальных смежных предложения в качестве обучающих данных и случайным образом закрыли 15% (здесь два) слова. Здесь три цели, потому что они действительно соседние Итак, первая цель true, второй целью является действительно скрытое слово ветвь, а третьей целью является слово was, которое действительно закрыто.

bert-5.jpg

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

bert-6.jpgЕсли есть три цели, как указано выше, есть три функции потерь (две функции потерь, если есть две цели), первая цель — это задача бинарной классификации, а вторая и третья цели — задачи множественной классификации. Целевая функция представляет собой сумму трех функций потерь, затем вычисляются градиенты относительно параметров модели, а затем параметры модели обновляются методом градиентного спуска.

Преимущества БЕРТ

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

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

Результаты, показанные BERT, действительно превосходны.

Недостатки БЕРТ

Идея BERT проста и модель эффективна, но стоимость очень высока.Обычным людям трудно иметь время и энергию для обучения BERT.К счастью, он был обнародован и может использоваться самостоятельно .скачать.

Ссылаться на

[1] Devlin J , Chang M W , Lee K , et al. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding[J]. 2018.

[2] Vaswani A , Shazeer N , Parmar N , et al. Attention Is All You Need[J]. arXiv, 2017.