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

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

Фон

Давайте лучше разберемся с BERT (вау, берт лучше). Чтобы показать, мы начнем с понимания НЛП.

НЛП — это процесс понимания значения слова в предложении и представления их в числах, чтобы компьютеры могли их понять.

НЛП может быть специфичным для конкретной задачи (области) или может быть общим. Хотя для конкретных задач нам требуется сравнительно небольшой набор данных, есть одно но. Модель лучше обучается на больших наборах данных. Итак, вот двухэтапная концепция предварительной подготовки и тонкой настройки.

Затем идет модель BERT, невероятно мощная модель, которая сегодня используется в большинстве задач НЛП.

НЛП

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

В основном НЛП состоит из трех важных фаз:

  • Обработка текста
  • Извлечение признаков
  • Моделирование

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

  • Очистка данных: чтобы удалить специальные символы, html-теги в тексте
  • Нормализация регистра: преобразование Car, car, CAR =› car
  • Нормализация пунктуации: заменить знаки препинания пробелами.
  • Токенизация: преобразование текста в отдельные слова
  • Удаление стоп-слов: удаление «a», «the», «is» и т. д.
  • Вывод: преобразование run,run,running => run

И после обработки мы выполняем извлечение признаков. По сути, на этом этапе мы преобразуем текст в вектор, который можно передать в модели машинного обучения. Но вот что. Как эффективно преобразовать текст в вектор?
Есть много способов сделать это. Это может быть использование таких методов, как Bag of Words или Term Frequency — обратная частота документа.

Но есть ограничения для вышеперечисленных методов. Поэтому нам нужен лучший способ с именем Word2Vec. Чтобы быть точным, этот метод использует векторное пространство для размещения разных слов и установления отношений между ними в векторном пространстве (расстояние между ними).

И появляется современная языковая модель, такая как BERT, которая полностью произвела революцию в пространстве НЛП.

БЕРТ

Представление двунаправленного кодировщика от Transformer — мощная модель от Google. По сути, в нем есть несколько важных частей, и мы собираемся понять их.
Во-первых, двунаправленная часть. Модель может быть контекстно-независимой или контекстно-зависимой. Кроме того, контекстуальная модель может быть разветвлена ​​на две подчасти, однонаправленную и двунаправленную. Например: слово «банк» может быть разным в другом контексте, финансовом учреждении или берегу реки. Если его контекстуальное значение получено или понято из слов, предшествующих ему, или только слова после него, то оно однонаправленное, а если оно с обеих сторон, то двунаправленное. И, конечно, двунаправленный лучше, чем однонаправленный.

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

Кроме того, он предварительно обучен с использованием только корпуса простого текста (Википедия), в отличие от предыдущего, в котором использовалось генеративное предварительное обучение с большим корпусом.

Вот изображение, показывающее сравнение модели BERT с другой современной моделью контекстной предварительной подготовки:

Стрелки указывают на поток информации от одного уровня к другому. Зеленые прямоугольники вверху показывают окончательное контекстуальное представление каждого входного слова:

Чтобы узнать больше о BERT: Бумага