next up previous contents
次へ: デコーダ 上へ: 言語モデル 戻る: 言語モデルの概要   目次


N-gramモデル

言語モデルの代表的なモデルとしてN-gramモデルがある.このN-gramモデルとは1次元の単語列 \(w_1,w_2,w_3,\cdot w_n = w_1^n\)における \(i\)番目の単語\(w_i\)の生起確率\(P(w_i)\)\(w_i\)の直前の\((N-1)\)単語に依 存するモデルであり,以下の式で表現される.


$\displaystyle P(w_1^n)$ $\textstyle =$ $\displaystyle P(c_1) \times P(c_2\vert c_1) \times P(c_3\vert c_1c_2) \cdots$ (3.25)
  $\textstyle =$ $\displaystyle \prod^n_{i=1} P(w_i \vert c_1 c_2 c_3 \cdots c_{i-1})$ (3.26)
  $\textstyle \simeq$ $\displaystyle \prod^n_{i=1} P(w_i \vert w_i-N+1,w_i-N+2, \cdots ,w_{i-1})$ (3.27)

``She is wise .''という英語文\(e\)に対する\({\it N} = 2\)とした2-gramモデルの 例を以下に示す.


$\displaystyle P(e = She\ is\ wise\ .)$ $\textstyle \simeq$ $\displaystyle P(She)P(is\vert She)P(wise\vert is)P(.\vert wise)$ (3.28)

3-gramモデルであれば \(P(wise\vert She\ is)\),4-gramモデルであれば \(P.\vert She\
is\ wise\)となる.また,\(N = 1\)のモデルをuni-gram,\(N = 2\)のモデルを bi-gram,\(N = 3\)のモデルをtri-gramと特有の呼びかたをする.\(N = 4\)以 上は4-gramなど数値を用いて呼ぶ.一般的にtrigramの精度が高いとされている. (3.9)式を最尤推定により求めると以下の式となる.


$\displaystyle P(w_n\vert w_{n-N+1}^{n-1}) = \frac{C(w_{n-N+1}^n)}{C(w_{n-N+1}^{n-1})}$     (3.29)

この(3.29)式から信頼性の高い値を推定するためには単語列\(w_1^n\)が 多く出現している必要がある.しかし実際には多くの単語列は出現数が\(0\)と なることが多いため信頼できる値を推定できない場合が多い.したがって,スムー ジングを行う.スムージングとは生起確率が\(0\)となるのを防ぐために,大きい確 率値を小さく,小さい確率値を大きくし,確率値の平滑化する手法であり,代表 的な手法にバックオフスムージングがある.バックオフスムージングでは学習デー タに出現しないN-gramを\((N-1)\)-gramの値から推定を行う.tri-gram の場合には確率が以下の式で推定される.


$\displaystyle P(w_n\vert w_{n-2}^{n-1}) = \left\{
\begin{array}{ll}
\lambda(w_{...
...^{n-1}) > 0\)}\\
P(w_n\vert w_{n-1}) & \mbox{otherwise}\\
\end{array}\right .$     (3.30)

\(\lambda\)はディスカウントと呼ばれる係数であり,出現しないN-gram に対して確率を付与するために,\((N-1)\)-gramから確率を推定する役割を持つ. \(\alpha\)は確率の和を\(1\)にするための正規化係数である. ディスカウント係数を求める方法は多数存在する.例として,``-ndiscount''や ``-kndiscount''や``-ukndiscount''などがある.

N-gramモデルは局所的な情報であり,少ない文法情報しか保持できない. したがって,文法構造が似ている言語間では,部分的な翻訳で十分な翻訳文が生 成でき,翻訳精度が高い傾向がある.また,日本語と英語のような文法構造の異 なる言語間では特異な文が生成される場合があり翻訳精度が低下する傾向がある.



平成22年2月11日