A Unified Model for Word Sense 
Representation and Disambiguation 
EMNLP 2014 読み会 
小町研究室B4 堺澤勇也 
※スライド中の図表はすべて論文から引用していま
Abstract 
 ほとんどの単語表現手法は各単語は単一の意味ベ 
クトルを持つことを仮定している 
 これは語彙の曖昧性という問題を抱えている 
 WSRとWSD 両方のための結合モデルを提案する 
 動機: WSDとWSRはお互いに利益を与えることか 
らきている 
 WSRの質が高い→ 単語や意味について豊富な情報を 
捉え、結果WSDを助ける 
 WSDの質が高い→ 意味表現を学習するためのコーパ 
ス曖昧性が解消され、より信頼性が高いものとなる
単語をベクトル化する動機 
 うまく表現学習ができれば、そこに意味的・統語 
的情報を持たせることが出来る 
 それを、素性として広い分野で活用したい
単語ベクトル化の問題 
 多くの単語表現では各単語は一つのベクトルを所 
有することを仮定している 
 しかし、これは多義語などの問題にぶつかる 
 bank は「銀行」・「土手」など複数の意味を所有 
するが、単一のベクトルでは複数の意味を表しき 
れない
多義語の各意味をベクトル化 
WordNet を使用 
これからの説明で出てくる変数 
R : ラベルなしテキスト 
W: テキストの語彙 
wsi:W中の単語wのWordnet のi 番目の意味 
gloss(wsi): wsi の語釈文 
vec(w): 単語w のベクトル 
vec(wsi): I 番目の意味wsi のベクトル
モデル生成の3ステップ 
 1. Initializing word vectors and sense vectors 
 2. Performing word sense disambiguation 
 3. Learning sense vectors from relevant occurrences
1.1 Initializing word vectors 
 Skip-garm を使用して単語ベクトルをトレーニング 
 よく見る対数確率式 
 よく見るsofrmax の式 
input 
output
1.2 Initializing sense vectors 
 語釈文中の類似単語を使用して意味を表すことで 
初期化する 
 banks1 の語釈文: 
 “sloping land (especially the slope beside a body of water)) 
they pulled the canoe up on the bank; he sat on the bank of 
the river and watched the currents” 
 類似単語候補: (単語, cos類似度) 
 (sloping, 0.12), (land, 0.21), (slope, 0.17), (body, 0.01), 
(water, 0.10), (pulled, 0.01), (canoe, 0.09), (sat, 0.06), (river, 
0.43), (watch, -0.11), (currents, 0.01) 
 フィルタリング: 閾値δ = 0.05 
 cand(wsi) = {sloping, land, slope, water, canoe, sat, river} 
 cand(wsi) の単語ベクトルの平均が…意味ベクトル!! 
vec(banksi)
より形式的に 
 語釈文中の類似単語を使用して意味を表すことで初期 
化する 
 各単語wsiの為にWordNetの語釈文から類似単語候補を 
とってくる(既に閾値δ = 0.00 でフィルタリング) 
 その後、cand(wsi) の単語ベクトルの平均を取り、初期 
化する
2. Performing word sense disambiguation 
 単語の意味は、すべての出現を単一単語ベクトル 
にマージするよりも、関連出現のみによってモデ 
ル化されることがWSDの結果から示されている 
 この考え方から、より多くの関連出現を手に入れ 
るためにWSDを行う
 トレーニングデータ中の文の内容語すべての曖昧性を 
解消する(all-words settings)タスクを行う 
 文S は単語の系列(w1, w2, … , wn)であり、単語から 
意味へのマッピングM を識別する 
 M(i) ∈ SensesWN (wi) 
 SensesWN (wi): 単語wi のためのWN中のエンコードされた 
意味の集合 
 可能なマッピングは下の式で表されるがこれは数が膨 
大になるので計算出来ない 
 従って、下に示す簡単な二つのアルゴリズムを使用す 
る 
 L2R(left to right) 
 S2C(simple to complex)
L2R とS2C 
 二つのアルゴリズムの違いは曖昧性を解く順序 
 L2R: 左から右に解く(文を読む自然な順番) 
 S2C: 曖昧性の少ない単語から優先して解く(それに 
より後の単語の曖昧性を解くことを助ける) 
 二つとも3つのステップをとって曖昧性を解消す 
る
3つのステップ 
 1. Context vector initialization 
 2. Ranking words 
 3. Word sense disambiguation
1. Context vector initialization 
 これは意味ベクトルの初期化と似ている 
 文中のすべての内容語の単語ベクトルの平均をと 
る
2. Ranking words 
 L2Rはこの手順を踏まない(ステップ2つ?) 
 S2Cの為に、|SensesWN (wi) | の順番に基づいて単語 
をランクづけしておく
3. Word sense disambiguation 
 それぞれのアルゴリズムの優先順位に従って各単語の 
曖昧性を解消していく(内容語ではないものと意味が 
一つしかないものを除く) 
 2で作った意味ベクトルとコンテキストベクトルのcos 
類似度を計算し、類似度の最大値をとる意味ベクトル 
が持つ意味を曖昧性解消の正解として選択する(最大 
値とその次に大きい値のマージンが閾値ε = 0.10 を超え 
ている場合、それは信頼に値するものとする) 
 その後、コンテキストベクトル中の単語ベクトルの代 
わりにその意味ベクトルを使うようにアップデートす 
る 
 これにより、他の単語の曖昧性を解消するためのより 
正確なコンテキストベクトルを得ることが出来る
3. Learning sense vectors from relevant occurrences 
 WSDの結果を基に、Skip-gram のオブジェクトを修 
正し、意味ベクトルをトレーニングをする 
 今度のモデルは周辺単語だけでなく、それらの意 
味も予測する用に学習される 
 WSDの結果を、M(w1), M(w2), …, M(wn) とすると、 
いつもの式は以下のようになる 
ここを決めるために階層的sofrmax を使用
model 
目的の 
意味ベクトル 
ある単語が得られたときに、その周辺の単語だけでなく、 
内容語の意味(図中の黒四角)も予測するように学習する
Parameter Influence 
各パラメーターで実験を行うことにより 
一番いいパラメーターを決定している
学習したsense vectors の例 
その単語に最も近いものを三つ 
示している 
サブスクリプトはWordNetの 
インデックスに相当する 
多義語のひとつひとつにちゃんと意味が付与されたベクトルが与えられてい
 3つの実験 
 Contextual Word Similarity 
 Domain-Specific WSD 
 Coarse-grained WSD 
実験
Contextual Word Similarity 
 データセット: SCWS from (Huang et al., 2012) 
 (2003の単語のペアの類似度が0〜10の間でアノテー 
ションされている) 
 実験設定: dataから得られた単語ペアの類似性を 
図る 
 計算式: 
 p(i | w, c) : 与えられたコンテキストc 中の単語w が 
持つi 番目の意味が持つ尤度を表す 
 d(vec(wsi), vec(w’si)): 二つの単語ベクトルのcos類 
似度を計算する
結果 
評価: モデルで計算された類似度のスコアと 
人手のスコア間の順位相関係数を計算 
(Collobert and Weston, 2008)’s language model 
Huang’s model 
-S: 単語毎に一つの表現を使用 
-M: 意味毎に一つの表現を使用 
AvgSim: 各意味が均等になるように計算 
AvgSimC: コンテキストc 中の意味によ単語の確率を割り当てて重み付けして計提案手法が一番精度が高いことが確認出来る
Domain-Specific WSD 
 データセット: Wikipedia(トレーニング) 
 Koeling et al., 2005 で公開されてるもの(テスト) 
 実験設定: ベースラインとしてMFS (most 
frequent Wordnet sense) 
 4つの手法と比較: 
 Static PageRank (A- girre et al., 2009) 
 the k nearest neighbor algorithm (k-NN) 
 Degree (Navigli and Lapata, 2010) 
 Personalized PageRank (Agirre et al., 2009)
結果 
評価: recallを計算して各手法と比較 
かなり差をつけているが、これは 
Degree は与えられたセンテンスや 
コンテキストが小さすぎて、意味グラフ 
の構築が困難だったためであると 
考えられる 
これは、提案手法が生成したベクトルに 
よって短い文章などでも類似性がしっか計算出来ていることを示す 
提案手法が一番精度が高いことが確認出来る
Coarse-grained WSD 
 データセット: Semeval-2007 
 実験設定: 比較対象はSemeval-2007のこのtaskで 
ベストなものと最新の手法なども合わせて比較 
 比較手法: 
 SUSSX-FR(Koel- ing and McCarthy, 2007) (教師な 
し) 
 NUS-PT (Chan et al., 2007) (教師あり) 
 SSI (Navigli and Ve- lardi, 2005) 
 Degree (Navigli and Lapata, 2010)
結果 
評価: F値で比較 
L2R よりS2C が常に勝っていることは、 
少ない意味を持つ単語の曖昧性解消の 
方が簡単であり、それにより他の意味の 
曖昧性解消を助けていることを示す 
All words ではSSI の結果の次となっている 
が、提案手法はSSI のように意味の関係集にたくさんの努力を必要としない 
必ずしも勝っている訳ではない 
が、それと同等程度の成果は出せている
まとめ 
 WSRとWSDのための統一モデルを提案した 
 実験では、提案モデルが既存の方法を上回る、も 
しくは匹敵する結果を示した 
 大量のラベルなしデータから学習しているので、 
他のタスクへの応用も考えられる

A Unified Model for Word Sense Representation and Disambiguation

  • 1.
    A Unified Modelfor Word Sense Representation and Disambiguation EMNLP 2014 読み会 小町研究室B4 堺澤勇也 ※スライド中の図表はすべて論文から引用していま
  • 2.
    Abstract  ほとんどの単語表現手法は各単語は単一の意味ベ クトルを持つことを仮定している  これは語彙の曖昧性という問題を抱えている  WSRとWSD 両方のための結合モデルを提案する  動機: WSDとWSRはお互いに利益を与えることか らきている  WSRの質が高い→ 単語や意味について豊富な情報を 捉え、結果WSDを助ける  WSDの質が高い→ 意味表現を学習するためのコーパ ス曖昧性が解消され、より信頼性が高いものとなる
  • 3.
    単語をベクトル化する動機  うまく表現学習ができれば、そこに意味的・統語 的情報を持たせることが出来る  それを、素性として広い分野で活用したい
  • 4.
    単語ベクトル化の問題  多くの単語表現では各単語は一つのベクトルを所 有することを仮定している  しかし、これは多義語などの問題にぶつかる  bank は「銀行」・「土手」など複数の意味を所有 するが、単一のベクトルでは複数の意味を表しき れない
  • 5.
    多義語の各意味をベクトル化 WordNet を使用 これからの説明で出てくる変数 R : ラベルなしテキスト W: テキストの語彙 wsi:W中の単語wのWordnet のi 番目の意味 gloss(wsi): wsi の語釈文 vec(w): 単語w のベクトル vec(wsi): I 番目の意味wsi のベクトル
  • 6.
    モデル生成の3ステップ  1.Initializing word vectors and sense vectors  2. Performing word sense disambiguation  3. Learning sense vectors from relevant occurrences
  • 7.
    1.1 Initializing wordvectors  Skip-garm を使用して単語ベクトルをトレーニング  よく見る対数確率式  よく見るsofrmax の式 input output
  • 8.
    1.2 Initializing sensevectors  語釈文中の類似単語を使用して意味を表すことで 初期化する  banks1 の語釈文:  “sloping land (especially the slope beside a body of water)) they pulled the canoe up on the bank; he sat on the bank of the river and watched the currents”  類似単語候補: (単語, cos類似度)  (sloping, 0.12), (land, 0.21), (slope, 0.17), (body, 0.01), (water, 0.10), (pulled, 0.01), (canoe, 0.09), (sat, 0.06), (river, 0.43), (watch, -0.11), (currents, 0.01)  フィルタリング: 閾値δ = 0.05  cand(wsi) = {sloping, land, slope, water, canoe, sat, river}  cand(wsi) の単語ベクトルの平均が…意味ベクトル!! vec(banksi)
  • 9.
    より形式的に  語釈文中の類似単語を使用して意味を表すことで初期 化する  各単語wsiの為にWordNetの語釈文から類似単語候補を とってくる(既に閾値δ = 0.00 でフィルタリング)  その後、cand(wsi) の単語ベクトルの平均を取り、初期 化する
  • 10.
    2. Performing wordsense disambiguation  単語の意味は、すべての出現を単一単語ベクトル にマージするよりも、関連出現のみによってモデ ル化されることがWSDの結果から示されている  この考え方から、より多くの関連出現を手に入れ るためにWSDを行う
  • 11.
     トレーニングデータ中の文の内容語すべての曖昧性を 解消する(all-wordssettings)タスクを行う  文S は単語の系列(w1, w2, … , wn)であり、単語から 意味へのマッピングM を識別する  M(i) ∈ SensesWN (wi)  SensesWN (wi): 単語wi のためのWN中のエンコードされた 意味の集合  可能なマッピングは下の式で表されるがこれは数が膨 大になるので計算出来ない  従って、下に示す簡単な二つのアルゴリズムを使用す る  L2R(left to right)  S2C(simple to complex)
  • 12.
    L2R とS2C 二つのアルゴリズムの違いは曖昧性を解く順序  L2R: 左から右に解く(文を読む自然な順番)  S2C: 曖昧性の少ない単語から優先して解く(それに より後の単語の曖昧性を解くことを助ける)  二つとも3つのステップをとって曖昧性を解消す る
  • 13.
    3つのステップ  1.Context vector initialization  2. Ranking words  3. Word sense disambiguation
  • 14.
    1. Context vectorinitialization  これは意味ベクトルの初期化と似ている  文中のすべての内容語の単語ベクトルの平均をと る
  • 15.
    2. Ranking words  L2Rはこの手順を踏まない(ステップ2つ?)  S2Cの為に、|SensesWN (wi) | の順番に基づいて単語 をランクづけしておく
  • 16.
    3. Word sensedisambiguation  それぞれのアルゴリズムの優先順位に従って各単語の 曖昧性を解消していく(内容語ではないものと意味が 一つしかないものを除く)  2で作った意味ベクトルとコンテキストベクトルのcos 類似度を計算し、類似度の最大値をとる意味ベクトル が持つ意味を曖昧性解消の正解として選択する(最大 値とその次に大きい値のマージンが閾値ε = 0.10 を超え ている場合、それは信頼に値するものとする)  その後、コンテキストベクトル中の単語ベクトルの代 わりにその意味ベクトルを使うようにアップデートす る  これにより、他の単語の曖昧性を解消するためのより 正確なコンテキストベクトルを得ることが出来る
  • 17.
    3. Learning sensevectors from relevant occurrences  WSDの結果を基に、Skip-gram のオブジェクトを修 正し、意味ベクトルをトレーニングをする  今度のモデルは周辺単語だけでなく、それらの意 味も予測する用に学習される  WSDの結果を、M(w1), M(w2), …, M(wn) とすると、 いつもの式は以下のようになる ここを決めるために階層的sofrmax を使用
  • 18.
    model 目的の 意味ベクトル ある単語が得られたときに、その周辺の単語だけでなく、 内容語の意味(図中の黒四角)も予測するように学習する
  • 19.
    Parameter Influence 各パラメーターで実験を行うことにより 一番いいパラメーターを決定している
  • 20.
    学習したsense vectors の例 その単語に最も近いものを三つ 示している サブスクリプトはWordNetの インデックスに相当する 多義語のひとつひとつにちゃんと意味が付与されたベクトルが与えられてい
  • 21.
     3つの実験 Contextual Word Similarity  Domain-Specific WSD  Coarse-grained WSD 実験
  • 22.
    Contextual Word Similarity  データセット: SCWS from (Huang et al., 2012)  (2003の単語のペアの類似度が0〜10の間でアノテー ションされている)  実験設定: dataから得られた単語ペアの類似性を 図る  計算式:  p(i | w, c) : 与えられたコンテキストc 中の単語w が 持つi 番目の意味が持つ尤度を表す  d(vec(wsi), vec(w’si)): 二つの単語ベクトルのcos類 似度を計算する
  • 23.
    結果 評価: モデルで計算された類似度のスコアと 人手のスコア間の順位相関係数を計算 (Collobert and Weston, 2008)’s language model Huang’s model -S: 単語毎に一つの表現を使用 -M: 意味毎に一つの表現を使用 AvgSim: 各意味が均等になるように計算 AvgSimC: コンテキストc 中の意味によ単語の確率を割り当てて重み付けして計提案手法が一番精度が高いことが確認出来る
  • 24.
    Domain-Specific WSD データセット: Wikipedia(トレーニング)  Koeling et al., 2005 で公開されてるもの(テスト)  実験設定: ベースラインとしてMFS (most frequent Wordnet sense)  4つの手法と比較:  Static PageRank (A- girre et al., 2009)  the k nearest neighbor algorithm (k-NN)  Degree (Navigli and Lapata, 2010)  Personalized PageRank (Agirre et al., 2009)
  • 25.
    結果 評価: recallを計算して各手法と比較 かなり差をつけているが、これは Degree は与えられたセンテンスや コンテキストが小さすぎて、意味グラフ の構築が困難だったためであると 考えられる これは、提案手法が生成したベクトルに よって短い文章などでも類似性がしっか計算出来ていることを示す 提案手法が一番精度が高いことが確認出来る
  • 26.
    Coarse-grained WSD データセット: Semeval-2007  実験設定: 比較対象はSemeval-2007のこのtaskで ベストなものと最新の手法なども合わせて比較  比較手法:  SUSSX-FR(Koel- ing and McCarthy, 2007) (教師な し)  NUS-PT (Chan et al., 2007) (教師あり)  SSI (Navigli and Ve- lardi, 2005)  Degree (Navigli and Lapata, 2010)
  • 27.
    結果 評価: F値で比較 L2R よりS2C が常に勝っていることは、 少ない意味を持つ単語の曖昧性解消の 方が簡単であり、それにより他の意味の 曖昧性解消を助けていることを示す All words ではSSI の結果の次となっている が、提案手法はSSI のように意味の関係集にたくさんの努力を必要としない 必ずしも勝っている訳ではない が、それと同等程度の成果は出せている
  • 28.
    まとめ  WSRとWSDのための統一モデルを提案した  実験では、提案モデルが既存の方法を上回る、も しくは匹敵する結果を示した  大量のラベルなしデータから学習しているので、 他のタスクへの応用も考えられる

Editor's Notes

  • #15 コンテキストベクトルはそのコンテキスト中のすべての単語ベクトルの平均となっっている つまり、初期化の時点では意味ベクトルは入っていない それを更新していくうちに単語ベクトルが意味ベクトルに変更されることによってWSDの精度があがる!!
  • #27 タスクをfine-grained ではなく coarse-grained にした理由 ①WordNetの細かい粒度が正確なWSDを行うための主な障害の一つであることを主張されている ②トレーニングの為に使用したWikipedia のデータとWordNetのデータがかなり違っているため 前の実験と違うベースラインを使用するのは頑健にいいものを作っている証明と最新のものに競えているということを示すため