next up previous contents
次へ: デコーダ 上へ: 統計翻訳システムの概要 戻る: 翻訳モデル   目次

言語モデル

言語モデルは, 単語列に対して, それらの単語列の生成確率を付与するモデルである. 言語モデルを用いることで, 目的言語の文として適切な単語列を選出する. 統計翻訳では一般的に$N$-gramモデルを用いる.

$N$-gramモデルは, ``単語列$w_1$,$w_2$,...,$w_n$$i$番目の単語$w_i$の生起確率$P(w_i)$は, 直前の単語($N-1$)に依存する''という仮定に基づくモデルである. 計算式を以下に示す.


$\displaystyle P(w_1w_2...w_n)$ $\textstyle =$ $\displaystyle \prod_{i=1}^n P(w_i\vert w_{i-1})$ (2.3)

例として, ``This is a pen''という文字列に対する2-gramモデルを以下に示す.

\begin{eqnarray*}
P(e=\lq\lq This is a pen \!\mbox{''})&\approx&
P(This)
\times P(is\vert This)
\times P(a\vert is)
\times P(pen\vert a)
\end{eqnarray*}

また, 3-gramモデルのときは$P(a\vert This is)$となる. このように, ($N-1$)単語の次にくる単語が ``is''や``pen''である確率を求める.

$N$-gramモデルの例として2-gramモデルの例を以下の表2.1に示す.

表: $N$-gramモデルの例
-0.920822 This is -0.568185
-2.123066 This picture -0.275901
-2.381344 This plan -0.131124
-2.682374 This music -0.083978
-3.638501 a pen -0.100087
-3.296078 a pencil -0.132691

一番上の行に関して説明すると以下となる.

-0.920822: ``This''のあとに``is''がくる確率を常用対数で表した値`` $\log_{10}( P( This\vert is) )$''

This is:

2-gramで表された単語列

-0.5681853:

バックオフスムージングにより得られる,``This''のあとに``is''がくる確率を常用対数で表した値`` $\log_{10}( P( This\vert is) )$''



また,バックオフスムージングとは,高次の$N$-gramが存在しない場合, 低次の$N$-gramを用いる手法である. この低次の確率を改良したスムージングの手法がKneser-Neyスムージングである. 言語モデルにおける$N$-gram作成には,性能の良さから一般的にKneser-Neyスムージングが用いられる.


next up previous contents
次へ: デコーダ 上へ: 統計翻訳システムの概要 戻る: 翻訳モデル   目次
平成26年3月7日