Spectral Learning を用いた 語義曖昧性解消

Download Report

Transcript Spectral Learning を用いた 語義曖昧性解消

Spectral Learning を用いた
語義曖昧性解消
DMLA 談話会 2009-01-21
小町守
やりたいこと
• ラベル付きデータが少ない状況での語義曖
昧性解消(半教師あり語義曖昧性解消)
– The more data the better, though…
– 取り得るラベル(語義)は全て分かっている設定
• ラベルなしデータを用いたパターン(素性)・イ
ンスタンスの適切な重み付け
– ラベル見るのもアリ
2
本日の内容
• これまでのおさらい
• 半教師ありクラスタリングについて
• 制約付きスペクトラル学習による語義曖昧性
解消実験
3
背景:kNNによる語義曖昧性解消
シード
シード = 語義を当てたいインスタンス
距離 = 正則化ラプラシアンカーネル
学習 = k-nearest neighbor (k=3)
→△分離平面がきれいにならない
→△SVM に負けている
4
前回までに試したこと
• 半教師あり学習の設定でWSD
– SVM に(訓練データが少なくても)勝てない
– →距離だけ学習して最後は SVM に任せたい
• pLSI を使ってインスタンス-パターンをクラスタ
リングし、隣接グラフの重みに使う
– ラベルを見ていいならクラスタリングにラベルを
使ったほうがいい
– というわけで pLSI 使うの止めました
– →半教師ありクラスタリング
5
半教師ありクラスタリング
• ラベルを2項間の制約として入れる(Wagstaff
and Cardie 2000)
– Must-link 2つのインスタンスが同じラベル
– Cannot-link 2つのインスタンスは違うラベル
6
K-means +半教師ありクラスタリング
• 制約ベース: インスタンスが制約を満たすようク
ラスタリング
– COP-kmeans (Wagstaff et al. ICML-2001)
• 距離ベース: 制約を考慮してインスタンス間の距
離を再計算
– CCL (Klein et al. 2002)
– Must-link を持つインスタンス同士の距離を0、
cannot-linkを∞とし、Must-link に関係する距離を修
正→最後はcomplete-linkでクラスタリング
→△使えるクラスタリングに条件があるという問題
7
スペクトラルクラスタリング
• クラスタ間の類似度が最小(クラスタ内の類
似度が最大)になるようなグラフカット
8
固有ベクトルとラプラシアンの関係
• グラフラプラシアン L = D – A (Dは対角行列、
ただし
) の2番目に小さい固有ベクトル
D  A
がそうしたグラフカットの近似になっている
• 2番目に小さい固有ベクトルを用いてデータを

2つに分割できる(Shi and Malik CVPR-1997)
• K個の固有ベクトルを使って複数クラスタに分
割できる(Ng et al. NIPS-2002; Meila and Shi
AISTAT-2001)
→○Kクラスの分類問題に利用できる
n
ii
ij
j1
9
スペクトラル学習のアルゴリズム
1. 類似度行列 A を作る
Cos 類似度、ユークリッド距離、etc…
n
2. 対角行列 D を作る D   A
3. A を正規化する(=N)
ii
ij
j1
D-1A, D-1/2AD-1/2, (A + dmaxI – D) / dmax (dmax = A の行和の最大値)

4. N のk個の最大固有ベクトルを計算し、列に順
番に並べて行列 X を作る
5. X の各行を正規化する
→ここから先がクラスタリングと分類で違う
10
スペクトラルクラスタリング
6. 各インスタンスをXの各行にマップし k 個のク
ラスタに分割(K-means などを使う)
7. インスタンスのラベルはマップされた X の行
に相当するラベル
11
スペクトラル分類
6. 各インスタンスをXの各行にマップ
7. 各行を訓練事例として教師あり学習(SVM
や kNN など)
8. インスタンスのラベルはマップされた X の行
に相当するラベル
12
クラスタリング? 分類?
• WSD の設定で全部ラベルは分かっている
→分類で解くのが自然?
13
制約つきスペクトラルクラスタリング1
• 類似度行列に制約を入れる(Kamvar et al.
IJCAI-2003)
– Must-link のあるところは Aij = Aji = 1
– Cannot-link のあるところは Aij = Aji = 0
– 残りは普通にスペクトラルクラスタリング
→○多クラスでも扱える
→△(数学的に)きれいではない
→△?(制限)類似度尺度は0-1の範囲のみ
14
制約つきスペクトラルクラスタリング2
• Subspace trick(De Bie et al. SSPR-2004)
– 制約を書いた行列を用いることによって固有ベク
トルの探索空間を変化させる(DMLA 12月17日)
→○(数学的に)きれい
→△(2クラスの場合はよいが)多クラスの場合
Cannot-link の書き方が自明ではない
1

1
1
v  
0
0
0

0 0 

0 0 
0 0 
u  Yu
1 0 
1 0 
0 In5

2
7
1
5
4
6
3
15
スペクトラル学習によるWSD
• Must-link、Cannot-link はラベル付きデータか
ら生成できる
– 同じ語義なら Must-link、違う語義なら Cannot-link、
語義が分からないときは制約なし
• 複数ラベルを考慮したモデルがよい
– Kamvar et al. の方法を試した
→2クラスに限定すれば subspace trick も使える
が……
16
制約つきスペクトラル学習
1. 類似度行列 A を作る
2. 対角行列 D を作る
3. 制約を満たすよう A を修正する
1. Must-link のあるところは Aij = Aji = 1
2. Cannot-link のあるところは Aij = Aji = 0
4. A を正規化する(=N)
5. N のk個の最大固有ベクトルを計算し、列に順
番に並べて行列 X を作る
→以下同様
17
(予想)
• スペクトラル学習はラベル付きデータが少な
いときに有効
→SVM や kNN と比べてラベル付きデータが少
ないところで勝ちたい
• いくつか分岐点がある
– 類似度尺度、クラスタリング(どのクラスタリング
手法) or 分類(どの分類器)、正規化方法、制約
の入れ方
→どれがよい?
18
実験設定
• データ: Senseval-3 English Lexical Sample
– 57単語、1語につき100-200文章の訓練データ
– 語義の数は平均して6.47個
– 10%, 25%, 50%, 75%, 100% で実験
• 手法(スペクトラル学習)
– 類似度行列 A = PPT (ただしPは各行で正規化)
– A の正規化 なし
– K = 50 (てきとう)
– 分類器 libsvm-2.84.0 (線形カーネル)
19
SVM, kNN(k=5) との比較
75
70
65
60
SVM
精度
スペクトラル学習
kNN(名詞のみ)
55
最頻出語義
50
45
40
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
データ量(利用できる訓練データに対する割合)
100%
20
考察
• ×最頻出語義ベースライン以下
• 結果を分析したところ、(全てではないが)ほ
とんど最頻出語義を選択してしまっている
→類似度に正則化ラプラシアンカーネルを使う
べき?
• Kの数は大きすぎると過学習するが、小さす
ぎると全く判別できない
21
まとめ
• 制約付きスペクトラル学習を用いて語義曖昧
性解消ができる。
• ただし、類似度行列、正規化方法、分類器、
制約の入れ方など、設定するべきパラメータ
が多い。
• 特に類似度行列の選び方が意味ドリフトを防
ぐために重要(みたい)。
22
来週までに……
• 類似度行列を変えてみる
• (2クラス問題に限定して)subspace trick を
使ってみる
– 人工的な合成語を作れば無限にラベルつきデー
タを生成できる
• (多クラス問題で Must-link のみに限定して)
subspace trick を使ってみる
• スペクトラルクラスタリングも試してみる
23
コメント・アドバイスありましたら
• どうぞよろしくお願いします。
24