Upgrade to Pro — share decks privately, control downloads, hide ads and more …

B3勉強会 第2回 N-gramの紹介

Avatar for phong3112 phong3112
February 29, 2016
130

 B3勉強会 第2回 N-gramの紹介

Avatar for phong3112

phong3112

February 29, 2016
Tweet

Transcript

  1. 言語モデル • 言語モデルとは、テキストにおける確率ということである。 • 例えば、P(hôm nay trời đẹp) > P(trời

    đẹp hôm nay) (Pは確率と考えられる) • 言語モデルは自然言語処理の中にいろいろな地域を応用している、機械翻訳、スペルチェック とか。 • 機械翻訳 ➢ P(high winds tonight) > P(large winds tonight) • スペルチェック ➢ The office is about 15 minuets from my house. ➢ P(about 15 minutes) > P(about 15 minuets)
  2. 言語モデル • 言語モデルの目的は文字の確率を計算することである。 • P(W) = P(w 1 ,w 2

    ,w 3 ,...,w k ) • 関係のタスク:次の言葉の確率を計算する。 • P(w k |w 1 ,w 2 ,w 3 ,w 4 ,...,w k-1 ) • Bayes法則: P(w 1 w 2 w 3 ...w k )=P(w 1 )*P(w 2 |w 1 )*P(w 3 |w 1 w 2 )*...*P(w k |w 1 w 2 ..w k-1 ) • 例:確率P(“Today is Monday”)を計算する。 • Bayes法則に基づく、下の式に示す。 • P(“Today is Monday”)=P(Today)*P(is|Today)*P(Monday|Today is) • => 普通のは、nの値がすごく大きいから、計算できない!
  3. N-gramモデル • Markov仮定を用いて、確率は近似値を計算できる。 • P(w k |w 1 ,w 2

    ,...w k-1 )≒P(w k |w k-n ,...,w k-1 ) =>文字kの確率はn文字前から得られる。これはN-gramモデルと言われている。 • 例:1-gram (unigram): P(w 1 w 2 ...w k )≒P(w 1 )*P(w 2 )*...*P(w k ) • 2-gram (bigram): P(w 1 w 2 ...w k )≒P(w 1 )*P(w 2 |w 1 )*...*P(w k |w k-1 ) • 3-gram (trigram): P(w 1 w 2 ...w k )≒P(w 1 )*P(w 2 |w 1 )*P(w 3 |w 1 ,w 2 )*...*P(w k |w k-2 ,w k-1 ) • N-gramの問題点: – 実は、言語が長距離の依存関係であるので、違う意味の場合もある。 • 例:The computer which I had just put into the machine room on 5th floor crashed.
  4. 計算例 • 下のような5文からなる英語の品詞タグ付コーパスを考え、P(N|Det)とP(V|Det)を計算しな さい。 A/Det cat/N sat/V on/P the/Det mat/N.

    A/Det girl/N read/V a/Det book/N. Boys/N play/V baseball/N. A/Det train/N runs/V. A/Det dog/N chases/V a/Det cat/N.
  5. 計算例 P(N|Det) = C(Det,N)/C(Det) = 7/7 = 1 P(V|Det) =

    C(Det,V)/C(Det) = 0/7 = 0 (Cは頻度を表すことにする)