NLP-3

自然言語処理:第3回
1.前回の確認
2.構文解析
3.格文法
1.前回の確認
形態素とは
形態素の定義
意味や機能に対応した文字の並び
意味に対応:内容語(自立語)
名詞、副詞、形容詞、動詞など
機能に対応:機能語(付属語)
助詞、助動詞、接頭辞など
1.前回の確認
形態素解析
与えられた文を形態素に分解し
品詞、活用形、読み等を付与する
音声認識
仮名漢字変換
形態素解析
音声 形態素列
仮名 形態素列
文字列 形態素列
一番簡単だが、最も高い精度を要求される
全ての自然言語処理の基本
1.前回の確認
文節とは?
一つの内容語とそれに関係している機能語
の集まり
今日の実験は大失敗だ。
今日/の/実験/は/大/失敗/だ/ 。 /
今日/の/実験/は/大/失敗/だ/ 。 /
内容語を一つだけ含むので、意味の単位
1.前回の確認
各形態素が他のどの形態素と関係をもっているか?
文の構造を調べる
内容語と機能語の関係は簡単  文節
内容語と内容語の関係は  係り受け解析
1.前回の確認
日本語の係り受け解析
各文節がどの文節を修飾しているか
テーブルのコップを持つ
係り受けルール① (どの言語でも共通)
係り受けを示す矢印は交差しない
係り受けルール② (日本語固有)
係り受けを示す矢印は常に前から後ろ
1.前回の確認
係り受け解析の例題
今年も春がやって来た。
今日のご飯はおいしかった。
1.前回の確認
係り受け解析の例題
形態素分割
今年 / も / 春 / が / やって来 / た / 。 /
やって来る  一語
今日 / の / ご飯 / は / おいしかっ / た / 。 /
ご飯  一語
1.前回の確認
係り受け解析の例題
文節分割
今年も / 春が / やって来た。 /
今日の / ご飯は / おいしかった。 /
1.前回の確認
係り受け解析の例題
係り受け
今年も / 春が / やって来た。 /
今日の / ご飯は / おいしかった。 /
2.構文解析
構文解析とは
文(形態素列)を木構造に展開する
ただし、日本語では前出の係り受け解析を
代わりに用いることが多い。
より、複雑な解析は後述の格文法を用いる
2.構文解析
英語の構文解析
a
dog
chases
a
cat
先にdogとcatをまとめる
ことはできない
a
dog
chases a
cat
2.構文解析
文法(CFG)と構文木
限定詞(D) = a
文法
名詞(N) = dog
名詞句(NP) = D+N
文法=部分木
NP
D
a
N
dog
V
D
chases a
N
cat
左が親、右が子
終端記号
2.構文解析
限定詞(D) = a
文法(CFG)と構文木
名詞(N) = dog
名詞(N) = cat
S
名詞句(NP) = D+N
動詞(V) = chases
VP
NP
D
a
N
dog
V
NP
D N
chases a
cat
動詞句(VP) = V+NP
文(S) = NP+VP
2.構文解析
文法(CFG)と構文木
限定詞(D) = a
名詞(N) = dog
名詞(N) = cat
S
名詞句(NP) = D+N
VP
NP
D
a
N
dog
余る
V
chases a
動詞(V) = chases
動詞句(VP) = V+NP
文(S) = NP+VP
cat 動詞句(VP) = V
2.構文解析
構文解析
逐次、文法を適用していき、一つの木が
生成できれば成功
ただし、複数の成功例が出るかもしれない
ねこ と 飛ぶ 鳥
ねこ と 飛ぶ 鳥
2.構文解析
「ねこ と 飛ぶ 鳥 だ」 の構文解析
名詞=「ねこ」
動詞句=動詞
並列助詞=「と」 形容詞句=動詞
係助詞=「と」
形容詞句=名詞句+動詞句
名詞=「鳥」
名詞句=形容詞句+名詞句
動詞=「飛ぶ」
名詞句=名詞句+並列助詞+名詞句
名詞句=名詞
名詞句=名詞句+係助詞
文=名詞句+「だ」
1.前回の確認
「ねこ と 飛ぶ 鳥 だ」 の構文解析
名詞=「ねこ」
動詞句=動詞
並列助詞=「と」 形容詞句=動詞
係助詞=「と」
形容詞句=名詞句+動詞句
名詞=「鳥」
名詞句=形容詞句+名詞句
動詞=「飛ぶ」
名詞句=名詞句+並列助詞+名詞句
名詞句=名詞
名詞句=名詞句+係助詞
文=名詞句+「だ」
1.前回の確認
「ねこ と 飛ぶ 鳥 だ」 の構文解析
名詞=「ねこ」
動詞句=動詞
並列助詞=「と」 形容詞句=動詞
係助詞=「と」
形容詞句=名詞句+動詞句
名詞=「鳥」
名詞句=形容詞句+名詞句
動詞=「飛ぶ」
名詞句=名詞句+並列助詞+名詞句
名詞句=名詞
名詞句=名詞句+係助詞
文=名詞句+「だ」
3.格文法
格文法の目的
○
×
×
○
×
私は京都へ行く
私は京都へ食べる
私はりんごへ行く
私はりんごを食べる
私は京都を行く
文の構造は同じなのに、なぜ○と×になるのか?
動詞と名詞(句)の関係がおかしい
3.格文法
格  動詞(句)に対する文法的、意味的な
役割を表す
○
○
私は京都へ行く
私はりんごを食べる
私  「行く」、「食べる」という動作の主体(動作主)
京都  「行く」という動作の目標
りんご  「食べる」という動作の対象
3.格文法
○
×
×
私は京都へ行く
私は京都を行く
私はりんごへ行く
京都  「行く」という動作の目標
「行く」は動作の目標が必要
「京都」は動作の目標になる
「りんご」は動作の対象になる
名詞+「へ」は動作の目標
名詞+「を」は動作の対象
3.格文法
○
×
×
私は京都へ行く
私は京都を行く
私はりんごへ行く
京都  「行く」という動作の目標
「行く」は動作の目標が必要
「京都」は動作の目標になる
「りんご」は動作の対象になる
名詞+「へ」は動作の目標
名詞+「を」は動作の対象
3.格文法
○
×
×
私は京都へ行く
私は京都を行く
私はりんごへ行く
京都  「行く」という動作の目標
「行く」は動作の目標が必要
「京都」は動作の目標になる
「りんご」は動作の対象になる
名詞+「へ」は動作の目標
名詞+「を」は動作の対象 ×
3.格文法
○
×
×
私は京都へ行く
私は京都を行く
私はりんごへ行く
京都  「行く」という動作の目標
「行く」は動作の目標が必要
「京都」は動作の目標になる
「りんご」は動作の対象になる
名詞+「へ」は動作の目標
名詞+「を」は動作の対象
×
3.格文法
格フレーム
フレーム
私は京都へ行く
フレーム名
スロット名1
スロット値1
スロット名2
スロット値2
スロット名3
スロット値3
行く
格フレーム
動作主体
?
時制
?
京都
現在
3.格文法
格フレーム
フレーム
私は京都へ行く
フレーム名
スロット名1
スロット値1
スロット名2
スロット値2
スロット名3
スロット値3
行く
格フレーム
動作主体
目標
時制
私
京都
現在
質問&レポート
[email protected]
http://www.info.kindai.ac.jp/NLP