Word Sense Induc-on & Disambigua-on Using Hierarchical Random Graphs Ioannis Klapa=is & Suresh Manandhar EMNLP 2010 発表者 : M2 松田
Word Sense Induc-on & Disambigua-on Using
Hierarchical Random Graphs Ioannis Klapa=is & Suresh Manandhar
EMNLP 2010
発表者 : M2 松田
Abstract
• Unsupervised WSD – Known as Word Sense Induc-on(WSI) – クラスタリングに基づくWSD
• 本研究ではグラフをベースにしている – 多くのWSIではグラフのノードをフラットにクラスタリングする
– 対して、本研究ではグラフに存在している階層構造を用いることで性能を上げようと試みている
語義の階層構造とグラフ
• 多義語 paper の共起グラフの例 – 密にリンクしている部分とそうでない部分がある
– フラットなクラスタリングだと落としてしまう情報がある
階層構造の推測
A
D
C
B
A B C D
D0 D1
D2
Observed Graph Inferred Hierarchy
類似度に基づくグラフを元にして、階層関係を表したグラフを作成
研究の目的
• Infer the hierarchical structure (binary tree) of a graph made by the contexts of a polysemous word. – 多義語のコンテキストから作成されたグラフから、階層構造(二分木)を推定する
• Apply the inferred binary tree to WSD & compare with flat clustering. – 推定された二分木をWSDに適用し、フラットなクラスタリングとの比較を行う
提案手法の概要
対象語のコンテキストから 共起関係に基づくグラフ (G) を作る G : 無向、unweighted
グラフ(G)から、 階層構造を表した二分木(H)の構造を推定 (Hierarchical Random Graph)
Gold-‐Standardデータから、それぞれのノードに対して語義の確率を振る
木の親方向に足しあわせてargmax
Step.1 Step.2 Step.3 Step.4
GRAPH CREATION Step. 1
Graph Crea-on (1/3)
• 対象語を含んだコンテキスト(パラグラフ)からキーワードを抽出 – 対照コーパス(BNC)と出現確率を比較して、Log-‐Likelihood ra-oが一定以上の名詞 • 足切りパラメータ p1
– Balancedなコンテキストに比べて、対象語と共起しやすい(独立でないと)名詞を抽出している
• 以下、コンテキスト=抽出された名詞の集合で表す
Graph Crea-on (2/3) • グラフのノード – 対象語を含むそれぞれのコンテキスト
• グラフのエッジ – コンテキスト同士の類似度を測り、一定値以上の場合、その間にエッジを張る • 足切りパラメータ p3
!
W (A,B) =simcl (A,B) + simwd (A,B)
2 ・・・式(1)
こんな感じの無向グラフ (G) が 出来上がる
Graph Crea-on (3/3)
• simcl : コロケーションに基づく類似度 – コロケーションの抽出にも Log-‐Likelihood ra-oを使用
– 足切りパラメータ p2 • simwd: Bag-‐of-‐Wordsに基づく類似度 • いずれも Jaccard 係数を用いて類似度を計算
!
W (A,B) =simcl (A,B) + simwd (A,B)
2
INFERRING GRAPH HIERARCHY Step.2
Hierarchical Random Graphs
• Model :n 個の葉ノードと n-‐1 個の内部ノードからなる二分木
• 内部ノードの集合を D とおく –
• もとのグラフ G において、 Dk に対応するエッジが存在する確率を θk とおく
• Dのトポロジカルな構造と各内部ノードに関連づく確率変数のベクトルをセットにして、 – HRG : と定義
D = {D1,D2,...Dn!1}
H (D,!! )
分かりにくいので 後で
HRG (例)
HRG H
もとのグラフ G
HRG parameteriza-on
• 目標:もとのグラフ G と統計的に類似したHRGになるようなパラメータ と を選ぶ – は Dのトポロジーさえ決まれば MLE で簡単に求まる.
– はsuper-‐exponen-alに組み合わせが大きくなるので、 MCMC で求める.
!
D!!
!!
!
D
左右どちらの二分木が、 元のグラフの性質を反映している?
HRG parameteriza-on ( )
• をHRGの内部ノードとする • , をそれぞれ、 の左、右の subtree に存在する葉ノードの個数とする
• を の subtree 同士を結ぶエッジのうち、もとのグラフ G に存在するものの数とする
• すると、 の最尤推定値は
!
Dk
!
f (Dk )
!
Dk!
l(Dk )
!
Dk
!k =f (Dk )
l(Dk )r(Dk )
!
r(Dk )
!k
直感的に言うと・・・・ 左の葉と右の葉を結ぶすべてのパスのうち、 G に実際存在するものの割合
!!
HRG parameteriza-on ( ) !!
• Example for node D2: – f(D2) = 2, there are 2 edges, AB & CD – l(D2) =2, there are 2 ver-ces on the le= subtree. – r(D2) = 2, the are 2 ver8ces on the right subtree. – Hence the probability is 2/4 = 0.5
HRG parameteriza-on ( )
!
D
• 尤度関数 (Clauset et al., 2008) :
• L (A) = 0.105 • L (B) = 0.062
L(D,!! ) = !k
f (Dk )
Dk!D" (1#!k )
l (Dk )r(Dk )# f (Dk )
尤度関数について (1/2)
logL(D,!! ) = ! h(!k )l(Dk )r(Dk )
Dk"D#
h(!k ) = !!k log! k ! (1!!k )log(1!!k )
L(D,!! ) = !k
f (Dk )
Dk!D" (1#!k )
l (Dk )r(Dk )# f (Dk )
とおいて対数をとると、
対数尤度関数が導かれる。これを最大化するパラメータを見つけるのが目標 (対数をとるのは主にアンダーフローを防ぐため)
尤度関数について (2/2)
logL(D,!! ) = ! h(!k )l(Dk )r(Dk )
Dk"D#
θはDのトポロジ(およびG)が決まれば一意に決まるので、 対数尤度を最大化するような D を求める問題に落ちる
それぞれ、左(右)の葉の数 (木のルートに近いノードほど大きな値)
-‐h(θ)は右図のようにθが 0か1に近いときに最大値をとる
θが0か1に近いノードが多い場合に対数尤度が大きくなる もとのグラフGにおけるリンクがとても多いかとても少なくなるようDを選ぶ
曖昧性の低いノードほど高い値
MCMC Sampling
• 先ほど述べたように、θは簡単に求まる • しかし、尤度が最大になるようなDは、二分木のすべての構造を列挙しなければ求まらない
• そこで、木の構造をすこしづつ変化させ、尤度の変化を見ながら最適な構造を見つける
Markov Chain Monte Carlo(MCMC)法を用いる
具体的なサンプリング法
S Given a current dendrogram
S ノード をランダムに選択する (Figure (A)).
S 子Subtreeのどちらかを兄弟Subtreeと入れ替える (Figures (B),(C))
S Metropolis-‐Has-ngs ruleに基づいて採択を判定する
S 尤度が上がるなら採択、下がる場合でも の確率で採択
!
Dcurr
!
Dk
L(Dnext )L(Dcurr )
(おおよそ O(n2) くらいのステップ数で収束するらしい)
SENSE MAPPING Step.3
Sense Mapping
• 推定されたHRGを実際にWSDに用いるには、「語義」と対応付ける必要がある – 内部ノードDiが語義skに関連づく確率をタグ付きコーパスから学習
P(sk |Di ) =| F(Di )! "F (sk ) |
| F(Di ) |
F(Di) : Diの下にある葉(コンテキスト)の集合 F’(sk) : コーパスの中で語義skとタグ付けされているコンテキストの集合
タグ付きコーパスとの語彙のオーバーラップをはかって、 それぞれの内部ノードに対して語義の確率をマッピングしている
タグ付きコーパスとしてはSemeval 2007 English lexical sampleデータを使用
SENSE TAGGING Step.4
Sense Tagging
• Let be an untagged instance. • This will be leaf in the dendrogram. • Example: context C in Figure (A). • set of parents for context • Score assigned to sense
!
c j
!
H(c j )
!
c j
!
sk
!
w(sk, c j) = p(sk |Di) " # iDi $H (c j )%
例: w(s1,C) = (0*1+ (2/3)*0.25) = 0.16 w(s2,C) = (1*1+(1/3)*0.25)= 1.08. よって, s2 が leaf-‐node Cに対応する語義 スコアが最も高い語義をleaf-‐nodeに対応する
語義として出力する
EVALUATION
Evalua-on Sehng • データセット: – Semeval-‐2007 sense induc-on task
• 評価指標: – F1-‐score
• Baselines: – フラットクラスタリング using weighted graphs (CWW) – フラットクラスタリング using unweighted graphs (CWU) • Chinese Whispers (Biemann, 2006) という手法を用いている
– 階層的凝集型クラスタリング(HAC) • average linkageに基づくもの (伝統的な手法)
Result(1/2)
• パラメータ: すべて共起に基づくグラフGのもの – p1, p2 : 単語、コロケーションの抽出のためのしきい値(対数尤度比) – p3 : エッジを張るかどうか決める類似度のしきい値(ジャッカード係数)
• (おおよそ)パラメータに依存せず、安定してベースラインより高い性能が出ている
• HACでは「類似」関係のみを考慮しているが、HRGでは「類似」「非類似」の両方の関係を考慮できるため性能が向上した – と著者らは主張している・・・
Result(2/2) System Performance (%)
HRGs 87.6
(Brody & Lapata, 2009) 87.3
(Niu et al., 2007) 86.8
(Klapa=is and Manandhar, 2008) 86.4
HAC 86.0
CWU 85.1
CWW 84.7
(Pedersen, 2007) 84.5
MFS 80.9
F1-‐score for SemEval-‐2007 WSI task dataset.
State-‐of-‐the-‐artな他の手法と比べても高い性能 (ただし、上位3つは有意な差ではないらしい)
Conclusion
• Unsupervised method for inferring the hierarchical grouping of the senses of a polysemous word.
• Graphs exhibit hierarchical organiza-on captured by HRGs, in effect providing improved WSD performance compared to – Flat graph clustering. – Hierarchical Agglomera-ve Clustering
感想、疑問等
• Hierarchical Random Graphの尤度関数の解釈が難しい • グラフ G を unweighted にしてしまうのはもったいない気がする – 関連性には「程度」がある – 足切りパラメータに意味があるのかよくわからない
• MCMCの収束条件について何も書いてない • 凝集クラスタリング(HAC)に対して有意に性能が向上する理由がイマイチ納得いかない
• 途中からGold-‐Standardを用いているので評価指標が公平なものであるか判断が難しい – WSDとして評価するためには必要なものではあるが・・・ – WSIとしての評価指標も(妥当性はともかく)存在するので、そちらの結果も見たかった
おまけ
• Hierarchical Random Graphの原論文(Nature2008(leker), ICML2006)も当たってみた – いろいろと応用があるらしい
• Missing ling detec-on, link predic-on • Community detec-on • Personalized recommenda-on etc…
• NLPの分野ではまだほとんど応用されていない手法なので、興味のある方は触ってみるといいかも – 著者がコードも配っています –
ANY QUESTION OR COMMENT?