Внимание сеть без скрытого состояния? - PullRequest
0 голосов
/ 27 апреля 2020

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

  • x: ввод.
  • h: скрытое состояние кодировщика, которое передает данные в скрытое состояние следующего кодера.
  • s: скрытое состояние декодера, которое имеет взвешенную сумму всех скрытых состояний кодера в качестве входных данных и передает их в скрытое состояние следующего декодера.
  • y: Вывод.

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

Спасибо!

1 Ответ

1 голос
/ 28 апреля 2020

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

Порядок имеет значение. Предложения:

  • Джон любит жениться.
  • Жениться любит Джона.

действительно имеют другое значение. Кроме того, заказ не единственная информация, которую вы получаете от кодировщика. Кодировщик также вводит неоднозначность: слова могут быть одноименными, например «поезд» (см. https://arxiv.org/pdf/1908.11771.pdf). Кроме того, исследование обученных нейронных сетей показывает, что кодер формирует довольно абстрактное представление входного предложения (см. https://arxiv.org/pdf/1911.00317.pdf), и большая часть перевода фактически происходит в кодере (см. https://arxiv.org/pdf/2003.09586.pdf).

...