機械翻訳
自動評価は、機械翻訳の結果を機械的に評価する方法である。 評価を行う場合は、まず、原文と参照訳(翻訳の正解文)を数千対程度用意し、翻訳システムを用いて原文を翻訳する。 次に、翻訳結果と参照訳の類似度を各文に対して計算し、最後に平均を取って翻訳システムの評価とする。
自動評価尺度として、以下のようなものがある。それぞれの尺度に特徴があるため、1つの尺度を信頼するのではなく、複数の尺度を併用することが望ましい。
BLEU
General Text Matcher(GTM)
IMPACT
METEOR
Position-independent word Error Rate (PER)
RIBES
Translation Error Rate(TER)
Word Error Rate(WER)
このような処理系は暗号理論からの類推でデコーダ(復号器)と呼ばれる。
2000年代から盛んに研究されている句に基づく統計的機械翻訳を始め、近年では直接雑音チャネルモデルを用いるのではなく、最大エントロピー法(対数線形モデル)に基づく下記の最適化問題として考えることが多い。
a r g m a x e  P ( e | f ) = a r g m a x e  exp  ( w T h ( e , φ , f ) ) ∑ e ′ , φ ′ exp  ( w T h ( e ′ , φ ′ , f ) ) {\displaystyle \operatorname {arg\,max} _{e}P(e|f)=\operatorname {arg\,max} _{e}{\frac {\exp({\boldsymbol {w}}^{T}{\boldsymbol {h}}(e,{\boldsymbol {\phi }},f))}{\sum _{e',{\boldsymbol {\phi }}'}\exp({\boldsymbol {w}}^{T}{\boldsymbol {h}}(e',{\boldsymbol {\phi }}',f))}}}
統計翻訳においても、翻訳の精度を高めるために、人手により追加されたルールを利用する場合がある。また、近年ではパラレルでないコーパスから翻訳ルールを獲得する研究も為されている。
以下のような原文が与えられたとする。
この文を句構造解析して得られる構文木は次のようになる:
ここで、以下のような辞書を使って英語の単語を日本語の単語に置き換える:
構文木は次のようになる:
しかしまだ語順が正しくないし、助詞もない。 ここで構文木に対して以下のような規則を適用して変換をおこなう:
"S → NP VP" というノードがあれば、それを "S → NP は VP" に変換せよ。
"VP → verb NP" というノードがあれば、それを "VP → NP を verb" に変換せよ。
すると変換された木はこのようになっている:
ここから、以下のような翻訳文を生成できる:
これは非常に単純な例である。 実際には英語の have は複数の語義をもつので、語義の曖昧性解消をしなければ単純に「have → 持っている」という変換をすることはできない。 また、モダリティの考慮や、照応の解決、敬語の扱い、自然な言い回しの文の生成など、実用的な翻訳ソフトウエアをつくるためには多くのことを考慮に入れる必要がある。
構文木に基づく翻訳では、構文解析誤りが翻訳結果に悪影響を及ぼす場合がある。その場合の解決策として、複数の構文木の候補(構文森)を考慮した翻訳手法も存在する。
e ^ = a r g m a x e  P ( e | f ) = a r g m a x e  P ( e ) P ( f | e ) P ( f ) = a r g m a x e  P ( e ) P ( f | e ) {\displaystyle {\begin{aligned}{\hat {e}}&=\operatorname {arg\,max} _{e}P(e|f)\\&=\operatorname {arg\,max} _{e}{\frac {P(e)P(f|e)}{P(f)}}\\&=\operatorname {arg\,max} _{e}P(e)P(f|e)\end{aligned}}}
2番目の変形はベイズの定理による。 ここで P ( e ) {\displaystyle P(e)} をモデル化したものを言語モデル、 P ( f | e ) {\displaystyle P(f|e)} をモデル化したものを翻訳モデルと呼び、言語モデルは翻訳結果の言語としての流暢さを、翻訳モデルは翻訳の確からしさをモデル化していると言える。翻訳モデルのみでは目的言語として正しくない文となってしまうため、言語モデルによって目的言語として正しくない文を取り除けると考えられる。また、言語モデルについての研究は音声認識などの分野において既に研究が行われており、その知見を生かすこともできる。
統計的機械翻訳の処理系はこれらのモデルの組み合わせが高い値を与える翻訳結果を探索することになる。