ことばとコンピュータ 2007年度1学期 第3回 本日の内容 • 前回のおさらい – 文を単語に区切って品詞を決める • 日本語編 • 文を単語に区切って品詞を決める – 英語編 2 前回のおさらい(1) • 文を単語に区切って,品詞を決める – 日本語編 • 「このひとことで元気になった」 →この/ひとこと/で/元気/に/なっ/た 連体詞 名詞 助詞 名詞 助詞 動詞 助動詞 3 おさらい(2) • 日本語は一般に,語の区切り,空白がない →単語を切り出す ※最も重要で難しい 語形変化したものを基本形にする 単語に品詞を付与 4 おさらい(3) コンピュータには文字以上のことはわからない 少なくとも 「単語」を知る必要がある 無理のない単語の並びを知る必要がある 5 おさらい(4) 単語辞書と連接規則 • 単語辞書 – 単語の基本形,読み,品詞,活用の型など を記述したもの • 連接規則 – 連接(連続して接する)可能な2つの単語の タイプ(主に,品詞とその活用の型)を 記述したもの 6 おさらい(5) 道具と手続き • 単語を知る道具 • 単語の連接を確かめる規則 は揃ったとして, 次は,どうやって,それらを使って実際に 文を単語に区切って,品詞の付与を行うか? →アルゴリズム(手続き) 7 おさらい(6) コスト最小法による形態素解析 • 実際にやりながら学習 0 こ1の2 ひ3 と4 こ5 と6 で7 元8 気9 に10な11 っ12 た13 最初はどこでも切れる可能性がある! 0の場所からスタート 8 おさらい(7) • コスト最小法による形態素解析 0 こ1の2 ひ3 と4 こ5 と6 で7 元8 気9 に10な11 っ12 た13 最初はどこでも切れる可能性がある! 0の場所からスタート 「こ」から始まる 単語を単語辞書 で調べる 9 おさらい(8) • コスト最小法による形態素解析 0 こ1の2 ひ3 と4 こ5 と6 で7 元8 気9 に10な11 っ12 た13 最初はどこでも切れる可能性がある! 0の場所からスタート 「こ」から始まる 単語を単語辞書 で調べる 「こ」(接尾辞),「こ」(名詞),「この」(連体詞) の3つを発見! 10 おさらい(8) • コスト最小法による形態素解析 0 こ1の2 ひ3 と4 こ5 と6 で7 元8 気9 に10な11 っ12 た13 最初はどこでも切れる可能性がある! 0の場所からスタート 文頭との接続が 許されるかどうか 連接規則を見る 「こ」(接尾辞),「こ」(名詞),「この」(連体詞) の3つを発見! 11 おさらい(9) • コスト最小法による形態素解析 0 こ1の2 ひ3 と4 こ5 と6 で7 元8 気9 に10な11 っ12 た13 最初はどこでも切れる可能性がある! 0の場所からスタート 文頭との接続が 許されるかどうか 連接規則を見る 「こ」(接尾辞),「こ」(名詞),「この」(連体詞) の3つを発見! 12 おさらい(10) 50 名詞40 0 こ 10 10 文 頭 10 10 こ の ラティスを 作っていく 連体詞10 20 13 おさらい(11) 30+40=70 名詞40 50 名詞40 こ 10 0 70 助詞10 60 の ひ 80 10 10 80 10 文 10 頭 10 10 こ の 連体詞10 20 30 10 30 10 30+40=70 名詞40 ひと 文 末 80 30+40=70 10 名詞40 30 10 ひとこと 14 おさらい(12) 30+40=70 名詞40 50 名詞40 こ 10 0 70 助詞10 60 の ひ 80 10 10 80 10 文 10 頭 10 10 こ の 連体詞10 20 30 10 30 10 30+40=70 名詞40 ひと ここを完成 さた! 文 末 80 30+40=70 10 名詞40 30 10 ひとこと 15 この/ひとこと/で/元気/に/なっ/た 連体詞 名詞 助詞 名詞 助詞 動詞 助動詞 16 文を単語に区切って品詞を決める 英語編 • 文を単語単位に分ける →単語の区切りとして空白があるので,あまり問 題にならない. 略記はやや問題 • 語形変化したものを,原形に戻す. • 品詞を分析(POS tagging) – 品詞の曖昧性が多く存在するので難しい. – 中心的な部分 17 文を単語に区切って品詞を決める(2) • 実は「形態素解析」と呼ぶ分析 • 形態素は,語基(radical) と 接辞(affix) – 接辞は,接頭辞(prefix)と接尾辞(suffix) • 語は,形態素1つか,複数形態素から成る – 1形態素: play, small, kind 語基だけ – 複数形態素:playing → play-ing smaller → small –er 語基と接尾辞 unkind → un- kind 接頭辞と語基 18 文を単語に区切って品詞を決める(3) • 実は「形態素解析」と呼ぶ分析 • 形態素は,語基(radical) と 接辞(affix) •規則変化は,変化規則を作成 – 接辞は,接頭辞(prefix)と接尾辞(suffix) •不規則変化は,対応表を作成 • 語は,形態素1つか,複数形態素から成る – 1形態素: play, small, kind 語基だけ 表を元に形態素は取り出せる – 複数形態素:playing → play-ing smaller → small –er 語基と接尾辞 unkind → un- kind 接頭辞と語基 19 文を単語に区切って品詞を決める(4) • それよりも...英語では品詞を決める(POS tagging)が 一番難しくて重要 • 品詞タグづけの難しさの例: Time flies like an arrow. – 光陰矢の如し Time/N flies/V like/Prep an/Det arrow/N Time/N flies/N like/V an/Det arrow/N 20 文を単語に区切って品詞を決める(5) • Time flies like an arrow. Time/N flies/V like/Prep an/Det arrow/N • 光陰矢の如し Time/N flies/N like/V an/Det arrow/N • トキバエは矢を好む. トキバエ→ 21 文を単語に区切って品詞を決める(6) • Time flies like an arrow. Time/N flies/V like/Prep an/Det arrow/N • 光陰矢の如し Time/N flies/N like/V an/Det arrow/N • トキバエは矢を好む. fliesやlikesの品詞が トキバエ→ 複数候補あるせい 22 品詞をどうやって決めか(1) • 品詞タグ付け: – 入力単語の列に対して尤もらしい品詞列を与え る問題と考える • 尤もらしさの尺度 – 各語について,複数の品詞がありうる場合,どの 品詞が尤もらしいか – 品詞の並びによる優先度 • 例:「The」 の後に来る語が動詞にも名詞にもなりうる 語である場合 → 名詞が優先される 23 品詞をどうやって決めか(2) 既に品詞付けをしてあるコーパスを元 • 品詞タグ付け: にして,この尤もらしさを自動的に計算 – 入力単語の列に対して尤もらしい品詞列を与え る問題と考える • 尤もらしさの尺度 – 各語について,複数の品詞がありうる場合,どの 品詞が尤もらしいか – 品詞の並びによる優先度 • 例:「The」 の後に来る語が動詞にも名詞にもなりうる 語である場合 → 名詞が優先される 24 品詞をどうやって決めか(3) 既に品詞付けをしてあるコーパスを元 • 品詞タグ付け: にして,この尤もらしさを自動的に計算 – 入力単語の列に対して尤もらしい品詞列を与え る問題と考える 確率的モデルを利用 • 尤もらしさの尺度 したPOS tagging – 各語について,複数の品詞がありうる場合,どの 品詞が尤もらしいか – 品詞の並びによる優先度 • 例:「The」 の後に来る語が動詞にも名詞にもなりうる 語である場合 → 名詞が優先される 25 品詞をどうやって決めるか(4) • 考え方 – 入力単語列: 例: W1, W2, W3, W4, …,Wn time, flies, like, an, arrow – 求めたい品詞列: C1, C2, C3, C4, … , Cn 例: N, V, Prep, Det, N P(C1, C2, C3, C4, … , Cn | W1, W2, W3, W4, …,Wn) という条件付確率が最大になる品詞の並び(が求めたい品 詞の並び) 26 品詞をどうやって決めるか(5) • 考え方 – 入力単語列: 例: W1, W2, W3, W4, …,Wn time, flies, like, an, arrow – 求めたい品詞列: C1, C2, C3, C4, … , Cn 例: N, V, Prep, Det, N P(C1, C2, C3, C4, … , Cn | W1, W2, W3, W4, …,Wn) という条件付確率が最大になる品詞の並び(が求めたい品 単語列が(W1, W2, W3, W4, …,Wn)であるときに 詞の並び) 品詞列が(C1, C2, C3, C4, … , Cn)である確率 (事後確率) 27 品詞をどうやって決めるか(6) 例で考えると... W1, W2, W3, W4, W5 Time flies like an arrow 入力単語列 C1, Noun Noun Noun C2 , C3, C4, C5 Noun Verb Det Noun 可能性の Verb Prep Det Noun ある Noun Adj Det Noun 品詞列 … 「確率的に一番高いものを選ぶ」ということ 28 品詞をどうやって決めるか(7) • 計算の仕方 – 最初の式を P(C1, C2, C3, C4, … , Cn | W1, W2, W3, W4, …,Wn) – ベイズの定理によって変形 P(A|B) = P(A) P(B|A) / P(B) P(C1, C2, C3, C4, … , Cn )×P( W1, W2, W3, W4, …,Wn| C1, C2, C3, C4, … , Cn ) P(W1, W2, W3, W4, …,Wn) 29 品詞をどうやって決めるか(8) • 計算の仕方 – 最初の式を P(C1, C2, C3, C4, … , Cn | W1, W2, W3, W4, …,Wn) – ベイズの定理によって変形 P(A|B) = P(A) P(B|A) / P(B) P(C1, C2, C3, C4, … , Cn )×P( W1, W2, W3, W4, …,Wn| C1, C2, C3, C4, … , Cn ) P(W1, W2, W3, W4, …,Wn) 分母のP(W1..)は品詞(C)と無関係≒結果に影響を与えな いので考えない 30 品詞をどうやって決めるか(9) • 計算の仕方 P(C1, C2, C3, C4, … , Cn ) × P( W1, W2, W3, W4, …,Wn| C1, C2, C3, C4, … , Cn ) を最大にする品詞列だとして計算する 31 品詞をどうやって決めるか(10) • 計算の仕方(実際) – 第1項:P(C1, C2, C3, C4, … , Cn)の部分から • こういう品詞列が出現する確率 を計算するのだが.. • こんな長い品詞列を直接扱うのは困難 (十分なデータがない) →bigram で 近似 32 品詞をどうやって決めるか(11) 第1項:P(C1, C2, C3, C4, … , Cn)の部分 →bigram で 近似 Time flies C1, C2 , like C3, an C4, arrow C5 33 品詞をどうやって決めるか(12) 第1項:P(C1, C2, C3, C4, … , Cn)の部分 →bigram で 近似 Time flies like an arrow P(C1, C2, C3, C4, … , Cn) ~=ΠP(Ci | Ci-1) i=0からnまで C0=φ架空の品詞 で計算 C1, C2 , C3, C4, C5 34 品詞をどうやって決めるか(13) 第2項 P( W1, W2, W3, W4, …,Wn| C1, C2, C3, C4, … , Cn )も近似 P( W1, W2, W3, W4, …,Wn| C1, C2, C3, C4, … , Cn ) ~=Π P(Wi | Ci) i=0からnまで time{N, Adj, V} flies{N, V} like{Adj,Prep,Adv,Conj,N} P(time | N) P(flies|N) P(like|Adj) P(time | Adj) P(flies|V) P(like|Prep) P(time | V) P(like|Adv) P(like|Conj) P(like|N) 35 品詞をどうやって決めるか(14) • 全体として ΠP(Ci | Ci-1) × P(Wi | Ci) とする i=1~n – この計算は,品詞付きのコーパスがあればできる 36 品詞をどうやって決めるか(15) P(Ci | Ci-1) 品詞Ci-1に続いてCiが出る確率 = freq(Ci-1, Ci) / freq(Ci-1) ↑ Ci-1の出現回数 Ci-1, Ciという順番の並びの出現回数 P(N|φ) = f(φ,N) / f(φ) = 392/685 = 0.57 P(N|det) = f(det, N) / f(det) = 1050/1102 = 0.95 ...なんて計算する 37 品詞をどうやって決めるか(16) P(Wi | Ci) ある品詞Ciとして単語Wiが出る確率 = freq(Wi as Ci) / freq(Ci) ↑ 品詞Ciの出現回数 WiがCiとして出現する回数 P(time | N) = f(time as N) / f(N) = 13/ 3481 = 0.0037 P(time | prep) = f(time as Prep) / f(Prep) = 7/1405 = 0.0050 ...なんて計算ができる 38 確率の計算 • あらかじめ計算可能 – Webで – この表から, 英語文の単語と品詞の隠れマルコフモデル (HMM,Hidden Markov Model)が作成される 39 状態遷移図 • HMMの 状態遷移図例 ここまでは 予め 用意可能 40 品詞を決める-実践(1) • 各品詞の並びと,その並び安さを示した確率 を計算した → 状態遷移図も手に入った • いよいよ – Time flies like an arrow の品詞を決める 41 品詞を決める-実践(2) • まず,開始の○にΦを書く Φ 42 品詞を決める-実践(3) • 最初の単語 time の品詞を調べる → 今回の例では N しかない(本来は違うので注意) 0.57 × 0.0037 = 0.0021 Φ 0.57 time/N 0.0037 最初の状態からtime/Nに遷移する確率 0.57 品詞Nがtimeである確率 0.0037 ここまでの出現確率 0.57×0.0037=0.0021 43 品詞を決める-実践(4) • 次の単語 files の品詞を調べる → 今回の例では NとV 0.000000048 0.57 × 0.0037 = 0.0021 Φ 0.57 time/N 0.0037 0.00080 0.38 0.31 0.00065 flies/N 0.0006 flies/V 0.0013 0.00000085 44 品詞を決める-実践(5) • 次の単語 likes の品詞を調べる → 今回の例では NとV とPrep 0.000000048 0.57 × 0.0037 = 0.0021 Φ 0.57 time/N 0.0037 0.00080 0.38 0.31 0.00065 この先に追加!→ flies/N 0.0006 flies/V 0.0013 0.00000085 45 品詞を決める-実践(6) • 最後の単語 arrow まで続ける → 最終的には可能性のある組み合せが全部出る 0.000000048 0.57 × 0.0037 = 0.0021 Φ 0.57 time/N 0.0037 0.00080 0.38 0.31 0.00065 flies/N 0.0006 flies/V 0.0013 0.00000085 46 品詞を決める-実践(7) 47
© Copyright 2024 ExpyDoc