Это 25-й день моего участия в августовском испытании обновлений. Ознакомьтесь с подробностями мероприятия: Испытание августовского обновления
поиск луча
В предыдущей статье seq2seq и механизм внимания мы упоминали, что кодировщик, наконец, выводит фоновый вектор., фоновый вектор кодирует входную последовательностьИнформация. Предположим, что выходная последовательность в обучающих данных равна, вероятность генерации выходной последовательности равна
Для вывода машинного перевода, если набор словарного запаса выходного языкаразмер, длина выходной последовательности, то возможные виды выходных последовательностей. Чтобы найти выходную последовательность с наибольшей вероятностью генерации, один из подходов состоит в том, чтобы вычислить всеВероятность генерации каждой возможной последовательности и вывод последовательности с наибольшей вероятностью. Мы называем эту последовательность оптимальной последовательностью. Но этот подход требует больших вычислительных ресурсов (например,)
Декодер, который мы представили до сих пор, выдает только слово с наибольшей вероятностью генерации в каждый момент времени. в любой момент, мы начинаем свыходное слово поиска слов
Таким образом, вычислительные затраты на поискзначительное снижение (например,), но это не гарантирует, что будет найдена оптимальная последовательность
Поиск луча находится где-то посередине. Давайте посмотрим на пример
Предполагая, что словарь выходной последовательности содержит только 5 слов:. Гиперпараметр поиска луча называется шириной луча. Взяв в качестве примера ширину луча, равную 2, пусть длина выходной последовательности равна 3. Если время 1 генерирует вероятностьДва самых больших словаи, мы на время 2 для всехрассчитываются отдельнои, возьмите две самые большие из 10 рассчитанных вероятностей, предполагая, чтои. Тогда мы в момент 3 для всехрассчитываются отдельнои, возьмите две самые большие из 10 рассчитанных вероятностей, предполагая, чтои
Далее мы можем вывести последовательность:,,,,,Последовательности-кандидаты, заканчивающиеся специальным символом EOS, отфильтровываются. Затем возьмите следующую последовательность с наивысшим баллом в качестве последней последовательности-кандидата в последовательности-кандидате:
вдлина последовательности-кандидата,Как правило, его можно выбрать равным 0,75. в знаменателесостоит в том, чтобы оштрафовать член логарифмического сложения в счете более длинной последовательности
Оцените результаты перевода
В 2002 году команда IBM предложила индикатор для оценки результатов перевода, названный BLEU (Bilingual Evaluation Understudy).
Предполагать- максимальная длина n-граммы, которую мы хотим оценить, например.. Точность n-граммовОтношение количества эталонных выходных данных для соответствия количеству n-грамм в выходных данных модели к количеству n-грамм в выходных данных модели. Например, эталонный выход (истинное значение) — ABCDEF, а выход модели — ABBCD. Так. Предполагатьиколичество слов в эталонном выводе и выводе модели соответственно. Тогда BLEU определяется как
Следует отметить, что сувеличивается, вес n-граммовой точности увеличивается сИндекс уменьшается и увеличивается. Например
Другими словами, за совпадение 4 граммов должно быть больше вознаграждения, чем за совпадение 1 грамма. Кроме того, чем короче вывод модели, тем легче получить более высокую точность n-грамм. Следовательно, коэффициенты, предшествующие члену умножения в формуле BLEU, предназначены для штрафа за более короткие выходные данные. Например, когда, эталонный выход — ABCDEF, а выход модели — AB. В это время,и, поэтому BLEU=0,135. Когда выход модели также ABCDEF, BLEU=1