[НЛП] Подробное объяснение того, что вам может не понадобиться внимание

искусственный интеллект Нейронные сети NLP Архитектура

бред какой то:

До популярности BERT количество поклонников росло с однозначным числом каждый день, спасибо за вашу любовь! Это натолкнуло меня на мысль написать классификацию текстов на прошлой неделе, но я дважды написала, а потом отложила, ведь в классификации текстов много SOTA-моделей, а мои исследования недостаточно глубоки. . Давайте улучшать потихоньку.Увидел статью Возможно, сегодня вам не нужно внимание.Как можно отпустить написание внимания?Сразу распечатайте и прочитайте.Расскажем об этом подробнее ниже. На самом деле, каждый раз, когда я пишу, я также думаю об этом и надеюсь, что со временем смогу принести что-то новое себе и всем.


текст:

1. Предпосылки

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

Появление модели Seq2seq в основном связано с решением задачи трансляции. Первоначальный машинный перевод представлял собой сопоставление правил словаря, за которым последовали статистические методы машинного обучения, в основном основанные на вероятностных идеях. После появления глубоких нейронных сетей за 12 лет был достигнут хороший прогресс в распознавании изображений и речи, одним из которых является Швенк в статье.Continuous Space Translation Models for Phrase-Based Statistical Machine TranslationМодель перевода на основе нейронной сети предлагается в , как показано на рисунке:

Швенк представил в статье три структуры модели, я не читал конкретное содержание, но слева направо мы видим две идеи: добавление скрытого слоя и зависимость от шага по времени.

В рамках этой статьи Bengio опубликовал статью в 2013 году.Изучение представлений фраз с использованием кодировщика-декодера RNN для статистического машинного перевода, предложил структуру кодировщик-декодер, которая используется до сих пор. Более поздние задачи seq2seq по умолчанию представляют задачи с неравной длиной ввода и вывода, такие как машинный перевод и суммирование текста, и для таких задач по умолчанию используется архитектура кодер-декодер.

После рассказа идет сверточная модель seq2seq от facebook и кодер-декодер RNN + Attention and Transformer.

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

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

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

Далее давайте внимательно посмотрим, как автор использует LSTM для решения проблемы неравного ввода и вывода.


2. Модель

2.1 Предварительная обработка

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

Красный — целевое предложение, синий — исходное, автор использовал два метода предварительной обработки:

  1. Перейдите целевое предложение и добавьте заполнитель, как только целевое слово окажется перед соответствующим исходным словом.\varepsilonДо тех пор, пока две позиции не будут одинаковыми или позиция целевого слова не будет обратной. Этот алгоритм очень интуитивно понятен, и вы можете понять его, взглянув на картинку.
  2. Вставьте от 0 до 5 заполнителей непосредственно перед целевым предложением, чтобы после него было меньше заполнителей.

Примечание. После обработки целевого предложения автор заполняет местозаполнитель непосредственно в конце исходного предложения.

2.2 Aligned Batching

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

2.3 Model

Структура модели хорошо понятна, как показано на рисунке:

Каждый временной шаг (например, когда вводится белый цвет) встраивает El и белый соответственно, размерность одного слова равна E, два вместе становятся 2E, а затем проходят через два слоя LSTM, а затем размерность становится E через FC размер слоя, вы можете найти слово с наибольшей вероятностью в векторной матрице слов целевого языка.

Приведенная выше модель содержит три матрицы внедрения: вход исходного языка (используется для встраивания слова белый), вход целевого языка (используется для встраивания слова El) и выход целевого языка (используется для встраивания слово перро).Стоит отметить, что авторы сохраняют равными эти три векторные матрицы слов. То есть векторы слов одного корня в испанском и английском языках одинаковы. (Подробности см. в сообщении большого парня в области комментариев)Что касается того, почему это сделано, это из-за ссылкидругие исследования, говоря, что это будет работать лучше.Может быть, именно поэтому модель работает, потому что она на самом деле предсказывает слово, которое появилось перед ней.. Затем возникает проблема, если целевой язык или исходный язык имеют различные синонимы, стоимость создания этого словаря на этапе предварительной обработки относительно высока.

2.4 Decoding

На этапе расшифровки автор сделал два улучшения поиска луча.Вы можете увидеть проблемы и решения автора:

  1. Предел заполнения: что, если он всегда декодируется как заполнитель? Затем ограничьте количество заполнителей, и после превышения вероятность устанавливается равной 0. Но заполнитель, который начинается в начале, не может быть ограничен, и модель, возможно, назревала окончательный ход позже.
  2. Внедрение заполнения источника (SPI): автор обнаружил во время обучения модели, что если встречается конечная метка исходного предложения, оно также с высокой вероятностью выводит . Таким образом, авторское решение состоит в том, чтобы отложить и вставить некоторые заполнители перед выходного предложения, чтобы выходное предложение было длиннее.

3. Преимущества и недостатки

3.1 Преимущества

  1. Выйдите за рамки кодировщика-декодера и решите, как использовать архитектуру языковой модели RNN для выполнения задачи seq2seq.
  2. Обучение потребляет меньше ресурсов, и каждому шагу прогнозирования нужен только результат предыдущего шага.
  3. Предсказание выполняется быстрее, и вывод может быть выдан сразу после ввода слова, в отличие от кодировщика, который должен пройти через все это.
  4. Лучше справляется с задачей предсказания длинных предложений

3.2 Недостатки

  1. Эффект на самом деле не очень. . .
  2. По сравнению с проверенной моделью SOTA, эта модель все еще нуждается в значительном улучшении, чтобы выдержать испытание другими задачами seq2seq.

4. Резюме

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

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


【Использованная литература】:

  1. You May Not Need Attention
  2. Возможно, Attention вам больше не понадобится: это ужасно простая архитектура нейронного машинного перевода
  3. GitHub: YouMayNotNeedAttention