BLEU 翻訳品質指標
BLEU(Bilingual Evaluation Understudy)は、機械翻訳されたテキストを評価するための指標です。BLEU スコアは、機械翻訳されたテキストと高品質な参照訳の類似度を測定する 0 から 1 までの数値です。
- スコアが 0 の場合、機械翻訳の出力に参照訳と一致する部分がないことを意味します。これは、翻訳の品質が低いことを示します。
- スコアが 1 の場合、参照訳と完全に一致していることを意味し、翻訳の品質が高いことを示します。
BLEU の制限事項
BLEU はコーパスベースの指標です。BLEU 指標を個々の文の評価に使用した場合は、うまく機能しません。1 つの文は、ほとんどの意味をとらえていても、BLEU スコアが非常に低くなることがあります。個々の文の n グラム統計はあまり意味がないので、BLEU はコーパスベースの指標として設計されています。つまり、スコアを計算する際には、コーパス全体で統計が収集されます。BLEU 指標は個々の文に対して因数分解できません。
BLEU では、内容語と機能語が区別されません。BLEU 指標では、内容語と機能語が区別されません。「a」のような機能語が抜けている語句の場合、「NASA」という名前が誤って「ESA」に置換された場合と同じペナルティが課せられます。
BLEU は、文の意味や文法の正しさを十分に評価できません。「not」のような単語が 1 つ抜けると、文の意味が正反対になる場合があります。また、n が 4 以下の n グラムのみを考慮すると、長い範囲の依存性が無視されるため、BLEU は、文法に合わない文に小さいペナルティしか課さないことがよくあります。
BLEU は正規化とトークン化に依存しています。BLEU スコアを計算する前に、参照訳と候補訳が正規化され、トークン化されます。これらのプロセスで選択する手順は、最終的な BLEU スコアに大きな影響を与えます。
BLEU スコアの解釈方法
以下は、BLEU スコア(小数ではなく割合として表される)の解釈方法を示す大まかなガイドラインです。
| BLEU % スコア | 解釈 |
|---|---|
| < 10 | ほとんど役に立たない |
| 10~19 | 主旨を理解するのが困難である |
| 20~29 | 主旨は明白であるが、文法上の重大なエラーがある |
| 30~40 | 理解できる、適度な品質の翻訳 |
| 40~50 | 高品質な翻訳 |
| 50~60 | 非常に高品質で、適切かつ流暢な翻訳 |
| > 60 | 人が翻訳した場合よりも高品質であることが多い |
次のカラー グラデーションは、BLEU スコアの解釈の一般的な尺度として使用できます。

数学的な詳細
数学的には、BLEU スコアは次のように定義されます。
以下を使用
\[ precision_i = \dfrac{\sum_{\text{snt}\in\text{Cand-Corpus}}\sum_{i\in\text{snt}}\min(m^i_{cand}, m^i_{ref})} {w_t^i = \sum_{\text{snt'}\in\text{Cand-Corpus}}\sum_{i'\in\text{snt'}} m^{i'}_{cand}} \]
それぞれの意味は次のとおりです。
- \(m_{cand}^i\hphantom{xi}\) は、参照訳と一致する候補訳内の i グラムのカウントです。
- \(m_{ref}^i\hphantom{xxx}\) は、参照訳内の i グラムのカウントです。
- \(w_t^i\hphantom{m_{max}}\) は、候補訳内の i グラムの総数です。
数式は、Brevity Penalty(短さのペナルティ)と n グラム適合率の 2 つの部分で構成されます。
簡潔さのペナルティ。Brevity Penalty は、最も近い参照訳の長さと比較して、生成された翻訳が短すぎる場合に指数関数的減衰を使用してペナルティを課します。Brevity Penalty は、BLEU スコアに再現率の項がないという事実を補正します。
n グラム適合率。n グラム適合率は、1 グラム、2 グラム、3 グラム、4 グラム(i=1,...,4)が参照訳内の対応する n グラムと一致する数をカウントします。この項は、精度の指標として機能します。ユニグラムは適切さを評価し、それよりも長い n グラムは翻訳の流暢さを評価します。オーバーカウントを回避するために、n グラムのカウントは、参照訳に出現する n グラムの最大カウント(\(m_{ref}^n\))に切り詰められます。
例: \(precision_1\)の計算
次のような参照文と候補訳について考えてみましょう。
参照文: the cat is on the mat
候補訳: the the the cat mat
最初のステップでは、参照文と候補訳における各 1 グラムの出現回数をカウントします。BLEU 指標では大文字と小文字が区別されます。
| ユニグラム | \(m_{cand}^i\hphantom{xi}\) | \(m_{ref}^i\hphantom{xxx}\) | \(\min(m^i_{cand}, m^i_{ref})\) |
|---|---|---|---|
the |
3 | 2 | 2 |
cat |
1 | 1 | 1 |
is |
0 | 1 | 0 |
on |
0 | 1 | 0 |
mat |
1 | 1 | 1 |
候補(\(w_t^1\))内の 1 グラムの総数は 5 であるため、 \(precision_1\) = (2 + 1 + 1) ÷ 5 = 0.8 となります。
例: BLEU スコアの計算
参照文:
The NASA Opportunity rover is battling a massive dust storm on Mars.
候補訳 1:
The Opportunity rover is combating a big sandstorm on Mars.
候補訳 2:
A NASA rover is fighting a massive storm on Mars.
上記の例は、1 つの参照文と 2 つの候補訳で構成されています。これらの文は、BLEU スコアを計算する前にトークン化されます。たとえば、最後のピリオドは別個のトークンとしてカウントされます。
各翻訳の BLEU スコアを計算するために、次の統計を計算します。
- n グラム適合率。次の表に、両方の候補訳の n グラム適合率を示します。
- Brevity-Penalty。候補訳 1 も候補訳 2 も 11 個のトークンで構成されているので、Brevity Penalty は両方の文で同じです。
- BLEU スコア。BLEU スコアが 0 より大きくなるには、一致する 4 グラムが少なくとも 1 つ必要です。候補訳 1 には一致する 4 グラムがないので、BLEU スコアは 0 です。
| 指標 | 候補訳 1 | 候補訳 2 |
|---|---|---|
| \(precision_1\) (1 グラム) | 8/11 | 9/11 |
| \(precision_2\) (2 グラム) | 4/10 | 5/10 |
| \(precision_3\) (3 グラム) | 2/9 | 2/9 |
| \(precision_4\) (4 グラム) | 0/8 | 1/8 |
| Brevity Penalty | 0.83 | 0.83 |
| BLEU スコア | 0.0 | 0.27 |