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

ニューラルグラフ型係り受け解析器のための文節ベクトル表現
松野 智紀

松本 裕治

能地 宏

奈良先端科学技術大学院大学 情報科学研究科{matsuno.tomoki.mr1, noji, matsu}@is.naist.jp

1

はじめに91.23%を記録し, 注意深く設計された既存の解析器に迫る精度を得ることができた.

近年, 自然言語処理の様々な基礎解析タスクにおいて, リカレントニューラルネットワーク, 特に双方向LSTM による特徴抽出に基づくモデルが大きな成功を収めている. この状況は構文解析でも同様である.
特に LSTM の出力ベクトルから各単語間の依存構造の尤もらしさを独立に計算する単純なグラフ型の係り受け解析器 [6, 1] が英語の Penn Treebank 上で最高精度を達成した他, 2017 年の CoNLL shared task でも多言語構文解析部門でトップとなった [2]. 単純ながら, LSTM が文中の大域的な文脈を捉えた表現を得ることを可能にし, 構文解析に有効な素性が得られているのだと考えられる.
本稿では, このグラフ型構文解析を日本語の文節係り受け解析に適用する際の問題点について議論し, 日本語に適したネットワーク構造を探求する. Universal
Dependencies を始めとし, 単語単位の日本語係り受け解析も研究が進んできているが, 現在も日本語では文節単位の係り受け解析が主流である. CaboCha など
従来の手法は疎な素性に基づくが, これらは二つの文節間の係りやすさを計算する際, 各文節から主辞など重要な単語を抜き出し, それらの組み合わせを素性として利用する. 対して上記ニューラルネットワークに基づく手法では, 密なベクトル間の双線型変換などにより要素間の係りやすさを計算するため, まず文節に対して適切な密ベクトルを割り当てる必要がある.
本稿で最も焦点を当てるのは, この文節ベクトルの有効な構築法である. 京大コーパス上でいくつかの異なるモデルを比較した結果, 以下のことが明らかになった. まず, 文節間の係りやすさを計算する際の, 文節単位の LSTM 層を用意することの重要性を確認した.
また, この文節単位の LSTM 層への入力として, 単語単位 LSTM 層の状態の差分を用いる方法の有効性を確認した. この差分に基づく方法は, 近年句構造解析におけるスパンの表現を得るために用いられているものである [5]. 提案法は京大コーパスにおける実験で2

Deep Biaﬃne parser
本稿で考えるモデルは, Dozat らの Deep Biaﬃneparser [1] を基礎とする. 関連するモデルはいくつか発表されているが, これは CoNLL 2017 shared taskにおいて最高精度を達成したものである.
このモデルは以下の構造になっている.
(1) まず, 入力文の単語列と品詞列から各単語のベクトル表現を作り双方向 LSTM に入力して新たな単語ベクトル表現にエンコードする. i 番目の単語 wi に対する双方向 LSTM の出力ベクトルを yiとする.
(2) 各単語ベクトル表現のペアを, 係り元と係り先で異なる多層パーセプトロンを使って次元圧縮する.
hhead= MLPhead (yi ),ihdep= MLPdep (yj ).
j(3) 最後に, Biaﬃne 変換によって各単語ペアの係り受け関係の尤度を計算する.
TTsi,j = hhead+ hhead
U hdepu.
ii
jsi,j は, 単語 wj の wi への係りやすさのスコアである. Biaﬃne 変換は二つの項からなっている. 最初の項は, パラメータ U による双線型変換で, 二単語の係りやすさを計算する. それに加え, 二番目の項が, wiが主辞になりやすいかどうかを表現する働きを持つ.
以上の操作により, 各単語ペア毎にスコア si,j が得られる. 最後にこれらを入力として Chu-Liu/Edmondsアルゴリズムを走らせることで, 合計スコアが最大となる木構造を得ることができる.

― 600 ―

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

提案手法

3

造解析でも各句に対応する表現を得る目的で利用されここでは Deep Biaﬃne parser の日本語の文節係り受け解析への適用について論じる. 1 節で述べたように, 文節係り受けでは文節間の係りやすさを計算するために, 文節に対する適切なベクトル表現を得なくて[5], 有効性が示されているものである. 具体的には, 単−word } が得られている→y
語層 LSTM の出力 {−y word , ←ii

とき, (i, j) の範囲に当たる文節の表現を, 右方向の差→→−word − ←−word
分−y word − −y word と, 左方向の差分 ←yyji−1ij+1によって表現する. これらは, 単語層 LSTM へ文節にはならない. それらが得られれば, 前節の (2) 以降の含まれる語が入力される前の時刻の状態と入力された手順により, i 番目と j 番目の文節間の係りやすさを後の時刻の状態との差分をとることを意味しており,si,j として計算することができる.

自然に文節の表現を得ることができると考えられる.

以下 3.1 節でモデルを説明するための表記についてまとめた後, 3.2 節で文節ベクトルの構成法についてモデルの構造述べる. ここでは 3 つの方法を述べた後, 4 節でそれ構成について述べる. 文節を入力とした Biaﬃne parserらの比較実験を行う.

を構築する際の最も単純な方法は, 単語層 LSTM を用3.1

次に, これらを用いた具体的なモデルのいずに, 文節内の単語ベクトルの平均等で文節を表現表記

し, それらを文節層 LSTM の入力とするものである.

本研究では文節区切りおよび形態素解析の行われた

しかしながら, この方法では単語同士の統語的なやり文を入力として仮定する. 文中の単語数を n, 文節数とりを直接モデル化することができず, Biaﬃne parerを m で表す. 以下, 単語層と文節層にそれぞれ異なる→LSTM を導入するが, どちらに対しても, −x で i 番目が単語単位の係り受け解析で成功していることを鑑みの要素 (単語または文節) の右方向 LSTM への入力,−→y でその出力を表す. また逆に, ←x− で対応する左方向ことが予測される. そこで本研究では, 単語層 LSTMiiiると, 単語に対する LSTM でのモデル化は重要であると文節層 LSTM の二つを上記 LSTM-Minus によりLSTM への入力, ←y−i でその出力を表すものとする. 単結合したモデルを主な提案手法として, それよりも単語層 LSTM の入力または出力であることを示す必要

純な二つのモデルと比較することで, 単語層 LSTM やがあるときは右肩に word, 文節層の場合は chunk とLSTM-Minus の効果について議論することとする.

記して表記する. また文中の i 番目から j 番目の語を含む範囲を (i, j) と表す.

• LSTM-Minus + 文節層 LSTM: この方法ではまず, 単語層 LSTM により入力単語ベクトル−word と −→x を二つの出力ベクトル ←yy word に変i3.2

文節表現モデル

入力

モデルはまず各単語 wt を表すベクトル xt を

i−→(xi ),yi word = LSTMwordl←y−word = LSTMword (x ).

入力として受けとる. このベクトルは, 単語や品詞などの埋め込みベクトルを結合したもので, 本研究ではこれを, (単語表記, 活用型, 活用形, 品詞, 品詞細分類)を表す各埋め込みベクトルと, 単語の文字表現を表すベクトルとの結合により生成する. 単語の文字表現は,文字用の双方向 LSTM を用い, その始点と終点の文字に当たる出力を結合することで得る. また, 文頭と文i以下で紹介するいくつかのモデルは, 内部で LSTM-Minus という仕組取る. そして, t 番目の文節の範囲が (i, j) である
とき, 文節層 LSTM の入力を, LSTM-Minus を用いて以下のように求める.

−→→→
xt chunk = −y word−−y word
ji−1 ,←−←−←−chunkword
x= y− y word .
tの差分により表現しようというもので, 最初にグラフ型構文解析の素性として導入された [6] 後, 最近句構― 601 ―

ij+1

最後にこれらを入力とする文節層 LSTM により→
出力 {−y chunk , ←y−chunk } を得て, これらを結合すttることで, Biaﬃne 変換への入力 yt を得る.

→−chunkyt = −y chunk⊕←ytt

みを利用する. これは, 単語単位の LSTM から複数単語にまたがるスパンに対する表現を, LSTM の出力間

i方向, 右方向 LSTM であり, 入力列 {xi } を受けれらは文節のベクトルを単語 LSTM の差分で表すときに必要となるものである.

rと LSTMword
はそれぞれ左ここで LSTMword
rl

末には BOS, EOS という特別な記号を用意した. こLSTM-Minus による文節表現i換する.

このモデルの概略を図 1a に示す. なお実験では単語層に 2 層の LSTM を, 文節層に 1 層の LSTMを用いる.

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

BiaﬃneBiaﬃneBiaﬃne
本を読む

本を本を読む＋＋＋minus

minus(forward)
minus(forward)

読む(backward)

minus(backward)

average

よく本をよく読む

本を読む

よく本

読む

(c) 文節層 LSTM のみ(b) LSTM-Minus(a) LSTM-Minus+文節層 LSTM

を

図 1: 比較する三つのモデル. y本を などは各文節を表現するベクトルで, Biaﬃne 変換への入力となる. ここではy本を の生成のみを示すが, y読む なども同様に作られ, スコア計算に利用される.
• LSTM-Minus: より単純なモデルとして, 上のモデルから文節層の LSTM を除き, 単語層からのLSTM-Minus の結果を文節表現としたものを比→較対象とする. すなわち, 上記 −x chunk , ←x−chunkttを用いて,実装詳細4.1
データ実験には京大コーパス 4.0 を用いた. Yoshi-naga ら [7] に従い, 次に示す分割でモデルの訓練・評価を行った.

• 訓練: 1 月 1-11 日の記事と, 1 月から 8 月の社説.

→yt = −xt chunk ⊕ ←x−t chunk• 開発: 1 月 12-13 日の記事と, 9 月の社説.となる. このモデルを図 1b に示す. なお, 上記の• 評価: 1 月 14-17 日の記事と, 10 月から 12 月のモデルと LSTM の層数を合わせるため, 本モデ社説.

ルでは 3 層の単語層 LSTM を用いる.

• 文節層 LSTM のみ: 最後に単語層 LSTM の必実験で用いる単語境界ならびに文節境界には京大コー要性を調べる目的で, 文節層 LSTM のみを用いパスの正解アノテーションを利用する. 単語の埋め込るモデルを用意する. ここでは単純な方法として,みベクトルも含め, モデルの学習に外部資源は一切利

文節内の単語の平均により文節層 LSTM の入力用しない.とする方法を採用した. つまり,パラメータ選択−→xt chunk = ←x−t chunk = average(xi , · · · , xj )パラメータの最適化は確率的勾配降下法 (SGD) で行う. 学習係数は焼きなまし法を用いとし, これらを文節層 LSTM への入力とする. ここでは文節層に 3 層の LSTM を用いる. モデルの概略を図 1c に示す.

た Adam [3] で自動調整する. 焼きなまし法の設定について, 学習係数の減衰率を 0.9 に設定した以外はDozat ら [1] の設定に従った.
次にハイパーパラメータとモデルの初期値について述べる. 表 1 に, LSTM 隠れ層の次元を含めたモデル4全体の大きさをまとめた. 単語や品詞などの埋め込み実験

ベクトルは, dynet のデフォルトの設定に従って初期

これまで述べたモデル間の比較および, 日本語の既化を行った. また LSTM の重みパラメータ行列は, 直存の構文解析器との比較を行う. 提案モデルの実装に交行列により初期化した. 最後に, 単語層 LSTM, 文は, 深層学習ライブラリ dynet [4] を利用した.

節層 LSTM, 多層パーセプトロンの各層にドロップアウト率 0.1 を設定した.

― 602 ―

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

パラメータ名

次元

パラメータ名次元

単語層 LSTM 隠れ層

400

表記素性

100

文節層 LSTM 隠れ層

400

活用型素性

50

文字層 LSTM 隠れ層

50

活用形素性

50

多層パーセプトロン層

500

品詞100

文字埋め込み

100

品詞細分類

100

トワークに基づく手法が他を圧倒し始めていることを考えると, 日本語文節係り受け解析に置いて, この差を埋めることができるのかを明らかにすることは今後の課題である.

おわりに5

本稿では, 双方向 LSTM を用いたグラフ型構文解析

表 1: 実験に用いたパラメータの次元器の日本語文節係り受けへの適用について議論した.

単語層文節層精度提案法

2191.23

LSTM-Minus

3090.13平均 + 文節層 LSTM

0390.52

J.DepP

92.29

CaboCha91.84

文節をエンコードする際, 双方向 LSTM に単語層と文節層の 2 種類を用意することでタスクの精度が向上することが分かった. また, LSTM 出力の差によって文中のスパンの表現を得る LSTM-Minus が, 日本語の文節に対する表現にとっても有用であることを示した. 今後の課題として, (i) 単語・文節分割や品詞タグ付けも含めた end-to-end の文節単位構文解析タスク

表 2: 文節係り受けの精度. 比較手法の評価基準に習への拡張や, (ii) 話し言葉など比較的文節の並びが自い, 最も右の文節については係り受けの評価から除外

由である場合の構文解析タスクへの応用などが考えらした.

れる.

4.2

比較手法

参考文献

3 つの提案法のほか, 既存の日本語構文解析器と比較するため, 代表的な二つの解析器との比較を行った.
一つは CaboCha [8] で, 上で述べた訓練データ上でモデルの学習を行い評価した. もう一つは J.DepP [7]で, こちらはホームページ上1 に掲載されている同じ訓練データを用いた場合の数値を引用した. これらはいずれも決定的な Shift-reduce 型の構文解析器で, 各動作の選択を文節内の単語から抽出した組み合わせ素性を用いて行う.

4.3

結果

表 2 に解析結果をまとめた. 単語層もしくは文節層のみを用いるモデルと比較し, 両方を用いるモデルで約 1 ポイントの精度向上が見られた. これは, 2 種類の[1] Timothy Dozat and Christopher D. Manning. Deep biaﬃne attention for neural dependency parsing. CoRR,abs/1611.01734, 2016.
[2] Timothy Dozat, Peng Qi, and Christopher D. Manning.
Stanford’s graph-based neural dependency parser at theconll 2017 shared task. In Proceedings of the CoNLL 2017
Shared Task: Multilingual Parsing from Raw Text to Universal Dependencies, pages 20–30, Vancouver, Canada,
August 2017. Association for Computational Linguistics.
[3] D.P. Kingma and J. Ba. Adam: A method for stochastic
optimization. arXiv preprint arXiv: 1412.6980, 2014.
[4] Graham Neubig, Chris Dyer, Yoav Goldberg, Austin
Matthews, Waleed Ammar, Antonios Anastasopoulos,
Miguel Ballesteros, David Chiang, Daniel Clothiaux,
Trevor Cohn, Kevin Duh, Manaal Faruqui, Cynthia Gan,
Dan Garrette, Yangfeng Ji, Lingpeng Kong, Adhiguna
Kuncoro, Gopalakrishnan Kumar, Chaitanya Malaviya,
Paul Michel, Yusuke Oda, Matthew Richardson, Naomi
Saphra, Swabha Swayamdipta, and Pengcheng Yin.
Dynet: The dynamic neural network toolkit. CoRR,
abs/1701.03980, 2017.

による素性抽出が文節表現にも有効であることを示[5] Mitchell Stern, Jacob Andreas, and Dan Klein. A minimal
span-based neural constituency parser. In Proc. of ACL,July 2017.

すものである. どちらかの LSTM を用いた場合, 文[6] Wenhui Wang and Baobao Chang. Graph-based dependency parsing with bidirectional lstm. In ACL, 2016.

LSTM を用意することの有効性, 及び LSTM-Minus

節 LSTM のみを用いる手法の方が上回った. これは,Biaﬃne 変換により係りやすさを計算する際, その入力は直接 LSTM の出力であった方が良いことを示唆している. 精度 91.23% は高精度であるが, 注意深く設計された素性を用いる既存の手法には若干劣る数値である. 単語単位の係り受け解析では, ニューラルネッ[7] Naoki Yoshinaga and Masaru Kitsuregawa. Polynomial tolinear: Eﬃcient classification with conjunctive features. In
Proceedings of the 2009 Conference on Empirical Methods in Natural Language Processing: Volume 3 - Volume
3, EMNLP ’09, pages 1542–1551, Stroudsburg, PA, USA,2009. Association for Computational Linguistics.
[8] 工藤 拓 and 松本 裕治. チャンキングの段階適用による日本語係り受け解析. 43(6):1834–1842, 2002.

1 http://www.tkl.iis.u-tokyo.ac.jp/ ynaga/jdepp/― 603 ―

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