ブルー

これは良い記事です。詳細についてはここをクリックしてください。

BLEUバイリンガル評価研究)は、ある自然言語から別の自然言語に機械翻訳されたテキストの品質を評価するアルゴリズムです。品質とは、機械の出力と人間の出力の対応関係であると考えられています。「機械翻訳がプロの人間の翻訳に近いほど、優れている」というのがBLEUの中心的な考え方です。[1] 2001年にIBMで発明されたBLEUは、人間の品質判断と高い相関関係があると主張した最初の指標の1つであり、 [2] [3]、現在でも最も人気のある自動化された安価な指標の1つです

スコアは、個々の翻訳セグメント(通常は文)について、質の高い参照翻訳セットと比較することで算出されます。これらのスコアをコーパス全体で平均化し、翻訳全体の品質を推定します。明瞭度や文法の正確さは考慮されません。[4]

BLEUの出力は常に0から1の間の数値です。この値は、候補テキストが参照テキストとどの程度類似しているかを示し、1に近いほど類似度が高いことを示します。人間による翻訳でスコア1に達することはほとんどありません。これは、候補テキストが参照翻訳のいずれかと完全に一致していることを意味するためです。そのため、スコア1を必ずしも達成する必要はありません。一致の可能性が増えるため、参照翻訳を追加するとBLEUスコアは上昇します。[5]

数学的定義

基本設定

BLEUスコアを定義するための最初の基本的な試みは、候補文字列と参照文字列のリストという2つの引数を取ります。考え方としては、がに類似している場合は1に近く、類似していない場合は0に近くなるはずです y^{\displaystyle {\hat {y}}}y1yN{\displaystyle (y^{(1)},...,y^{(N)})}BLEUy^;y1yN{\displaystyle BLEU({\hat {y}};y^{(1)},...,y^{(N)})}y^{\displaystyle {\hat {y}}}y1yN{\displaystyle y^{(1)},...,y^{(N)}}

例えると、BLEU スコアは、言語教師が生徒の翻訳が参考回答にどれだけ忠実に従っているかをチェックして、その品質を評価しようとするようなものです。 y^{\displaystyle {\hat {y}}}y1yN{\displaystyle y^{(1)},...,y^{(N)}}

自然言語処理では、候補文字列の大きなセットを評価する必要があるため、M 個の候補文字列のリスト (「コーパス」と呼ばれる)と、各候補文字列に対する参照候補文字列のリストがある場合に、BLEUスコアを一般化する必要があります。 y^1y^M{\displaystyle ({\hat {y}}^{(1)},\cdots ,{\hat {y}}^{(M)})}y^i{\displaystyle {\hat {y}}^{(i)}}Si:=yi1yiNi{\displaystyle S_{i}:=(y^{(i,1)},...,y^{(i,N_{i})})}

任意の文字列、および任意の整数が与えられた場合、そのn-gramのセットを と定義します。これは一意の要素のセットであり、冗長な要素を許容する多重セットではないことに注意してください。つまり、たとえば、 となります。 yy1y2yK{\displaystyle y=y_{1}y_{2}\cdots y_{K}}n1{\displaystyle n\geq 1}Gny{y1yny2yn1yKn1yK}{\displaystyle G_{n}(y)=\{y_{1}\cdots y_{n},y_{2}\cdots y_{n+1},\cdots ,y_{K-n+1}\cdots y_{K}\}}G2abab{abba}{\displaystyle G_{2}(abab)=\{ab,ba\}}

任意の2つの文字列 が与えられたとき、が の部分文字列として出現する回数を部分文字列カウントと定義します。たとえば、 です。 sy{\displaystyle s,y}Csy{\displaystyle C(s,y)}s{\displaystyle s}y{\displaystyle y}Cababcbab2{\displaystyle C(ab,abcbab)=2}

ここで、候補コーパス を固定し、候補コーパス を参照します。ここで、各 です。 S^:=y^1y^M{\displaystyle {\hat {S}}:=({\hat {y}}^{(1)},\cdots,{\hat {y}}^{(M)})}SS1SM{\displaystyle S=(S_{1},\cdots,S_{M})}Si:=yi1yiNi{\displaystyle S_{i}:=(y^{(i,1)},...,y^{(i,N_{i})})}

修正Nグラム精度

修正Nグラム精度関数をと定義します。複雑に見える修正Nグラムは、候補文1つと参照文1つという典型的なケースを単純に一般化したものです。この場合、 となります。この式を導き出すために、最も明白なNグラムカウントの合計から始めます。 この量は、参照文のNグラムが候補文によっていくつ再現されるかを測定します。Nグラムではなく、n部分文字列 を数えることに注意してください。例えば、 の場合、(abとba) のすべての2部分文字列はそれぞれに3回出現するため、カウントは2ではなく6になります pnS^;S:=i1MsGny^i最小Csy^i最大ySiCsyi1MsGny^iCsy^i{\displaystyle p_{n}({\hat {S}};S):={\frac {\sum _{i=1}^{M}\sum _{s\in G_{n}({\hat {y}}^{(i)})}\min(C(s,{\hat {y}}^{(i)}),\max _{y\in S_{i}}C(s,y))}{\sum _{i=1}^{M}\sum _{s\in G_{n}({\hat {y}}^{(i)})}C(s,{\hat {y}}^{(i)})}}}pn{y^};{y}sGny^最小Csy^CsysGny^Csy^{\displaystyle p_{n}(\{{\hat {y}}\};\{y\})={\frac {\sum _{s\in G_{n}({\hat {y}})}\min(C(s,{\hat {y}}),C(s,y))}{\sum _{s\in G_{n}({\hat {y}})}C(s,{\hat {y}})}}}sGny^Csyn部分文字列の数 y^ に現れる y{\displaystyle \sum _{s\in G_{n}({\hat {y}})}C(s,y)={\text{yに現れるn-部分文字列の数}}{\hat {y}}{\text{}}yに現れるn-部分文字列の数}y^abayabababan2{\displaystyle {\hat {y}}=aba,y=abababa,n=2}y^{\displaystyle {\hat {y}}}y{\displaystyle y}

ただし、上記の状況では、候補文字列が短すぎます。 が 3 回出現する代わりに1 回しか含まれていないため、これを修正するために最小関数を追加します。このカウントの合計は正規化されていないため、文間の比較には使用できません。参照文と候補文の両方が長い場合、候補の品質が非常に悪くても、カウントが大きくなる可能性があります。 そのため、これを正規化します。正規化により、 は常に の数値となり、コーパス間で意味のある比較が可能になります。候補の n 部分文字列のいずれも参照にない場合は 0 になります。候補のすべての n グラムが参照に、候補と同じ回数以上出現する場合は 1 になります。特に、候補が参照の部分文字列である場合は 1 になります。 ab{\displaystyle ab}sGny^最小Csy^Csy{\displaystyle {\sum _{s\in G_{n}({\hat {y}})}\min(C(s,{\hat {y}}),C(s,y))}}sGny^最小Csy^CsysGny^Csy^{\displaystyle {\frac {\sum _{s\in G_{n}({\hat {y}})}\min(C(s,{\hat {y}}),C(s,y))}{\sum _{s\in G_{n}({\hat {y}})}C(s,{\hat {y}})}}[01]{\displaystyle [0,1]}

簡潔性ペナルティ

修正されたN-gram精度は、「電信的な」候補文字列、つまり参照文字列のすべてのN-gramを可能な限り少ない回数だけ含む候補文字列に過度に高いスコアを与えます

短すぎる候補文字列をペナルティにするには、簡潔性ペナルティを と定義します。ここで、 は の正の部分です。 BPS^;S:=er/c1{\displaystyle BP({\hat {S}};S):=e^{-(r/c-1)^{+}}}r/c1最大0r/c1{\displaystyle (r/c-1)^{+}=\max(0,r/c-1)}r/c1{\displaystyle r/c-1}

  • のとき、簡潔性ペナルティはとなり、長い候補はペナルティを受けず、短い候補のみがペナルティを受けることを意味します。rc{\displaystyle r\leq c}BP1{\displaystyle BP=1}
  • のとき、簡潔ペナルティr>c{\displaystyle r>c}BPe1r/c{\displaystyle BP=e^{1-r/c}}

c{\displaystyle c}は候補コーパスの長さ、つまりの長さです。 c:=i1M|y^i|{\displaystyle c:=\sum _{i=1}^{M}|{\hat {y}}^{(i)}|}|y|{\displaystyle |y|}y{\displaystyle y}

r{\displaystyle r}は有効な参照コーパスの長さ、つまり、つまり、長さが に可能な限り近いからの文です。 r:=i1M|yij|{\displaystyle r:=\sum _{i=1}^{M}|y^{(i,j)}|}yijarg最小ySi||y||y^i||{\displaystyle y^{(i,j)}=\arg \min _{y\in S_{i}}||y|-|{\hat {y}}^{(i)}||}Si{\displaystyle S_{i}}|y^i|{\displaystyle |{\hat {y}}^{(i)}|}

最終的な式

BLEUの定義は一つではなく、重みベクトル によってパラメータ化された一連の定義が存在します。BLEUは、つまり、 上の確率分布です。 w:=w1w2{\displaystyle w:=(w_{1},w_{2},\cdots )}{123}{\displaystyle \{1,2,3,\cdots \}}i1wi1{\displaystyle \sum _{i=1}^{\infty }w_{i}=1}i{123}wi[01]{\displaystyle \forall i\in \{1,2,3,\cdots \},w_{i}\in [0,1]}

を選択した場合、BLEUスコアは です。言い換えれば、これはすべての修正n-gram精度の加重幾何平均に簡潔性ペナルティを乗じたものです。複数のn-gram精度において同時に良好と判断される候補コーパスを強く優先するため、加重算術平均ではなく加重幾何平均を使用します。 w{\displaystyle w}BLEUwS^;S:=BPS^;Sexpn1wnlnpnS^;S{\displaystyle BLEU_{w}({\hat {S}};S):=BP({\hat {S}};S)\cdot \exp \left(\sum _{n=1}^{\infty }w_{n}\ln p_{n}({\hat {S}};S)\right)}

最も典型的な選択肢は、原著論文で推奨されているものである。[ 1 ]w1w414{\displaystyle w_{1}=\cdots =w_{4}={\frac {1}{4}}}

アルゴリズム

これは、Papineni et al. (2002) の次の例で説明されています

精度は高いが質の低い機械翻訳の出力例
候補者 そのそのそのそのそのそのその
参考資料1 そのそのマット
参考資料2 そこにaそのマット

候補翻訳に含まれる7つの単語はすべて参照翻訳に含まれています。したがって、候補テキストのユニグラム精度は、

Pメートルwトン771{\displaystyle P={\frac {m}{w_{t}}}={\frac {7}{7}}=1}

ここで、 は候補訳文の単語のうち参考文献に現れる単語数、は候補訳文の総単語数です。上記の候補訳文はどちらの参考文献の内容もほとんど残していないにもかかわらず、これは満点です。  メートル{\displaystyle ~m} wトン{\displaystyle ~w_{t}}

BLEUによる修正は非常に単純です。候補翻訳の各単語について、アルゴリズムは参照翻訳のいずれにおいても、その単語の出現回数の最大値である を取得します。上記の例では、「the」という単語は参照1に2回、参照2に1回出現しています。したがって となります。  メートルメートルa×{\displaystyle ~m_{max}} メートルメートルa×2{\displaystyle ~m_{max}=2}

候補翻訳では、各単語のカウント数は、その単語の最大値に切り詰められます。この場合、「the」はと を持つため、2に切り詰められます。切り詰められたカウント数は、候補翻訳内のすべての異なる単語について合計されます。この合計は、候補翻訳に含まれるユニグラムの総数で割ります。上記の例では、修正されたユニグラム適合率スコアは次のようになります。 メートルw{\displaystyle m_{w}}メートルメートルa×{\displaystyle m_{max}} メートルw7{\displaystyle ~m_{w}=7} メートルメートルa×2{\displaystyle ~m_{max}=2} メートルw{\displaystyle ~m_{w}} メートルw{\displaystyle ~m_{w}}

P27{\displaystyle P={\frac {2}{7}}}

しかし実際には、個々の単語を比較単位として用いるのは最適ではありません。BLEUは代わりに、n-gramを用いて同様の修正適合率指標を計算します。「単一言語の人間の判断と最も高い相関関係」[6]を持つ長さは4であることが分かりました。ユニグラムスコアは、翻訳の適切さ、つまりどれだけの情報が保持されているかを表すことが分かっています。より長いn -gramスコアは、翻訳の流暢さ、つまり「良い英語」としてどれだけ読みやすいかを表します。

候補「the the cat」の指標を比較する
モデルグラムのセットスコア
ユニグラム「the」「the」「cat」11131{\displaystyle {\frac {1+1+1}{3}}=1}
グループ化されたユニグラム「その」*2、「猫」*1112123{\displaystyle {\frac {1+1}{2+1}}={\frac {2}{3}}}
バイグラム「その、その」、「猫」0+12=12{\displaystyle {\frac {0+1}{2}}={\frac {1}{2}}}

上記と同じ参考文献の候補翻訳の例は次のようになります。

この例では、修正ユニグラムの適合率は次のようになります。

P=12+12=22{\displaystyle P={\frac {1}{2}}+{\frac {1}{2}}={\frac {2}{2}}}

候補語には「the」と「cat」という単語がそれぞれ1回ずつ出現し、単語の総数は2です。修正バイグラムの適合率は、バイグラムでは「the cat」が候補語に1回出現するため、次のようになります。この問題を克服するために、適合率は通常、再現率と対になっていることが指摘されています[7]。この例のユニグラムの再現率はまたはです。問題は、複数の参照翻訳があるため、各参照のすべての単語で構成された翻訳など、不適切な翻訳では再現率が簡単に膨らんでしまうことです[8]1/1{\displaystyle 1/1}3/6{\displaystyle 3/6}2/7{\displaystyle 2/7}

コーパス全体のスコアを生成するために、セグメントの修正された適合率スコアは、非常に短い候補文に高いスコアが与えられすぎないように、幾何平均に簡潔性ペナルティを乗じて結合されます。 rを参照コーパスの合計長、cを翻訳コーパスの合計長とします。 の場合、簡潔性ペナルティが適用され、 と定義されます。 (参照文が複数ある場合、rは候補文の長さに最も近い文の長さの合計とされます。ただし、2009 年より前のNIST評価で使用されていたバージョンの指標では、最短の参照文が代わりに使用されていました。) cr{\displaystyle c\leq r}e(1r/c){\displaystyle e^{(1-r/c)}}

iBLEUはBLEUのインタラクティブバージョンであり、ユーザーは候補翻訳によって得られたBLEUスコアを視覚的に検証できます。また、2つの異なるシステムを視覚的かつインタラクティブに比較できるため、システム開発に役立ちます。[9]

パフォーマンス

BLEUは人間の判断とよく相関すると頻繁に報告されており[10] [11] [12]、新しい評価指標の評価におけるベンチマークとなっています。しかしながら、多くの批判も表明されています。原理的にはあらゆる言語の翻訳を評価できるものの、現状のBLEUは単語境界のない言語に対応できないことが指摘されています[13] 。複数の参照翻訳に使用するように設計されていますが、実際には1つの翻訳にのみ使用されています[ 2 ] 。BLEUはトークン化技術に依存していることで有名であり、異なるトークン化技術で得られたスコアは比較できません(これはしばしば見落とされます)。再現性と比較可能性を向上させるために、SacreBLEUバリアントが設計されました[ 2 ]

BLEUには大きな利点があるものの、BLEUスコアの上昇が翻訳品質の向上を示す指標であるという保証はないという議論もある。[14]

参照

注釈

  1. ^ Papineni, K., et al. (2002)
  2. ^ Papineni, K., et al. (2002)
  3. ^ コフリン、D.(2003)
  4. ^ Papineni, K., et al. (2002)
  5. ^ Papineni, K., et al. (2002)
  6. ^ Papineni, K., et al. (2002)
  7. ^ コフリン、D.(2003)
  8. ^ ドディントン、G.(2002)
  9. ^ デノアル、E.とルパージュ、Y.(2005)
  10. ^ Callison-Burch, C., Osborne, M. and Koehn, P. (2006)
  11. ^ Lee, A. および Przybocki, M. (2005)
  12. ^ Callison-Burch, C., Osborne, M. and Koehn, P. (2006)
  13. ^ Lin, C.とOch, F.(2004)
  14. ^ Callison-Burch, C., Osborne, M. and Koehn, P. (2006)
  15. ^ マドナニ、N.(2011)

参考文献

  1. ^ Papineni, Kishore; Roukos, Salim; Ward, Todd; Zhu, Wei-Jing (2001). 「BLEU」 .第40回計算言語学会年次会議議事録 - ACL '02 . 米国ニュージャージー州モリスタウン:計算言語学会: 311. doi : 10.3115/1073083.1073135 . S2CID  11080756
  2. ^ a b Marie, Benjamin (2022年11月5日). 「BLEU:別の時代の誤解された指標」 . Towards Data Science .

参考文献