next up previous contents
次へ: デコーダ 上へ: 句に基づく統計翻訳システム 戻る: フレーズテーブルの作成   目次

言語モデル

言語モデルは単語列に生成確率を付与するモデルである.言語モデルは単言語学習文から学習される.統計翻訳では一般的に,$ N$ -gramモデルを用いる.

$ N$ -gramモデルは``単語列 $ \omega_{1}^{n} = \omega_1,\omega_2,\omega_3,...,\omega_n$$ i$ 番目の単語$ \omega_i$ の生起確率 $ P(\omega_i)$ は直前の$ (N-1)$ 単語に依存する"という仮説に基づくモデルである.単語列 $ \omega_{1}^{n}$ の生起確率 $ P(\omega_{1}^{n})$ の計算式を式(2.19)に示す.

\begin{displaymath}\begin{split}P(\omega_{1}^{n}) &= P(\omega_1) \times P(\omega...
...i_{i=1}^{n}P(\omega_{i}\vert\omega_{i-(N-1)}^{i-1}) \end{split}\end{displaymath} (2.19)

ここで, $ \omega_{i}^{j}$$ i$ から$ j$ 番目までの単語列を表す. 例えば,``She is a teacher"という単語列に対して2-gramモデルを適応した場合,単語列の生起確率は式(2.20)で計算される.

$\displaystyle P(\lq\lq Sheisateacher'') \simeq P(She) \times P(is\vert She) \times P(a\vert is) \times P(teacher\vert a)$ (2.20)

3-gramの場合,``She is"の単語列の次に``a"が生じる確率を考える.しかし,$ N$ -gramモデルにおいて,信頼できる値を算出するためには,大規模な対訳学習文を用いることが必要である.そこで,出現数の少ない単語列をモデルの学習から削除する手法(カットオフ)や,確率が0になるのを防ぐため,大きい確率を小さく,小さい確率を大きくする手法(スムージング)が提案されている.スムージングの代表的な手法にバックオフ・スムージングがある.バックオフ・スムージングは学習データに出現しない$ N$ -gramを低次の$ (N-1)$ -gramで推定する手法である.表2.3$ N$ -gramモデルにおける2-gramの例を示す.


表: 2-gramの例
2-gramの単語列 2-gramの確率 バックオフ・スムージングによる確率
$ \omega_{1} \omega_{2}$ $ log_{10}(P(\omega_2\vert\omega_1))$ $ log_{10}(P(\omega_2\vert\omega_1))$
American English -1.885179 -0.0880824
He is -2.023028 -0.000409741
I have -1.509964 -0.05597086



平成27年3月13日