BLEU ( двуязычный дублер оценки ) — это алгоритм оценки качества текста, который был переведен машиной с одного естественного языка на другой. Качество считается соответствием между выводом машины и выводом человека: «чем ближе машинный перевод к профессиональному человеческому переводу, тем он лучше» — это центральная идея BLEU. [1] Изобретенный в IBM в 2001 году, BLEU был одним из первых показателей, заявляющих о высокой корреляции с человеческими суждениями о качестве, [2] [3] и остается одним из самых популярных автоматизированных и недорогих показателей.
Оценки подсчитываются для отдельных переведенных сегментов — обычно предложений — путем сравнения их с набором качественных справочных переводов. Затем эти оценки усредняются по всему корпусу для получения оценки общего качества перевода. Разборчивость или грамматическая правильность не принимаются во внимание. [4]
Вывод BLEU всегда представляет собой число от 0 до 1. Это значение указывает, насколько текст-кандидат похож на справочные тексты, причем значения, близкие к 1, представляют более похожие тексты. Немногие человеческие переводы получат оценку 1, поскольку это будет означать, что кандидат идентичен одному из справочных переводов. По этой причине нет необходимости получать оценку 1. Поскольку существует больше возможностей для сопоставления, добавление дополнительных справочных переводов увеличит оценку BLEU. [5]
Базовая первая попытка определения оценки BLEU потребует два аргумента: строку-кандидата и список справочных строк . Идея заключается в том, что должно быть близко к 1, когда похоже на , и близко к 0, если нет.
В качестве аналогии можно привести оценку BLEU, как если бы преподаватель иностранного языка пытался оценить качество перевода студента , проверяя, насколько точно он соответствует эталонным ответам .
Поскольку при обработке естественного языка необходимо оценить большой набор строк-кандидатов, необходимо обобщить оценку BLEU на случай, когда имеется список из M строк-кандидатов (называемый « корпусом ») , а для каждой строки-кандидата — список справочных строк-кандидатов .
Для любой строки и любого целого числа мы определяем множество ее n-грамм как Обратите внимание, что это множество уникальных элементов, а не мультимножество, допускающее избыточные элементы, так что, например, .
Для любых двух строк определите количество подстрок как количество появлений в качестве подстроки . Например, .
Теперь зафиксируйте корпус кандидатов и укажите корпус кандидатов , где каждый .
Определим модифицированную функцию точности n-грамм следующим образом: Модифицированная n-грамма, которая выглядит сложной, является просто простым обобщением прототипического случая: одно предложение-кандидат и одно ссылочное предложение. В этом случае это Чтобы дойти до этого выражения, мы начнем с самого очевидного суммирования количества n-грамм: Эта величина измеряет, сколько n-грамм в ссылочном предложении воспроизводится предложением-кандидатом. Обратите внимание, что мы считаем n-подстроки , а не n-граммы . Например, когда , все 2-подстроки в (ab и ba) появляются по 3 раза каждая, поэтому количество равно 6, а не 2.
Однако в приведенной выше ситуации строка-кандидат слишком коротка. Вместо 3 появлений она содержит только одно, поэтому мы добавляем минимальную функцию, чтобы исправить это: Это суммирование количества не может использоваться для сравнения предложений, поскольку оно не нормализовано. Если и ссылка, и предложение-кандидат длинные, количество может быть большим, даже если кандидат очень низкого качества. Поэтому мы нормализуем его Нормализация такова, что это всегда число в , что позволяет проводить осмысленные сравнения между корпусами. Оно равно нулю, если ни одна из n-подстрок в candidate не находится в ссылке. Оно равно единице, если каждая n-грамма в candidate появляется в ссылке, по крайней мере столько же раз, сколько в candidate. В частности, если candidate является подстрокой ссылки, то оно равно единице.
Измененная точность n-грамм неоправданно высоко оценивает строки-кандидаты, которые являются « телеграфными », то есть содержат все n-граммы ссылочных строк, но встречаются так мало раз, как это возможно.
Чтобы наказать слишком короткие строки-кандидаты, определите штраф за краткость следующим образом: где — положительная часть числа .
— длина корпуса кандидатов, то есть, где — длина .
— эффективная длина эталонного корпуса , то есть, где , то есть предложение, длина которого максимально близка к .
Не существует единого определения BLEU, а есть целое семейство, параметризованное весовым вектором . Это распределение вероятностей на , то есть , и .
При выборе , оценка BLEU равна В словах это взвешенное геометрическое среднее всех измененных n-граммных точностей, умноженное на штраф за краткость. Мы используем взвешенное геометрическое среднее, а не взвешенное арифметическое среднее, чтобы отдать предпочтение корпусам кандидатов, которые одновременно хороши по нескольким n-граммным точности.
Наиболее типичный выбор, рекомендованный в оригинальной статье, — это . [1]
Это проиллюстрировано в следующем примере из работы Папинени и др. (2002):
Кандидат | the | the | the | the | the | the | the |
---|---|---|---|---|---|---|---|
Ссылка 1 | the | кот | является | на | the | мат | |
Ссылка 2 | там | является | а | кот | на | the | мат |
Из семи слов в переводе-кандидате все они появляются в справочных переводах. Таким образом, текст-кандидат получает точность униграммы,
где — количество слов из кандидата, которые найдены в ссылке, а — общее количество слов в кандидате. Это идеальный результат, несмотря на то, что перевод кандидата выше сохраняет мало из содержания любой из ссылок.
Модификация, которую делает BLEU, довольно проста. Для каждого слова в переводе-кандидате алгоритм берет его максимальное общее количество, , в любом из справочных переводов. В приведенном выше примере слово "the" появляется дважды в ссылке 1 и один раз в ссылке 2. Таким образом , .
Для перевода-кандидата количество каждого слова обрезается до максимума для этого слова. В этом случае "the" имеет и , поэтому обрезается до 2. Эти обрезанные количества затем суммируются по всем отдельным словам в кандидате. Затем эта сумма делится на общее количество униграмм в переводе-кандидате. В приведенном выше примере модифицированная оценка точности униграмм будет:
Однако на практике использование отдельных слов в качестве единицы сравнения не является оптимальным. Вместо этого BLEU вычисляет ту же самую модифицированную метрику точности с использованием n-грамм . Длина, которая имеет «наибольшую корреляцию с одноязычными человеческими суждениями» [6], оказалась равной четырем. Оценки униграмм, как обнаружено, учитывают адекватность перевода, то, сколько информации сохраняется. Более длинные оценки n -грамм учитывают беглость перевода или то, в какой степени он читается как «хороший английский».
Модель | Набор граммов | Счет |
---|---|---|
Униграмма | "тот", "тот", "кот" | |
Сгруппированная униграмма | "the"*2, "cat"*1 | |
Биграмма | "the the", "the cat" |
Примером возможного перевода для тех же ссылок, что и выше, может быть:
В этом примере точность модифицированной униграммы будет равна:
так как слово 'the' и слово 'cat' встречаются в кандидате по одному разу, а общее количество слов равно двум. Измененная точность биграммы будет такой же, как и биграмма, "the cat" встречается в кандидате один раз. Было отмечено, что точность обычно сочетается с отзывом, чтобы преодолеть эту проблему [7] , так как отзыв униграммы в этом примере будет или . Проблема в том, что, поскольку существует несколько референтных переводов, плохой перевод может легко иметь завышенный отзыв, например, перевод, который состоит из всех слов в каждой из ссылок. [8]
Чтобы получить оценку для всего корпуса, модифицированные оценки точности для сегментов объединяются с использованием геометрического среднего, умноженного на штраф за краткость, чтобы предотвратить получение слишком высокой оценки очень короткими кандидатами. Пусть r будет общей длиной справочного корпуса, а c — общей длиной корпуса перевода. Если , применяется штраф за краткость, определяемый как . (В случае нескольких справочных предложений r принимается как сумма длин предложений, длины которых наиболее близки к длинам предложений-кандидатов. Однако в версии метрики, используемой оценками NIST до 2009 года, вместо этого использовалось самое короткое справочное предложение.)
iBLEU — это интерактивная версия BLEU, которая позволяет пользователю визуально проверять баллы BLEU, полученные кандидатами на переводы. Она также позволяет сравнивать две разные системы визуально и интерактивно, что полезно для разработки систем. [9]
Часто сообщалось, что BLEU хорошо коррелирует с человеческим суждением, [10] [11] [12] и остается эталоном для оценки любой новой метрики оценки. Однако есть ряд критических замечаний, которые были высказаны. Было отмечено, что, хотя в принципе и способен оценивать переводы любого языка, BLEU в его нынешнем виде не может работать с языками, в которых отсутствуют границы слов. [13] Разработанный для использования для нескольких справочных переводов, на практике он используется только с одним. [2] BLEU печально известен своей зависимостью от техники токенизации , и баллы, полученные с помощью разных методов, несопоставимы (что часто упускается из виду); для улучшения воспроизводимости и сопоставимости был разработан вариант SacreBLEU. [2]
Утверждается, что, хотя BLEU имеет значительные преимущества, нет гарантии, что увеличение оценки BLEU является показателем улучшения качества перевода. [14]