NLP-7

自然言語処理:第7回
1.前回の確認
2.クラスモデルとクラスタリング
レポート
構文解析が難しそうな例文(形態素解析誤りはない
ものとする)をあげその理由を述べよ
注)例文はなるべく短い方が良い
構文解析  単語や句の間の依存関係
(係り受け関係)を解析すること
◎形態素解析の問題と区別ができていること
レポート
パターン1
修飾先(係り先)が二通り考えられる場合
難しい / 講義の / レポート
日本語では、機能語や活用形で係り先を制限
できるため、語順制約が緩い
修飾先の制限を満たすものが
複数ある場合は特定できない
レポート
パターン2
並列句の区切りがわからない
難しい / 講義と / 試験
講義だけが難しいのか、両方難しいのかわからない
レポート
微妙なパターン
ねこと / 飛ぶ / 鳥
品詞体系によって違う
体系1 並列を表す場合「と」は「並列助詞」
動詞に係る場合は「係助詞」
体系2 どちらも「係助詞」
1は形態素解析の問題、2は構文解析
言語モデル
N-gram言語モデル
明日 は どこ へ 遊び に 行こ う か
(は|明日) (へ|どこ)
(どこ|は)
2(3)-gram
直前の(2)単語が与えられた時、次の単語が
確率的に出やすいかどうかを調べる
平滑化とバックオフ
一回も出てこなかった組み合わせの確率は
0でいいのか?
一回も出てこなかった組み合わせにも
なんらかの確率を割り当てる
もちろん、全部の確率の和は1なので、その分を
他から減らす必要がる  ディスカウント
バックオフ
バックオフの手順
(1) P ( X | A) があれば
ディスカウントして使う
(2) P ( X | A) がなければ
P( X ) にバックオフ係数を掛けて使う
バックオフ係数は A ごとに違う値になる
バックオフ後の P(* | A) の和を1にするので
バックオフ以外の平滑化
線形補間
大きいNと小さいNでは長所、短所が逆なので
両者を混ぜればよい
  P( X | A)    P( X )
    1 総和は1なので
3-gramなら
  P( X | B, A)    P( X | A)    P( X )
クラスN-gram
なぜ平滑化が必要か。
学習データが足らない
1万語の辞書の場合、2-gramでも1万×1
万で一億通りの組み合わせ
1-gramなら1万通りなので、これで補う
バックオフ、線形補間
組み合わせの数自体を減らせないか
クラスN-gram
組み合わせの数自体を減らせないか
P(木|大きい) = 0.02
P(木|小さい) = ?
クラスN-gram
組み合わせの数自体を減らせないか
P(木|大きい) = 0.02
P(木|小さい) ≒ 0.02
P(木|大きい or 小さい) ≒ 0.02
P(木|「形容詞」) ≒ 0.02
クラスN-gram
単語の代わりに、その単語の品詞を使う
品詞N-gram
P(木|大きい) ≒ P(木|「形容詞」)
クラスN-gram
P(木|大きい) ≒ P(木|「形容詞」)
前の単語を品詞に置き換える
予測する単語を品詞に置き換えるには
P(は|私) ≒ P(「助詞」|私)
クラスN-gram
P(木|大きい) ≒ P(木|「形容詞」)
前の単語を品詞に置き換える
予測する単語を品詞に置き換えるには
P(は|私) ≒ P(「助詞」|私)
P(「助詞」|私) = P(は|私) + P(が|私) + P(も|私) ...
助詞の中でも「は」でないとだめ
P(は|私) ≒ P(「助詞」|私) × P(は|「助詞」)
クラスN-gram
前の単語を品詞に置き換えると
P(W1 | W2 )  P(W1 | Pos2 )
( Pos2 は W2 の品詞)
予測先の単語を品詞に置き換えると
P(W1 | W2 )  P( Pos1 | W2 ) P(W1 | Pos1 )
( Pos1 は W1 の品詞)
クラスN-gram
両方とも品詞に置き換えると(品詞N-gram)
P(W1 | W2 )  P( Pos1 | Pos2 ) P(W1 | Pos1 )
組み合わせの数は
(単語の数を1万、品詞の数を100として)
P(W1 | W2 ) 1万×1万=1億
P( Pos1 | Pos2 ) P(W1 | Pos1 )
100×100+1万=2万
クラスN-gram
品詞N-gramの問題点
単語固有の情報が失われる
P(木 | 大きい )  P(木「形容詞」
|
)
P(木 | 大きい )  P(木 | 早い)
品詞は文法に基づく
単語のつながりやすさは意味にも強く依存
クラスN-gram
品詞N-gramの問題点
文法的なものを全て表すわけではない
例:「a」、「an」
品詞はどちらも冠詞だが、
後ろの単語は全く違う
クラスN-gram
品詞N-gramでは、複数の単語を品詞で代表させる
品詞は複数の単語の集まり  クラス
品詞はクラスN-gramのクラスとして
最適とは限らない
どんなクラスが良いのか
良い言語モデルとは?
パープレキシティ
良い言語モデルとは?
言語モデルの働き  次の単語を予測する
予測がよく当たるモデルが良いモデル
パープレキシティ
予測がよく当たるモデルが良いモデル
次に現れる単語の種類が限定できれば、
できる程当たりやすい。
選択肢が少ない程よい
パープレキシティ
選択肢が少ない程よい
4択問題と8択問題ではどちらが当たり
やすいか
選択肢の数がパープレキシティ
パープレキシティ
a) 4択問題と8択問題が、各1問
b) 6択問題が2問
どちらが全問正解しやすいか
パープレキシティ
a) 4択問題と8択問題が、各1問
b) 6択問題が2問
どちらが全問正解しやすいか
パープレキシティ
a) 4択問題と8択問題が、各1問
b) 6択問題が2問
情報量で考えてみる
4択問題
6択問題
8択問題
2ビット
約2.58ビット
3ビット
パープレキシティ
a) 4択問題と8択問題が、各1問
平均2.5ビット
b) 6択問題が2問
平均約2.58ビット
a) のパープレキシティは2の2.5乗≒5.66
b) のパープレキシティは6
パープレキシティ
N-gram言語モデルのパープレキシティ
明日 は どこ へ 遊び に 行こ う か
P(は | 明日)  0.25
「は」が正しく予測できる可能性は1/4
平均して4単語予測すれば、その中に入っている
分岐数4と同じ
パープレキシティ
N-gram言語モデルのパープレキシティ
P(は | 明日)  0.25
分岐数4
分岐数  1 / P
全ての文の全ての単語の平均をとる
1 / P は小さい方が、すなわち P は、
大きい方がよいが
全て単語に対して、大きくすることはできない
パープレキシティ
N-gram言語モデルのパープレキシティ
全て単語に対して、大きくすることはできない
確率なので、全ての単語の P の和は1
良く出てくる組み合わせには高い値を
それぞれのモデルに対しては
最尤推定値が学習文に対するパープレキシティを最小化
パープレキシティ
最尤推定値の学習文に対するパープレキシティは
3-gram < 2-gram < 1-gram
2-gram < クラス2-gram
学習文以外に対するパープレキシティは
学習文の量が少ないと逆転する
パープレキシティ
学習文以外に対するパープレキシティは
学習文の量が少ないと逆転する
1万単語の場合
3-gram  1000,000,000,000
2-gram  100,000,000
1-gram  10,000
1つの組み合わせあたりのデータが減る
クラスN-gram
クラスN-gramのクラスとして
どんなクラスが良いのか
良い言語モデルとは?
①学習文に対するパープレキシティが低い
②組合せ数が少ない
クラスN-gram
最尤推定値の学習文に対するパープレキシティは
2-gram < クラス2-gram
なので、
クラスの数(組み合わせの数)を固定したとき
なるべくパープレキシティが小さくなる組み合
わせを見つける
クラスN-gram
なるべくパープレキシティが小さくなる組み合
わせを見つける
全部の組み合わせを試すことはできないので
近似を行う
クラスを作る操作  クラスタリング
クラスN-gram
クラスタリング方法の例
(1)全ての単語をランダムにクラスに割り振る
①
⑥
⑦
④
⑤
⑧
⑩
③
② ⑨
クラスN-gram
クラスタリング方法の例
(2)クラスN-gramを学習してパープレキシティ
を計算する。
①
⑥
⑦
④
⑤
⑧
⑩
③
② ⑨
クラスN-gram
クラスタリング方法の例
(3)1番目の単語をそれぞれ別のクラスに移動さ
せた時のパープレキシティを計算する
①
⑥
⑦
④
⑤
⑧
⑩
③
② ⑨
クラスN-gram
クラスタリング方法の例
(3)1番目の単語をパープレキシティが一番引くな
るクラスに移動させる
⑥
⑦
④
⑤
⑧
⑩
③
② ⑨
①
クラスN-gram
クラスタリング方法の例
(3)2番目以降の単語も順に同じように移動させ
る
⑥
⑦
④
⑤
⑧
⑩
③
②
①
⑨
クラスN-gram
クラスタリング方法の例
(4)全ての単語を移動させ終わったら、1番目の
単語からもう一度やりなおす
⑥
⑦
④
⑤
⑧
⑩
③
① ②
⑨
クラスN-gram
クラスタリング方法の例
(5)単語が移動いなくなったら終わり
⑩
⑥
⑦
④
⑤
③
①
②
⑧ ⑨
クラスN-gram
自動クラスタリングの問題点
極端に出現頻度の低い単語はうまくクラスタリング
できない
品詞N-gramの場合は品詞さえわかればクラスタ
リングできる
品詞と自動クラスタリングの組み合わせもあり得る
クラスN-gram
統計モデルにとって
学習データの量の不足(データスパースネス)
人間の知識(品詞)をどうやって取り込むか
質問&スライド
[email protected]
http://www.info.kindai.ac.jp/NLP