ことばとコンピュータ

ことばとコンピュータ
2007年度1学期
第4回
本日の内容
• 前回のおさらい
– 文を単語に区切って品詞を決める
• 英語編
• 文がどんな構造をしているか決める
– なぜ決める必要があるか?
• 黒い目の大きな女の子
• I eat the apples in the garden
– 必要なもの
2
おさらい-文を単語に区切って品詞を決める(1)• 英語の品詞タグ付け:
– 入力単語の列に対して尤もらしい品詞列を与え
る問題と考える
• 尤もらしさの尺度
– 各語について,複数の品詞がありうる場合,どの
品詞が尤もらしいか
– 品詞の並びによる優先度
• 例:「The」 の後に来る語が動詞にも名詞にもなりうる
語である場合 → 名詞が優先される
3
おさらい-文を単語に区切って品詞を決める(2)既に品詞付けをしてあるコーパスを元
• 品詞タグ付け:
にして,この尤もらしさを自動的に計算
– 入力単語の列に対して尤もらしい品詞列を与え
る問題と考える
確率的モデルを利用
• 尤もらしさの尺度 したPOS tagging
– 各語について,複数の品詞がありうる場合,どの
品詞が尤もらしいか
– 品詞の並びによる優先度
• 例:「The」 の後に来る語が動詞にも名詞にもなりうる
語である場合 → 名詞が優先される
4
おさらい-文を単語に区切って品詞を決める(3)例で考えると...
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 品詞列
…
「確率的に一番高いものを選ぶ」ということ
5
おさらい-文を単語に区切って品詞を決める(4)• 確率計算の実際
ΠP(Ci | Ci-1) × P(Wi | Ci) で計算する
i=1~n
– この計算は,品詞付きのコーパスがあればできる
6
おさらい-文を単語に区切って品詞を決める(5)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
...なんて計算する
7
おさらい-文を単語に区切って品詞を決める(6)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
...なんて計算ができる
8
おさらい-文を単語に区切って品詞を決める(7)• ΠP(Ci | Ci-1) × P(Wi | Ci) は,
あらかじめ計算可能
– Webで説明した.
– この表から,
英語文の単語と品詞の隠れマルコフモデル
(HMM,Hidden Markov Model)が作成される
9
状態遷移図
• HMMの
状態遷移図例
ここまでは
予め
用意可能
10
おさらい-文を単語に区切って品詞を決める(9)• 最後の単語 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
11
おさらい-文を単語に区切って品詞を決める(10)-
12
文がどんな構造をしているか決める
• なぜそんなことを考える必要があるのか?
– 次の例文を考えてみる
13
文がどんな構造をしているか決める
• なぜそんなことを考える必要があるのか?
– 次の例文を考えてみる
• 黒い瞳の大きな女の子
14
文の構造の曖昧性(1)
• 黒い瞳の大きな女の子
(((黒い瞳)の)
(大きな女の子))
15
文の構造の曖昧性(2)
• 黒い瞳の大きな女の子
(黒い
(((瞳の)大きな)
女の子))
16
文の構造の曖昧性(3)
• 黒い瞳の大きな女の子
((((黒い瞳)の)大きな)
女の子)
17
文の構造の曖昧性(3)
• 黒い瞳の大きな女の子
曖昧!
18
文の構造の曖昧性(4)
• 黒い瞳の大きな女の子
(黒い
(瞳の)
((大きな)(女の子)))
19
文の構造の曖昧性(5)
• 黒い瞳の大きな女の子
これは変!
(黒い
(瞳の)
((大きな)(女の子)))
20
文の構造の曖昧性(6)
• 黒い瞳の大きな女の子
これは変!
(黒い
(瞳の)
((大きな)(女の子)))
曖昧性はあるものの,少なくとも,文の構造を考
えると,おかしなもの(解釈)は排除できる
21
文がどんな構造をしているか決める
• なぜそんなことを考える必要があるのか?
– もう1つの例文を考えてみる
• I ate the apples in the garden.
22
文の構造の曖昧性2(1)
I
ate the apples in the garden.
Noun Verb Det Noun
Prep Det
Noun
23
文の構造の曖昧性2(2)
I
ate the apples in the garden.
Noun Verb Det Noun
Prep Det
Noun
品詞が同じでも...
24
文の構造の曖昧性2(3)
I
ate the apples in the garden.
Noun Verb Det Noun
Prep Det
Noun
25
文の構造の曖昧性2(4)
I
ate the apples in the garden.
Noun Verb Det Noun
Prep Det
Noun
私は庭でりんごを食べた
26
文の構造の曖昧性2(5)
S
NP
VP
VP
PP
NP
N
I
V
ate
NP
Det N
Prep Det
the apples in the
N
garden .
私は庭でりんごを食べた
27
文の構造の曖昧性2(6)
I
ate the apples in the garden.
Noun Verb Det Noun
Prep Det
Noun
28
文の構造の曖昧性2(7)
I
ate the apples in the garden.
Noun Verb Det Noun
Prep Det
Noun
私は庭のりんごを食べた
29
文の構造の曖昧性2(8)
S
NP
VP
NP
VP
PP
NP
N
I
V
ate
NP
Det N
Prep Det
the apples in the
N
garden .
私は庭のりんごを食べた
30
文がどんな構造をしているか決める
• どんな構造があるかを見つける必要がある
– 曖昧なので,複数あることが多い
– 候補の中でありえないものは排除したい
→文として「あり」か,「なし」か
を見極める作業ともいえる
31
どうやって文の構造を決めるか?
• ある文字列が文か文でないか?
– どうやって決める?
– 確実なのは母語話者の直感!
• 母語話者でも判定が難しいこともあるけど...
「まじありえなくなくない?」
どちらにせよ.毎回母語話者が必要だとしたら
不便だし, コンピュータでの処理は無理...
• それを克服するには,文法が必要
32
文法(1)
• 要素G = < VT, VN,
P, σ>
– VT :終端記号
– VN :非終端記号
– P :生成規則の集合
– σ :初期記号 σ∈ VN
というような記号を使って表現
33
文法(2)
• 文脈自由文法(CFG:
Context Free Grammar)
– 左辺にひとつの終端記号を置き,それが他の
カテゴリー(列)にどのように置き換わるかを右辺
に記述
X → YZ
という形
例:
S → NP VP
(文 → 名詞句 動詞句)
34
文法(3)
• 文脈自由文法(CFG: Context Free Grammar)
G = < VT, VX,VC,PD,PP,σ>
– VT :終端記号
– VX :非終端記号
– VC :前終端記号 ←終端記号の1つ前の状態
– PD :辞書規則の集合
– PP :句構造規則の集合
– σ :初期記号 σ∈ VN
というような記号を使って表現
35
文法(4)
• 文脈自由文法の例
– PP :句構造規則の集合
(1)S→NP VP (4)NP→DET N (7)VP→VP NP
(2)NP→N
(5)VP→V
(8)VP→VP PP
(3)NP→NP PP (6)VP→V NP
(9)PP→Prep NP
– PD :辞書規則の集合
N→ I, apples, garden
V→ ate
Det → the
Prep→ in
36
文の構造を決める
• 今回は手順はあまり気にせず作業
S
↑
ボトムアップ
I ate
the
apples
in
the garden.
37
文の構造を決める(2)
• 今回は手順はあまり気にせず作業
PD :辞書規則を調べて,品詞を対応させる
N V
I ate
Det N
the
apples
Prep Det
in
the
N
garden.
38
文の構造を決める(3)
• 今回は手順はあまり気にせず作業
PP :句構造規則を調べて,句をつくる
N V
I ate
Det N
the
apples
Prep Det
in
the
N
garden.
39
文の構造を決める(4)
• 今回は手順はあまり気にせず作業
PP :句構造規則を調べて,句をつくる
(2) NP → N という規則がある!
N V
I ate
Det N
the
apples
Prep Det
in
the
N
garden.
40
文の構造を決める(5)
• 今回は手順はあまり気にせず作業
PP :句構造規則を調べて,句をつくる
NP
(2) NP → N という規則がある!
N V
I ate
Det N
the
apples
Prep Det
in
the
N
garden.
41
文の構造を決める(6)
• 今回は手順はあまり気にせず作業
PP :句構造規則を調べて,句をつくる
NP
(4)NP → Det N がある
N V
I ate
Det N
the
apples
Prep Det
in
the
N
garden.
42
文の構造を決める(7)
• 今回は手順はあまり気にせず作業
PP :句構造規則を調べて,句をつくる
NP
NP
(4)NP → Det N がある
N V
I ate
Det N
the
apples
Prep Det
in
the
N
garden.
43
文の構造を決める(8)
• 今回は手順はあまり気にせず作業
PP :句構造規則を調べて,句をつくる
NP
NP
以降も最後まで
続ける!
N V
I ate
Det N
the
apples
Prep Det
in
the
N
garden.
44
文の構造を決める2(1)
• 今回は手順はあまり気にせず作業
S
トップダウン
↓
I ate
the
apples
in
the garden.
45
文の構造を決める2(2)
S
NP
I ate
the
apples
VP
in
the garden.
46
文の構造を決める2(3)
S
NP
I
I ate
the
apples
VP
VP
in
the garden.
47
文の構造を決める2(4)
S
NP
I
I
I ate
the
VP
VP
V
apples
in
the garden.
48
文の構造を決める2(5)
S
NP
I
I ate
I
V
I
ate
the
apples
VP
VP
in
the garden.
49
文の構造を決める2(6)
S
NP
I
I ate
I
V
I
ate
the
apples
VP
VP
in
the garden.
50
文の構造を決める2(7)
S
NP
I
I ate
I
V
I
ate
the
VP
VP
I
V
NP
apples
in
the garden.
51
文の構造を決める2(8)
S
NP
I
I ate
VP
VP
I
V
I
I
ate
I ate NP
the
apples
V
in
NP
the garden.
52
文の構造を決める2(9)
S
NP
I
I ate
VP
VP
I
V
I
I
ate
I ate NP
the
apples
V
in
NP
最後まで
続ける
the garden.
53