言語処理学会 第21回年次大会 発表論文集 (2015年3月)

word2vec に基づく述語項構造の分布表現獲得
岩井1二宮美樹崇

愛媛大学工学部情報工学科

愛媛大学大学院理工学研究科電子情報工学専攻

miki@ai.cs.ehime-u.ac.jp

ninomiya@cs.ehime-u.ac.jp

はじめに入力層

中間層

出力層

W(t-2)

本研究は word2vec の手法に基づき述語項構造に対する分布表現を獲得する手法を提案する。word2vec はSUM

W(t-1)

単語に対する概念を分布表現 (低次元の密なベクトル)W(t)W(t+1)

として獲得する手法の一つであり、ベクトルの計算により意味のコンポジショナリティーを実現する性質をW(t+2)

持つことから、近年注目を集めている。word2vec は、大量のテキストを用い、単語予測の擬似的なタスクを

図 1: CBOW モデルの仕組みニューラルネットワークで学習することによって、単語に対する分布表現を獲得する。本研究は、述語項構

入力層

中間層

出力層造付き英語 HPSG の構文解析を行うことによって述W(t-2)

語項構造が付与されたテキストを生成し、これらのテW(t-1)

キストからニューラルネットワークを用いて動詞と目W(t)的語のペアに対する分布表現を獲得する。

W(t+1)

本研究は、word2vec の手法に基づき述語項構造のW(t+2)

分布表現を獲得する 4 つの手法を提案し、異なる述語項構造の表現が同じ意味表現となることを実験により

図 2: skip-gram モデルの仕組み検証する。述語項構造とは、ある文の中で述語が他の単語とどのような関係にあるのかを記述した構造である。以下の 2 つの例文は述語項構造は異なるが同じような意味表現を持つ例を示している。

2

word2vec

1. I wash the dishes.

word2vec[1] は Tomas Mikolov らによって提案されたニューラルネットワークを用いた単語分布表現 (語彙の概念を表す低次元の密なベクトル) の獲得手法で

2. I do the dishes.

ある。テキスト中の各単語を周辺の単語から予測する

1. の述語項構造は “wash(dishes)”, 2. の述語項構造は“do(dishes)” と、2 つの例文の述語項構造は異なる構造となっている。しかし、意味に注目するとどちらも “擬似的な単語予測のタスクを設定し、このタスクを大皿を洗う” という意味を表していることがわかる。この単語に対する分布表現を獲得する。

ように述語構造は異なるが同じような意味表現を持つ英文は多く存在する。本研究では、“do dishes” のようMikolov らは word2vec を実現するネットワーク構造として、CBOW モデルと Skip-gram モデルの二つにその動詞の意味が明示的にわからない動詞-目的語ののモデルを提案している。図 1 は CBOW モデルのネッペア (‘do’ と ‘dishes’ のペア) に対し、最もその概念にトワーク構造を表している。図が表すように CBOW近い基本動詞 (‘wash’) や述語項構造 (“wash(dishes)”)

モデルは入力層、中間層、出力層からなり、周辺単語を正解として、分布表現の距離を測ることにより、各wt−k , . . . , wt−1 , wt+1 , . . . , wk を入力とし、wt を出力とする (予測する) ニューラルネットワークである。入提案手法の性能を検証する。

量のテキストからニューラルネットワークで学習し、中間層における各単語の重みを抽出することによって、― 75 ―

Copyright(C) 2015 The Association for Natural Language Processing.
All Rights Reserved.

力層と出力層は辞書中の単語と一対一対応のノードか3.2ら成っており、1-of-K 単語ベクトルとなっている。中間層は隠れ変数となっており、任意の個数のノードを与えることができる。入力層と中間層をつなぐ重み行列は各単語に対する重みベクトルを並べたものとなっている。
単語に対する重みベクトルの次元数は中間層のノード数と等しく、word2vec において数百程度がよく用いられる。つまり、入力層における語彙数 (数十万) の次元を数百程度に次元削減していることになる。CBOW モ
デルでは、周辺の各単語 wt−k , . . . , wt−1 , wt+1 , . . . , wkに対する重みベクトルの和を計算し、それを中間ノードの値としている。

手法 2 は word2vec の CBOW モデルにおいて、周辺単語または出力に動詞が含まれるとき、その目的語も周辺単語に含める手法である。まず、訓練コーパスに対し述語項構造付き英語 HPSG の構文解析を行う。
次に、訓練コーパスのテキスト中に出現する各動詞に対し、その目的語をその動詞の直後に挿入する。具体的には、Enju の解析結果から「verb arg12(動詞-目的語)」の関係を出力した箇所のみ、「動詞 + 空白文字+ 目的語」に変更し、下の例のようなテキストを新たに作成する。

図 2 は Skip-gram モデルのネットワーク構造を表•している。Skip-gram モデルでは、ある単語 wt を入•それぞれ出力とする (予測する) モデルとなっている。

変更後：my mother read shakespeare shake-speare to me. he have agree have to have

CBOW モデルでは周辺の単語に対する重みベクトルの和を計算していたが、Skip-gram モデルでは、単語CBOW モデルでも Skip-gram モデルでも、入力層と中間層をつなぐ重み行列 (各単語に対する重みベクトルの集合) が、word2vec が最終的に生成する単語分

変更前： My mother read Shakepeare to me.

He has agreed to have lunch with me.

力とし、周辺の単語 wt−k , . . . , wt−1 , wt+1 , . . . , wk をwt を入力としてと周辺の単語を一つ一つ予測するモデルとなっている。

手法 2lunch lunch with me.
新しく作成されたテキストを word2vec に学習させ、述語項構造に対する分布表現は手法 1 と同様に、動詞の単語分布表現を x、目的語の単語分布表現を y としたとき x + y を述語項構造に対する分布表現とする。

布表現となる。単語を分布表現に変換することにより単語を意味空間上の 1 点に対応させることができ、意3.3

味的に関連の強い単語グループに分類したり、単語に対する意味的な計算を可能とする利点がある。

手法 3

手法 3 は、動詞とその目的語を一つの単語とみなして CBOW モデルの学習を行う手法である。手法 2と同様にまず訓練コーパスに対し述語項構造付き英語

HPSG の構文解析を行う。次に、訓練コーパスのテキ提案手法

3

スト中に出現する各動詞 v に対し、v とその目的語 o

本研究で提案する述語項構造に対する分布表現の獲得手法について説明する。本研究では 4 つの手法を提を連結した「v : o」を一つの単語として、v を v : o に置き換える。以下に例を示す。

案する。手法 2、手法 3、手法 4 では、述語項構造付•

き英語 HPSG の構文解析を行い、述語項構造付きテ

変更前： My mother read Shakespeare to me.

He has agreed to have lunch with me.

キストから分布表現の獲得を行う。実験では構文解析•に英語構文解析器の「Enju2.4.1」を利用した。

変更後：my mother read:shakespeare shake-speare to me.

3.1

he have agree:have to

have:lunch lunch with me.

手法 1

手法 1 では述語項構造解析を行わず word2vec をそのまま用いて、テキストから単語に対する分布表現を獲得する。次に得られた単語に対する分布表現を用いて述語項構造に対する分布表現を作成する。動詞 v の単語分布表現を x、目的語 o の単語分布表現を y とし続いて、v を v : o に置き換えた訓練コーパスを用いて CBOW モデルの学習を行い、単語に対する分布表
現と v : o に対する分布表現を獲得する。手法 3 においては、v : o に対する分布表現が動詞 v と目的語 o の述語項構造に対する分布表現となる。

たとき、x + y を v と o に対する述語項構造の分布表現とする。

― 76 ―

Copyright(C) 2015 The Association for Natural Language Processing.
All Rights Reserved.

入力層

中間層

出力層

表 1: 述語項構造に対する分布表現の候補
W(t-2)
W(t)
動詞

O(t)
目的語

述語項構造

do-dishW(t-1)

do-nailW(t+1)

do-cleaning
have-lunch
have-tea
make-callW(t+2)

図 3: 手法 4 のニューラルネットワークの仕組み

make-bed

3.4

手法 4

finish-coﬀee
read-shakespeare
enjoy-movie

skip-gram モデルはある単語 wt を入力とし、その周辺の単語を予測するモデルであるが、手法 4 は skipgram モデルを改良し、ある単語 wt が動詞であったとき、wt とその目的語 wo を入力とし、その周辺の単語を予測するモデルとしてニューラルネットワークの学習を行う。手法 4 のニューラルネットワークの構造は、
図 3 のようになり、skip-gram モデルと異なり、入力は二つの単語 (動詞とその目的語) となる。中間層では動詞 wt に対する重みベクトルと目的語 wo に対する重みベクトルの和を計算し、それを中間ノードの値正解とする
意味表現
wash
paint,
put,dressclean,wash
eat
drink
call
clean,
put,
setdrink
readwatch,see

例文

I do the dishes.
I do my nails.
I do the cleaning.
I have a lunch.
I have a tea.
I make a call.
I make the bed.
He finished his coﬀee.
I read Shakespeare.
You enojy the movie.

表 1 は、述語の意味が明示的には表れていない動詞目的語のペアとその本来の意味を表す基本動詞の例を10 個 1 あげている。各手法の評価は、これらの基本動詞を正解として考え、動詞-目的語ペアに対する分布表現との距離を測ることによって行った。基本動詞の候補集合は、英語基本動詞活用辞典 [2] に収録されている 385 個の基本動詞とした。としている。述語項構造に対する分布表現は手法 1,2と同様に、動詞の単語分布表現を x、目的語の単語分4.2

布表現を y としたとき x + y を述語項構造に対する分布表現とする。

実験結果

表 2 は提案手法である手法 1 から 4 までのそれぞれの結果を表している。表中の「順位」は、表 1 に記載
される動詞-目的語ペアと基本動詞 385 個とのコサイ

4

実験

4.1

実験設定

ン類似度をそれぞれ計算し、正解例となる基本動詞が385 個中何位だったかを示している。また、ランキングの精度を測るために平均逆順位 (Mean Reciprocal

本 研 究 で は word2vec を 用 い て 実 験 を 行った 。

word2vec にはいくつかのオプションがあり、学習のモデルについては、手法 1,2,3 では CBOW モデルを用い(-cbow1)、手法 4 では skip-gram モデルを改良したモデルを用いた。word2vec のウィンドウサイズは最大8 単語 (-windows 8) とし、ネガティブサンプリングのネガティブサンプルの個数は 25 個 (-negative 25) とし、階層的ソフトマックスは使用しなかった (-hs 0)。
また、中間層のノード数は 200 次元とした。
ニュー ラ ル ネット ワ ー ク を 学 習 す る た め の 訓 練
コーパスとして、英語大規模コーパスである En-glish Gigaword 4th edition(LDC2009T13, nyt eng,199412,199504, 約 1055 万語) と Corpus of Contemporary American English(COCA), Corpus of Historical AmericanEnglish(COHA) を用いた。COCA とＣ
ＯＨＡは合わせて約 14 万語から成る。

Rank, MRR) の評価を行った。
表 2 より、今回のデータセットでは手法 3 が最も良い平均順位と平均 MRR スコアとなった。また、手法2 は手法 1 よりも良い平均順位と平均 MRR となっているため、動詞とその目的語をデータに組み込むことでより良い述語項構造に対する分布表現が得られていると考えられる。一方、word2vec の入力層を 2 入力に変更し、skip-gram モデルを利用した手法 4 は全手法の中で最も低い順位と MRR スコアとなってしまったが、この原因の解明については将来の課題とする。
得られた述語項構造に対する分布表現の性質を分析するため、“read-shakespeare” と “make-bed” の 2 つの述語項構造に対して次の実験を行った。表 2 から
1 動詞-目的語のペアの候補の選択には「たった３つの動詞で日常生活の 8 割を表現する方法」という web ページ (http://englishleaders.com/hot-three-verbs/(2015 年 1 月 20 日参照)) を参考にした。

― 77 ―

Copyright(C) 2015 The Association for Natural Language Processing.
All Rights Reserved.

表 2: 実験結果
正解とする
意味表現

述語項構造

1

do-dish2

do-nail3

do-cleaning

4
5
6

have-lunch
have-tea
make-call7

make-bed

8
910

finish-coﬀee
read-shakespeare
enjoy-movie

手法 1
順位
35
65
20
176
21
110
1
2
167
25
276
2
1
10
9

MRR
0.028651.31250.4206wash
paintputdressclean,
washeatdrink
callcleanput
set
drink
read
watch
see

平均

手法 2

0.00240.0284
10.5
10.0195
0.5
10.1056

手法 3

順位
1271
31
107
740
1
1127
11148
2
1106MRR
0.083329.75

0.4864

順位
1548
1
4
6
5
1
1
22
33
103
1
1113
27

0.00190.08391
1
10.0449
0.5
10.1333

23.8125

MRR
10.38120.20830.2
110.00281
10.0023
0.5841

手法 4
順位151080
173
43
3
2
1
13
203
116
2
12
4MRR
0.066732.1875

0.4056

0.05710.17830.33330.510.0452
0.5
10.375“read-shakespeare” は “read” と非常に近いことがわ
かるが、本来の「本を読む」という意味と近くなっていのようにベッドを整える、整頓するという意味を持つるかどうかわからない。そこで、“read-shakespeare”

まい、この場合には述語項構造を概念表現できていなに対し、“read-book”、“read-people” と “feel” に対すいことがわかる。にもかかわらず、“go-bed” や “sleep” と近くなってしるコサイン類似度を測ってみた。表 3 はその結果を表している。“read-shakespeare” は “read”,“read-book”など本に関する単語はコサイン類似度が近く、“read-people” とは離れていることがわかる。“read-people”という述語項構造は “He can’t read people.” という例文のように雰囲気を読むという意味で使用されることが多い表現であるため、“read-shakespeare” の意味表現と差異化できていることがわかる。

5

おわりに
本研究は word2vec の手法に基づき述語項構造に対する分布表現を獲得する手法を提案した。述語項構造付き英語 HPSG の構文解析を行うことによって述語項構造が付与されたテキストを生成し、生成されたテキストに対し単語予測の擬似的なタスクをニューラルネットワークで学習することによって、述語項構造に

表 3: read-(shakespeare, people) とのコサイン類似度

read-people
read-shakespeare
readread-bookfeelreadshakespeareとのコサイン類似度0.25420.47180.28490.2009

動詞と目的語のペアを一つの単語とみなして学習する

0.25420.22070.27060.3170

将来の課題として、評価のための述語項構造の例を増手法が最も良い平均順位と平均 MRR スコアを与えた。
やすこと、良い分布表現が得られない場合の原因を解明すること、良い分布表現を得るためのモデルの改良があげられる。

参考文献

表 4: make-bed とのコサイン類似度
go-bedsleep
clean

対する分布表現を獲得した。提案した手法の中では、

read-peopleとのコサイン類似度

make-bed とのコサイン類似度
0.54710.29760.1407[1] Tomas Mikolov, Kai Chen, Greg Corrado, Jeffrey Dean (2013) “Eﬃcient Estimation of Word
Representations in Vector Space”.

表 4 は “make-bed” と “go-bed” を比較した結果を[2] 小西 友七 (1980) 『英語基本動詞活用辞典』 研究社.

示している。“make-bed” は “Please, make the bed.”― 78 ―

Copyright(C) 2015 The Association for Natural Language Processing.
All Rights Reserved.