Automatic Labeling of Semantic Roles

Automatic Labeling of
Semantic Roles
Bernard Lamers
2002年6月15日
今日取り上げる論文
Automatic Labeling of Semantic Roles
Gildea, D. and Jurafsky, D. 2001.
To appear in Computational Linguistics
http://www.colorado.edu/linguistics/
jurafsky/pubs.htmlからダウンロード可能
本発表の流れ
システムの背景について
訓練データについて
システムが使っている知識リソースや確率推
定法の紹介
上位レベルの意味を獲得する方法
システムを訓練データに現れない述語に対応
させる
この論文と自分の研究に関する考察
背景:既存の意味解釈システム
例:航空券の予約システム
Semantic roles: ORIG_CITY、DEST_CITY、
DEPART_TIME
以上のsemantic rolesの適用範囲が限られ
ている。ドメインずつロールを定義する必要が
ある。もっと一般的なロールを割り当てたい。
Fillmore(1976)が提案するフレームモデル
Fillmore(1976)が提案する
フレームモデル
フレーム:
judgment
フレームエレメント (ロール): judge,
evaluee,
reason
このフレームを適用している動詞:blame,
admire, appreciate, disapprove
例:[judge She] blames [evaluee the Government] [reason for failing to support the poor]
ロールの一般化の重要性(1)
フレームモデルによってロールの一般化が得
られるので、異なる動詞の要素をお互いに結
びつけることが可能になる。
[sender Which party] sent [goods absentee
ballots] [receiver to voters]?
[receiver Both Democratic and Republican
voters] received [goods absentee ballots]
[sender from their party].
ロールの一般化の重要性(2)
semantic rolesが有益な情報になる例:




Word-sense disambiguation: センスずつ動詞ま
たは名詞が割り当てるロールが違う。
Statistical machine translation:単語のロールが
本来の言語と目標言語で一致することが多い。
Text summarization
Text data mining
本論文の目標:ロールを自動的に割り当てる
システムの構築
訓練データについて
訓練データ: FrameNet データベース
FrameNetはロールタグつきのコーパス。大き
さ:50000文、由来がBritish National Corpus
FrameNetは12個のドメーンをまたがる67個
のフレームタイプを定義する。
ドメーン
cognition
フレームタイプ
awareness
judgment
invention
例
understand
blame, admire
coin, invent
システムが使っている知識リソース
知識リソースはfeature(素性)の形で表現す
る。






Phrase type
Governing category
Parse tree path
Position
Voice
Head word
Feature 1: phrase type
入力:ロールタグつきの文。それらの文を統
計パーサー(Collins 1997)で構文解析
S
NP
NNP
Farrell
THEME
VP
VBD
approached
TARGET
NP
PP
PRP
IN
him
GOAL
from
NP
behind
SOURCE
Feature 2: governing category
Agentが主語として実現されることが非常に
多い
構文情報がロールの予測にも
役立つ。
Governing category featureはNPノードの親
ノードを確保している。可能な値:S, VP
Feature 3: parse tree path(1)
Parse tree pathはtargetから特定の構文要
素までのpath
PATH:
VB↑VP↑S↓NP
S
NP
PRP
VP
NP
VB
DT
he
ate
TARGET
some
NN
pancakes
Feature 3: parse tree path(2)
頻度
解釈
path
14.2% VB↑VP↓PP
PP argument
11.8% VB↑VP↑S↓NP
主語
10.1% VB↑VP↓NP
目的語
7.9%
VB↑VP↑VP↑S↓NP
主語(埋め込み節)
Feature 4: position
Positionはフレームエレメントがtargetの前ま
たは後ろに現れるかを確保している。可能な
値:前、後ろ。
なぜ、positionが採用されたか


統計パーサーの制度が87%。つまり、パースの
13%が正しくない
governing category,
parse tree pathが正しくないことも随分あり得る。
単純な素性でどれだけの成果が得られるかを検
査
Feature 5: voice
Activeの目的語のロールはpassiveの主語の
ロールと一致することが多い。


He bought a car.
The car was bought by him.
activeとpassiveを区別する必要がある
10個のpassive発見パターン:


To be … hit, eaten, openedなど
To get … hit, eaten, openedなど
Feature 6: head word
NP
head word
NP
PP
Det
N
the
girl
with a hat
コミュニケーションフレーム:


Speaker: Bill, brother, he
Topic: proposal, story, question
selectional restrictionsを獲得
システムが使っている確率推定法
目標: P(r|pt, gov, ptp, pos, voice, head, t)
スパースネスのせいで、
#(r, pt, gov, ptp, pos, voice, head, t)

P ≠
#(pt, gov, ptp, pos, voice, head, t)
素性の部分集合をいくつか組み合わせて
[P(r|t), P(r|pt, gov, t), P(r|h, pt, t)など]、Pを
推定する
例:P(r|pt, gov, t)
#(r, pt, gov, t)
P(r|pt, gov, t) =
#(pt, gov, t)
P
Count
P(r=AGT|pt=NP, gov=S, t=abduct)=0.46
6
P(r=THM|pt=NP, gov=S, t=abduct)=0.54
7
P(r=THM|pt=NP, gov=VP, t=abduct)=1
9
P(r=AGT|pt=PP, t=abduct)=0.33
1
P(r=THM|pt=PP, t=abduct)=0.33
1
素性の部分集合の組み合わせ方法:
linear interpolation
P(r|constituent)=
λ1P(r|t) + λ2P(r|pt, t) +
λ3P(r|pt, gov, t) + λ4P(r|pt, pos, voice) +
λ5P(r|pt, pos, voice, t) + λ6P(r|h) +
λ7P(r|h,t) + λ8P(r|h, pt, t)
where Σi λi = 1
素性の部分集合の組み合わせ方法:
geometric mean
geometric mean = average log probability
P(r|constituent) = 1/z exp {
λ1log P(r|t) + λ2log P(r|pt, t) +
λ3log P(r|pt, gov, t) + λ4log P(r|pt, pos, voice)+
λ5log P(r|pt, pos, voice, t) + λ6log P(r|h) +
λ7log P(r|h, t) + λ8log P(r|h, pt, t) }
z is a normalizing constant ensuring that
Σr P(r|constituent) =1
素性の部分集合の組み合わせ方法:
backoff
P(r|h, pt,t)
P(r|pt, gov, t) P(r|pt, pos,voice, t)
P(r|h, t)
P(r|pt, t)
P(r|h)
P(r|t)
P(r|pt, pos,voice)
システムが採用する組み合わせ方法:
backoff with linear interpolation 制度80.4%
(baseline 40.9%)
上位レベルの意味:
selectional restrictions
Head wordが非常に重要な情報。P(r|h, pt,
t)はロールの予測が一番制度が高い。
残念ながら、headの値域が広く、P(r|h, pt, t)
が直接使わない場合が多い
P(r|h, pt,
t)を間接的に導く。



Automatic clustering
WordNet
Bootstrapping
Automatic clustering(1)
目標:動詞のsel. restrictionsを獲得
仮定:動詞と目的語という変数が独立
P(n,v) = P(n)P(v) =Σc P(c)P(n|c)P(v|c)
EMでP(c),P(n|c),P(v|c)を推定
訓練データにおけるNPのhead wordがどの
クラスターに属するかが計算される
P(h|c)P(c)
P(n|c)P(c)
P(c|h) =
=
P(h)
Σc’ P(n|c’)P(c’)
Automatic clustering(2)
次は、クラスターcのターゲットtがロールαを
割り当てる確率を計算する(ptはNP)。
Σ j:ptj=pt, tj=t, rj=rαP(c|hj)
P(rα|c,pt,t)=
Σ j:ptj=pt, tj=t P(c|hj)
テスティングのとき、ロールαが割り当てられ
る確率を以下のように計算する(ptは常にNP)
P(rα|h, pt, t) =ΣcP(rα|c, pt, t)P(c|h)
Automatic clustering(3)
Distribution
Cov.
Acc.
Perf.
Direct lexical statistics:
P(r|h, pt, t)
41.6
87.0
36.1
Clustered statistics:
ΣcP(r|c, pt, t)P(c|h)
97.9
79.7
78.0
WordNet(1)
SENSE:
上位語
下位語
furniture
financial institution
bank
bench
sofa
CityBank
訓練データを用いる準備のプロセス


各NPのhead wordの各上位senseについて#(r,
s, pt, t)を表に登録する。
複数のsense(上位語)の場合、最初に登録され
ているsense(上位語)
WordNet(2)
テストデータにおけるNPのhead wordが訓練データ
に現れなかった場合、head wordの上位にある
senseのデータを利用する。
Distribution
Cov.
Acc.
Perf
Direct lexical statistics:
P(r|h, pt, t)
WordNet:
P(r|s, pt, t)
41.6
87.0
36.1
80.8
79.5
64.1
Bootstrapping:準備
フレームエレメントの境界を自動的に認識する





入力は今までフレームエレメントの境界を含めた。今、
フレームエレメントの境界のデータを入力から除く実験
を行う。
まず、パースを行い、素性を獲得する。
各構文要素に関してこの要素がフレームエレメントであ
る確率feを計算する。
P(fe|path), P(fe|path, t), P(fe|h, t)
feが0.5以上であれば、構文要素をフレームエレメントと
みなす。
Bootstrapping:活用編
入力はタグなしの英語の文章
自動的に認識されたフレームエレメントに先ほど説
明したシステムでロールを割り当てる。
以上のシステムでロールが割り当てられた文
章は訓練データとして使う。勿論、この訓練
データはパース、ロールなどの誤りが多数あ
る。しかし、訓練データが増えるので、
coverageが高まる。
Bootstrapping:結果
Distribution
Cov.
Acc.
Perf.
Ptrain(r|h, pt, t)
41.6
87.0
36.1
Pauto(r|h, pt, t)
48.2
81.0
39.0
Ptrain+auto(r|h, pt, t)
54.7
81.4
44.5
Ptrain, backoff to Pauto
54.7
81.7
44.7
Verb argument structure:
frame element group (FEG)
今までのシステムでは、あるフレームエレメンットに
どのロールが割り当てられるかの決定が周り
のフレームエレメントに割り当てられたロールから
独立
あるターゲットが常にあるロールを要求してい
るなどの情報をシステムに組み入れる。
FEG: 例 blame {EVALUEE}, {JUDGE,
EVALUEE, REASON}, {JUDGE,
EVALUEE}
Verb argument structure:
ロールの最適の割り当て
r* = argmax r1…n P(r1…n | t, f1…n)
説明:ページ29
r * = argmax r1…n P({r1…n } | t)Πi
P(ri | fi,t)
P(ri|t)
スパースネスの問題が起きたので、上のr*が
スムージングされた。
λP({r1…n }|t) + (1-λ)[Π P(r∈FEG|t)
Π P(r¬∈FEG|t)]
フレームエレメント境界の識別システムと
ロール割り当てシステムの合体
argmax r1…nP({r 1…n}|t)Πi
P(ri|fi,fei ,t)P(fei|fi)
P(ri|t)
unlabeled
labeled
method
prc. rec.
prc.
Boundary id + role labeler
72.6 63.1 67.0 46.8
Boundary id + FEG labeler
72.6 63.1 65.9 46.2
integrated
74.0 70.1 64.6 61.2
rec.
FEGと他のfeature
実験としてsubcatのfeatureを定義し、FEGを
利用しているシステムにsubcatも付け加える。
実は精度が上がらない。
FEGはsubcatの情報も確保している。
FEGをpassive,positionと組み合わせると精
度が落ちる
データのフラグメント化が
原因
システムを訓練データに現れない
述語に対応させる
FrameNetが利用しているロールが特殊すぎ
るので、まずFrameNetのロールをもっと一般
的なロールに写像する。(一覧はp. 36)
訓練データに現れない述語αに対応させるた
めには次の方法が考えられる:



述語αが所属するフレームを使うこと
フレームのデータがない場合、フレームの特徴を
まわりのフレームから推定する。
ドメーンのデータがない場合、ドメーンの特徴をま
わりのドメーンから推定する。
述語αが所属するフレームを使う
前提:述語αが所属しているフレームが明らか
であることなおかつそのフレームに関する
データが存在すること
制度:79.4% (元のシステム:82.1%)
結論:ひとつのフレームを成す動詞は意味要
素を共通している。この実験から一つのフ
レームの動詞はargument structureも共通し
ていることがわかった
linking theory
の予測と一致している
フレームの特徴をまわりの
フレームから推定する
一つのフレームを取り除き、フレームの特徴
を同じドメーンのフレームから推定する。
制度:51.0%
結論:一つのドメーンに属するすべてのフレー
ムがargument structureを共通していること
が言えない。
ドメーンの特徴をまわりの
ドメーンから推定する
一つのドメーンを取り除き、ドメーンの特徴を
まわりのドメーンから推定する。
制度:39.8%
まとめ
フレームエレメントの境界が与えられた場合、制度
が82.1%
フレームエレメントの境界が与えられていない場合、
precisionが65%、recallが61%
結論
Lexical statisticsは訓練データに現れたデー
タに関しては精度が高い。問題はcoverage。
手で作られたリソース(WordNet)と自動習得
リソース(clustering)を比べると、後方のほう
がcoverageが広いので、有利。
システムがまだ不完全:所属するフレームな
どのデータがない動詞に関してはロール割り
当てがうまくできない。
考察(1)
Merlo and Stevensonの目標は動詞をクラス
に分類する。
Gildea and Jurafskyの目標はロール割り当
てシステムの構築。
一つのクラスの動詞が同じロールを割り当て
ると仮定する。したがって、M&SとG&Jの間
に共通点があると考えられる。
考察(2)
M&Sが使っているfeatureとG&Jが使ってい
るfeatureは共通点が少ないように見える。た
だし、M&SのTRANSはG&JでFEGで表され
ている。Featureの理想な組み合わせは今後
の課題にする。
クラス分類ができても、そのクラスの特徴
(ロール割り当て)を具体化できなければ、研
究の意味が限られている。G&Jのように出発
点を知識リソースにするのが賢明かも。