О Луче Поиск в seq2seq

Я борюсь с реализацией поиска луча и размышляю над следующей ситуацией.

Предположим, что ширина луча равна 3. Тогда нам нужно будет поддерживать 3 наиболее вероятных варианта на каждом этапе декодирования (здесь этап декодирования означает t = 1, 2, . . ., Ty).

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

После этого у нас останется два варианта для продолжения следующих итераций в сторону Ty.

Здесь, в последовательных итерациях, нужно ли добавить (из резервных списков) еще один выбор, чтобы выполнить требование ширины луча три? или продолжить этап декодирования, используя только два оставшихся варианта?

Любая идея или предложение???

восток

0 ответов

Другие вопросы по тегам