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

系列編集モデルに基づく単語ベクトルからの定義文生成
石渡祥之佑 †林佑明 ‡Graham Neubig‡
吉永直樹 §豊田正史 §喜連川優 ¶§† 東京大学 ‡Carnegie Mellon University § 東京大学生産技術研究所 ¶ 国立情報学研究所{ishiwatari, ynaga, toyoda, kitsure}@tkl.iis.u-tokyo.ac.jp{hiroakih, gneubig}@cs.cmu.edu

1

はじめに
単語ベクトルは単言語コーパスから教師なし学習によって獲得可能であるため，未知語に対して意味表現を付与することのできる有力な手法である．これを活用し，単語ベクトルから人間が解釈可能な定義文への変換を行うタスクが Noraset ら [1] により提案されている．このタスクの性能改善は，任意の未知語に対する定義文の自動付与を実現し得る点で意義が大きい．
本タスクを解くにあたり，Noraset らは LSTM 言語モデルを用いた定義文の生成手法を提案した．この手法は教師あり学習によって単語ベクトルから単語系列（定義文）への写像関数を訓練する．この際，定義文特有の構造やパターンは考慮されず，あくまで単語ベクトルに条件付けられた言語モデルとして訓練される．

図1

本研究では，単語の定義文には “the act of ...ing” や提案手法：系列編集モデルに基づく定義文生成．

赤色は提案手法で追加した機構を表す．

“of or pertaining to ...”，“one who ...” 等頻出のパターンが存在しており，かつ意味類似度の高い単語の定義文は共通のパターンで記述されることが多い点に着類似度の高い対訳ペアを学習データから抽出し，翻訳目する．たとえば，単語 “ruble” の定義文は “the basicの手がかりとして活用するモデルを提案している．

unit of money in russia” であり，この語とベクトルこれらの研究はいずれも学習データに含まれる系列空間における距離の近い “lira” の定義文は “the basicを編集する手法の有用性を示唆しているが，この手法をunit of money in turkey” である．こうした性質をふ定義文生成タスクに適用する方法は自明ではない．そまえると，単語系列を生成する問題である定義文生成

こで，本研究では単語ベクトルからの定義文生成タス

タスクは，既知の単語系列を適切に書き換える問題とクに特化した系列編集モデルを提案する．提案手法のして解く方法が有効と考えられる．

概要を図 1に示す．提案モデルは，まず入力された単一方，単語系列の生成を伴う様々なタスクにおいて，語との関連性が強い語の集合をベクトル空間における系列を編集するアプローチの有効性は既に報告されて近傍探索により抽出する．抽出した関連語の定義文をいる．定義文生成とは異なるタスクであるが，Guu ら

LSTM エンコーダ（図 1左）を用いてモデルに入力し，[2] は言語モデリングにおいて，訓練データから文をラLSTM 言語モデル（図 1下）がこれを適宜編集しつつンダムに抽出し，その文を Encoder-decoder モデルに定義文生成を行うように学習を誘導する．

より編集する手法を提案している．また，Gu ら [3] はWordnet / GCIDE 辞書コーパスを用いた実験にお機械翻訳において，検索エンジンを用いて原言語文といて，提案手法は従来手法と比較して Perplexity 0.36ポイント，BLEU 0.62 ポイントの改善が確認された．

― 682 ―

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

2 単語ベクトルからの定義文生成

3 提案手法本研究で取り組む定義文生成は，事前訓練された単提案手法は，学習データ内に存在する単語 w∗ の関連語ベクトルを入力とし，その単語の定義文を出力とす語集合の定義文を書き換えることで，単語 w∗ の定義文るタスクである．Noraset ら [1] により提案された Seedを得る．図 1に提案手法の概要を示す．まず，単語ベク+ Gated + Character（以降，S+G+CH）は単語ベク

トルのコサイン類似度に基づき v ∗ の近傍探索を行い，トルから定義文への写像を学習するモデルであり，（1）上位 N 位までの単語 {w(1) , ..., w(N ) } を w∗ の関連語

LSTM 言語モデル，（2）CNN 文字情報エンコーダ，（3）とする．
次に，各関連語 w(n) について，その定義文 X (n) =ゲート関数で構成される．このうち，（2）は「似た文字列の単語は，似た意味を持ちやすい」という言語的性質(n)をモデルに反映し，（3）は定義文生成に際して単語ベ(n)hiクトルの情報をどの程度重視するかを動的に制御する．
入力単語 w∗ の定義文 Y = {y1 , ..., yT } の生成確率(n){x1 , ..., xT } を双方向 LSTM エンコーダ
(n)

(n)

= Bi-LSTM(hi−i , xi )

(11)

(n)

(n)

により隠れ層ベクトル {h1 , ..., hT } にエンコードする（図 1左）．続いて，得られた N 個の隠れ層ベクトルは，条件付き確率∗p(Y |w ) =T∏の集合それぞれに対し，アテンション機構∗p(yt |w , y1 , ..., yt−1 )

(1)

(n)
d˜t = C-Attention(st , h(n) )t=1(12)で表現される．この条件付き確率は LSTM 言語モデルによる重み付け和を計算し，N 個の関連語それぞれに[4] により近似され，時刻 t における単語 yt の生成確率

対する文脈ベクトル {d˜t , ..., d˜tを以下のように算出する．

ここで，C-Attention(·) は各隠れ層ベクトル hi(1)(N )} を得る（図 1中央）．
(n)v0 = v ∗(2)

st = LSTM(vt−1 , s′ t−1 )(3)s′t = GATE(st , v ∗ , c∗ )p(yt |y<t , w∗ ) = softmax(Ws′ s′t + bs′ ).に対する重み付け和を下式に基づき算出する．
(n)d˜t =(4)

T∑

(n)

(n)

(13)

αi hi

i=1(5)(n)αi(n)T= softmax(Uh hiUs st )(14)

ここで，v ∗ は単語 w∗ の単語ベクトル，st は時刻 t に

ここで，Uh と Us はそれぞれエンコーダと言語モデル

おける LSTM の隠れ層ベクトル，vt−1 は時刻 t − 1 にの隠れ層ベクトルを同一空間に写像する行列である．

∗

出力された単語 yt−1 の埋め込み表現，c は CNN 文字

さらに，N 語の関連語がそれぞれ w∗ の定義文生成

情報エンコーダにより得られた単語 w∗ の文字情報ベに対してどの程度支配的であるかを動的に制御考慮す

クトルである．また W ，bるため，式(12)とは異なる別のアテンション機構

s′s′はそれぞれ GATE(·) 関′

数の出力ベクトル s t を語彙サイズ次元の空間に写像

dt = N-Attention(st , d˜t )する重み行列とバイアス項である．

によって N 個の文脈ベクトルの重み付け和を計算し，式(4)のゲート関数は以下のように定義される．

f = [v ∗ ; c∗ ](6)zt = σ(Wz [f ; st ] + bz )(7)

rt = σ(Wr [f ; st ] + br )(8)s̃t = tanh(Ws [(rt ⊙ f ); st ] + bs )(9)s′t = (1 − zt ) ⊙ st + zt ⊙ s̃t(10)ここで，σ(·) はシグモイド関数，⊙ はベクトルの要素積，; はベクトルの連結をそれぞれ表す．また各 W はdt を得る（図 1右上）．ここで，式(11)-(14)でエンコー
ダは N 文の定義文に対し，それぞれ独立に文脈ベクトルを計算している点に注意が必要である．これにより，(n)d˜t は n ごとに異なる空間に存在している．この差異を吸収するため，複数のエンコーダの出力を階層的に組み合わせる手法 [5] に倣い，N-Attention(·) ではエン(n)コーダごとに独立した写像行列 Udを導入し，下式のように dt を算出する．

重み行列，各 b はバイアス項である．時刻 t において，更新ゲート zt はLSTMの出力 st をどの程度更新する∗(15)∗かを制御し，リセットゲート rt は v および c に含まれる情報が言語モデルに与える影響の強さを制御する．

― 683 ―N∑(n) (n)βn Uβ d˜t(16)(n) (n)Tβn = softmax(Ud d˜t Us st )(17)

dt =n=1Copyright(C) 2018 The Association for Natural Language Processing.
All Rights Reserved.

コーパス

単語数

定義文数

平均文長Train
ValidTest

21,9982,574
2,748

146,789
18,68918,676

7.63
7.71
7.73

S+G+CH

提案手法-2300 * 2 次元
300 次元Bi-LSTM の層数
Bi-LSTM の隠れ層 s
アテンション機構の隠れ層
単語ベクトル v ∗文字情報ベクトル c∗

表1 定義文生成実験に用いたデータセット

LSTM の層数
LSTM の隠れ層 h

ここで，式(14)の Uh が単一の行列であるのに対し，語彙サイズ(n)(n)式(17)の Ud および式(16)の Uβ はいずれも n ごとDropout rateに異なる行列である．

最適化手法

最後に，得られた文脈ベクトル dt を v ∗ ，c∗ とともに

表2 各モデルのハイパーパラメタゲート関数への入力とし，S+G+CH モデルの式(6)をf = [dt ; v ∗ ; c∗ ](18)で置き換えることで，関連語の定義文の情報を言語モ

トル*5 を v ∗ として使用する．また，この単語ベクトルは LSTM 言語モデルの単語埋め込み層初期化にも使用する．

デルへと伝達する（図 1右下）
．

4.3

4 実験
4.1

300 次元160 次元2300 次元
20,0000.2
ADAM (推奨設定)

評価手法

提案手法の有用性を評価するため，定義文生成タス
クにおいて自動評価と人手評価を行う．自動評価には，データセット

定義文生成タスクにおける提案手法の有用性を評価するため，先行研究 [1] に倣い dict-definition*1 ツ

先行研究に倣い sentence-bleu.cpp*6 による文レベル BLEU の平均を使用する．
人手評価では，下記 5 段階のスコアにより定義文のールキットを用いて WordNet[6]*2 および GCIDE*3 から抽出された英語辞書データを実験に用いる．各エン評価を行う．

トリは単語と定義文のペアからなり，一つの単語に複5

入力単語の定義文として完全に正しい．

数の定義文があるものも存在する．このデータセット

4

定義文としておおよそ正しいが，情報の抜けや余をランダムに 3 分割し，それぞれ Train，Valid，Testデータとした．分割の際，3 つのデータセット間で同じ計な情報，文法ミスが存在する．
完全に正しくはないが，入力単語と関連する語の3単語が重複して出現しないよう制約を設けた．データセットの統計量は表 1に示す．

4.2

モデル

定義文としては成立する．

2

ほぼ誤りだが，正解の定義文を一部含んでいる．

1

正解の定義文を全く含まず，誤りである．一単語を従来手法 S+G+CH モデルと提案手法はそれぞれ深多数回繰り返している．定義文が入力単語を含む．

層学習フレームワーク Pytorch*4 によって実装した．提案手法が S+G+CH モデルと異なるのは，3節で述べた関連語のエンコーダ，およびそれを単一のベクトルに合成する 2 つのアテンション機構の存在のみであり，その他のハイパーパラメタは両手法で共通である．モ

評価者は Test データからランダムに抽出した 300 例について，各手法の出力した定義文に 5 段階のスコアをつける．なお，この評価は英語母語話者 1 名が行った．

4.4

実験結果

ベースラインと提案モデルの出力例を表 3に示す．入デルの詳細は表 2に示す．
式(6)に示すように，t = 0 のとき LSTM への入力は単語ベクトル v ∗ となる．先行研究に倣い，CBOW モ
デル [7] によりニュースコーパスから学習されたベク

力単語 “unpack” に対し，S+G+CH モデルは “to” から定義文生成をはじめており，入力単語が動詞であることは認識できていることがわかる．しかし，出力された定義文 “to put into a place or place” は誤りである．

*1 https://github.com/NorThanapon/dict-definition*2 https://wordnet.princeton.edu/*5 https://code.google.com/archive/p/word2vec/*3 http://gcide.gnu.org.ua/*6 https://github.com/moses-smt/mosesdecoder/*4 http://pytorch.org/

blob/RELEASE-4.0/mert― 684 ―

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

入力単語
参照文

提案手法

unpackto remove from its packing
to separate and remove, as things packed
to open and remove the contents of

S+G+CHto remove the contents of
to put into a place or place

関連語

定義文

stowunwrap
rearrangealphabetize
assembleto pack
to remove the outer cover or wrapping of
to arrange again
to provide with an alphabet
to convene

BLEU

Perplexity

提案手法 (N = 1)

41.27
40.21
40.96

37.09
37.42
38.13

S+G+CH

40.65

37.45

提案手法 (N = 5)
提案手法 (N = 2)

表4 出力された定義文の平均 BLEU

提案手法 (N = 5)

S+G+CH

2+
3+
4+
5

57.14
40.53
19.60
8.97

62.13
42.19
16.94
10.63

平均得点

2.26

2.32

表3 各手法の出力例，および関連語集合（N = 5）

表5 人手評価の累積得点分布および平均

一方，提案手法は関連語 “unwrap” の定義文に含まれる“to remove the”，“of” の二箇所をコピーし，“unpack”の定義文としてふさわしくない “the outer cover or

5 おわりに

wrapping” という箇所は別の単語列 “the contents” に編集していることが確認できる．
自動評価の結果を表 4に示す．提案手法（N = 5）
では，ベースラインに対して BLEU 0.62 ポイント，Perplexity 0.36 ポイントの性能向上が確認された．また，モデルが使用する関連語の数 N を大きくしていく
につれ，BLEU，Perplexity がともに改善されていく

本研究では，定義文に頻出のパターンがある点に着目し，入力単語の関連語の定義文を原型とし，それを編集することで定義文生成を行うモデルを提案した．実験により提案手法が関連語の定義文を参照しつつ定義文生成を行うことが確認されたが，詳細な分析と有用性の評価は今後の課題である．

傾向が見られる．ただし，N = 2 のときは提案手法の謝辞

BLEU がベースラインを下回っており，提案手法の優

本研究の一部は JSPS 科研費 17J06394，16K16109，16H02905 の助成を受けたものです．

位性を確認するためには，（1）学習時の揺らぎを考慮し複数回の試行を行う，（2）より大規模な辞書データセットで実験を行う，等の対応が必要となる．
人手評価によって得られた各手法の累積得点分布および平均得点を表 5に示す．平均得点ではベースラインが提案手法を僅かに上回っているが，ブートストラップ・リサンプリング法 [8] による検定では統計的優位差は確認されなかった．また，表より提案手法では得点が最低点の 1 であった割合がベースラインと比較して5% 程度高いことが読み取れる．主な原因として，提案モデルの出力における未知語（学習データにおける出現頻度が上位 20,000 位以内に入らなかった語）の出現回数が，ベースラインよりも 10.7% 高かった点が挙げられる．提案モデルがベースラインよりも未知語を生成しやすい原因は未だ明らかでないが，この現象の詳細な調査，および語彙サイズを拡大した場合の実験は今後の課題である．

参考文献[1] T. Noraset, C. Liang, L. Birnbaum, and D. Downey. Definition modeling: Learning to define word embeddings innatural language. In AAAI, 2017.
[2] K. Guu, T. B. Hashimoto, Y. Oren, and P. Liang. Generating sentences by editing prototypes. arXiv, 2017.
[3] J. Gu, Y. Wang, K. Cho, and V. O.K. Li. Search engine guided non-parametric neural machine translation. InAAAI, 2018.
[4] T. Mikolov, M. Karafiát, L. Burget, J. Cernockỳ, andS. Khudanpur. Recurrent neural network based language
model. In Interspeech, 2010.
[5] J. Libovický and J. Helcl. Attention strategies for multisource sequence-to-sequence learning. In ACL, 2017.
[6] G. A. Miller. WordNet: a lexical database for english.
Communications of the ACM, 38(11):39–41, 1995.
[7] T. Mikolov, I. Sutskever, K. Chen, G. S. Corrado, andJ. Dean. Distributed representations of words and phrases
and their compositionality. In NIPS, 2013.
[8] P. Koehn. Statistical significance tests for machine translation evaluation. In EMNLP, 2004.

― 685 ―

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