BLEU

Оновлено: 31.07.2023

Що таке BLEU?

Абревіатура BLEU розшифровується як "Bilingual Evaluation Understudy" - це статистика для вимірювання точності машинного перекладу порівняно з перекладачами-людьми. Версія BLEU NLP від IBM - популярний інструмент для аналізу даних і оцінки якості машинного перекладу.

  • Машинний переклад порівнюється з одним або кількома еталонними перекладами через BLEU шляхом порівняння n-грам (послідовностей слів).
.

Машинний переклад отримує оцінку від 0 до 1 на основі цього показника, де 1 означає повну згоду з еталонним перекладом. Точність машинного перекладу вимірюється тим, наскільки добре він відповідає n-градусному розподілу частот вихідного тексту.

Якщо порівнювати переклади різними мовами з різними граматичними структурами або порядком слів, метрика BLEU може давати оманливі результати через свої обмеження. Проте, завдяки своїй простоті та зручності, вона залишається одним із найпоширеніших показників для оцінювання машинного перекладу.

Як розрахувати показник BLEU?

Щоб визначити показники BLEU, виконайте наступні кроки:

  • Визначення точності n-грамм Обчисліть точність n-грамм шляхом додавання кількості n-грамм у машинному перекладі, які також зустрічаються в еталонному перекладі (перекладах), і відніміть їх від загальної кількості n-грамм у машинному перекладі.
  • Визначення штрафу за стислість Цей штраф застосовується до перекладів, які менші за еталонний переклад. Штраф за стислість визначається діленням довжини машинного перекладу на довжину найменшого вихідного перекладу.
  • Інтегрування показників точності n-грамм Візьміть середнє геометричне значення показників точності n-грамм. Це дасть єдину оцінку перекладу, яка показує, наскільки добре переклад відповідає вихідному перекладу з точки зору точності n-грамм.
  • Визначення остаточної оцінки BLEU Щоб отримати остаточну оцінку BLEU, помножте комбіновану точність n-грамм на штраф за стислість.

Нижче наведено формулу для розрахунку оцінки за кодом BLEU:

  • BLEU = brevity_penalalty * exp(sum(w_n * log(p_n)))

де:

  1. Штраф за стислість вже пояснено.
  2. w_n - це вага, що застосовується до оцінки точності n-грама. Вагу часто встановлюють у 1/n, де n позначає кількість використаних розмірів n-грамів
  3. p_n - оцінка точності для розміру n-грамів.
.

Наприклад, щоб обчислити оцінку BLEU з точністю до 1 грама і 2 грамів, маючи машинний переклад і два еталонних переклади, потрібно було б:

  • Порахуйте кількість 1 грам: у машинному перекладі, який також є в еталонних перекладах, і розділіть на загальну кількість 1 грам у машинному перекладі, щоб отримати точність до 1 грама.
  • Розрахуйте 2 грами: Підрахуйте кількість 2 грамів у машинному перекладі, які також з'являються в еталонних перекладах, і розділіть на загальну кількість 2 грамів у машинному перекладі.
  • Визначте штраф за стислість: Розділіть довжину машинного перекладу на довжину найкоротшого еталонного перекладу.
  • Додайте точність у n грамів: Візьміть середнє геометричне значення точності в 1 і 2 грами.
  • Визначте кінцеву оцінку BLEU: Розділіть загальну точність у n грамів на штраф за стислість.
.

Оскільки в цьому прикладі використовується лише два розміри n-грама, ваги будуть встановлені на 0.5 для кожної точності n-грама.

Кумулятивний та індивідуальний бали BLEU

Статистику BLEU можна використовувати для оцінювання якості машинного перекладу двома способами: кумулятивно та індивідуально.

Для кожного еталонного перекладу визначається окремий BLEU, який потім усереднюється. Цей метод корисний, коли для одного й того самого вихідного тексту існує багато еталонних перекладів, оскільки він дає змогу незалежно оцінити, наскільки машинний переклад схожий на кожний з них.

Кумулятивний BLEU, з іншого боку, визначається шляхом додавання оцінок точності n-градусного перекладу з усіх еталонних перекладів, а потім обчислюється середнє геометричне. Оскільки в наявності є лише один переклад-еталон, цей метод є важливим, оскільки дає змогу оцінити, наскільки добре машинний переклад відповідає еталону в цілому.

Ось ілюстрація різниці між кумулятивним та індивідуальним BLEU. Припустимо, у вас є три еталонних переклади (A, B і C) і машинний переклад вихідної фрази (D). Індивідуальний BLEU обчислюється шляхом незалежного підрахунку балів BLEU між D і кожним з еталонів (A, B і C), а потім усереднення цих балів. Індивідуальні результати можуть виглядати приблизно так:

  • BLEU(A,D) = 0.3
  • BLEU(B,D) = 0.4
  • BLEU(C,D) = 0.2
  • BLEU середнє = (0.3 + 0.4 + 0.2) / 3 = 0.3

Щоб отримати загальну оцінку BLEU, додайте оцінки точності n-грам усіх трьох еталонних перекладів (A, B і C) перед тим, як обчислити середнє геометричне значення.

  • BLEU кумулятивний = 0.291 = exp(1/3 * (log(0.3) + log(0.4) + log(0.2))

Як бачите, індивідуальні оцінки BLEU дають змогу оцінити, наскільки добре машинний переклад відповідає кожному еталонному перекладу окремо, а сукупна оцінка BLEU - наскільки добре він відповідає всім еталонним перекладам разом узятим. Обидві процедури мають свої переваги та недоліки, і те, яку з них обрати, залежить від конкретного завдання з оцінювання.

Загалом BLEU є цінним інструментом для оцінювання машинного перекладу, але для отримання повної картини якості перекладу його слід поєднувати з іншими метриками оцінювання та людським судженням.