木構造自己注意機構による教師あり統語構造解析
成田百花 1 持橋大地 2 小林一郎 1
1 お茶の水女子大学 2 統計数理研究所{g1820529,koba}@is.ocha.ac.jp daichi@ism.ac.jp

概要

コーダの双方向 LSTM によって抽出した入力文の特徴量を用いて，デコーダの Chart Parser が文の “句ま本研究では，Transformer のエンコーダにおける自たは節を構成する単語間” と “品詞” それぞれの評価

己注意機構を入力文の統語構造を反映するように変点を算出し，文の最適な構文木を予測する．また，更し，抽出された特徴量を用いてデコーダにおいて構文木構造を生成する新しい統語構造解析モデルを

Gaddy ら [5] は Stern らの Chart Parser に修正を加えたモデルを提案している．そして，Kitaev ら [2] は，提案する．提案モデルを用いることで既存のモデル

この Gaddy らのモデルのエンコーダに双方向 LSTMと比較して，WSJ コーパスにおける 𝐹1 スコアをはではなく，自己注意機構を用いたモデルを提案してじめとする評価実験において構文解析精度が向上すいる．Stern ら，Gaddy ら，そして Kitaev らのモデルることが示された．また，提案モデルにおいてエンでは，双方向 LSTM と自己注意機構が統語構造情報コーダの中間層の出力を用いた統語構造解析手法にを算出することを前提としてデコーダへの入力としついても実験結果を示す．ている．しかし，双方向 LSTM と自己注意機構の出1

はじめに力には統語構造情報は明示的には反映されていない
ため，デコーダに用いる情報としてはまだ改善の余近 年，自 己 注 意 機 構 を 用 い た 深 層 学 習 モ デ ル

地がある．そこで本研究では，エンコーダの出力にTransformer [1] が，高い汎用性を持つことから機械より確かな統語構造情報を反映するような制約を用翻訳にとどまらず，様々な自然言語処理課題に対しいて抽出した特徴量をデコーダの入力とする手法をて採用され，高い成果を挙げている．自己注意機構

提案する．
自己注意機構を用いた教師なし統語構造解析モデとは，文中の各単語間の関連性を表すスコアを算出するもので，潜在的に統語構造情報を捉えている可ルとして，Wang ら [3] は Tree Transformer を提案し能性が考えられることから，これを工夫した統語構ている．Tree Transformer は Transformer のエンコー造解析手法が提案されている [2] [3]．深層学習を統ダを用いたモデルで，自己注意機構に入力文の統語語構造解析に用いることで， 文を連続値の情報で構造情報を反映するように制約を加える．エンコーあるベクトルで扱うことが可能となり，従来の文法

ダは，BERT [6] の学習タスクである，[Mask] トーク規則のマッチングによる処理とは違い，より頑健なンに置き換えられた文中の単語を予測する Masked処理を実現できるという利点がある．その一方で，Language Modeling（MLM) により教師なし学習され統語構造解析研究においては，これまでに構築される．しかし，この MLM による学習は，統語構造情た多くの統語構造解析結果のデータが存在する．双報について予測を行いモデルを学習しているのでは方の利点を活かすことを考え，本研究では自己注意なく，[Mask] トークンの予測を対象に学習をしてい機構を用いた教師あり統語構造解析モデルを提案るため，統語構造の解析が十分とは言えない．よっする．て，本研究は統語構造情報を含む値を予測値とし，2

関連研究
代表的な統語構造解析手法として，CKY アルゴリズムがある．CKY アルゴリズムを模倣した手法

既存の統語構造解析結果のデータを用いた，教師あり統語構造解析モデルを提案する．

3

基本モデル

として，Stern ら [4] はニューラル手法による Chart

本 節 で は，提 案 モ デ ル の ベ ー ス ラ イ ン と な る

Parser を提案している．Stern らのモデルでは，エンKitaev ら [2] のアーキテクチャについて説明する．

3.2Chart Decoder

構文木 𝑇 は文中の 𝑖 番目の単語で始まり 𝑗 番目で終わる句または節と，その品詞 𝑙 の集合によって式(5) のように表される．|𝑇 | は集合の数，すなわちその文に含まれる句または節の合計数である．
𝑇 = {(𝑖 𝑡 , 𝑗 𝑡 , 𝑙 𝑡 ) : 𝑡 = 1, ..., |𝑇 |}(5)

また，エンコーダからの出力を用いて，各文の構
図 1: 分割自己注意機構．入力文の埋め込みベクト
ル 𝑥 𝑐 と位置埋め込みベクトル 𝑥 𝑝 それぞれに対して

文木 𝑇 に実数値のスコアとして，式 (6) で表される𝑠(𝑇) が生成される．
𝑠(𝑇) =別々に Attention が計算され，その後に結合される．

∑𝑠(𝑖, 𝑗, 𝑙)(6)(𝑖, 𝑗,𝑙) ∈𝑇

エンコーダ部には分割自己注意機構（3.1 節），デ𝑠(𝑖, 𝑗, 𝑙) は品詞 𝑙 を持つ文中の 𝑖 から 𝑗 番目の単語間

コ ー ダ 部 に は Stern ら [4] の Chart Parser に Gaddyの実数値のスコアである．生成された 𝑠(𝑇) のうちら [5] が修正を加えた Chart Decoder（3.2 節）を用い最も高いスコアのものが，CKY 法を模倣した式 (7)たモデルである．の推測アルゴリズムによって選ばれ，構文木 𝑇 の最𝑁 個の単語を含む入力文の埋め込みベクトル適な統語構造として予測される．

𝒙 (𝑐) = [𝑐 1 , 𝑐 2 , ..., 𝑐 𝑁 ] を BERT [6] の最終層の出力か𝑇ˆ = arg max 𝑠(𝑇)𝑇ら抽出する．また，入力文の位置埋め込みベクトルを 𝒙 ( 𝑝) = [ 𝑝 1 , 𝑝 2 , ..., 𝑝 𝑁 ] とする．

3.1

(7)

このように Chart Decoder を用いることで，構文木のスコア，すなわち統語構造情報を予測値とすること

分割自己注意機構ができる．また Chart Decoder は，CKY アルゴリズ

通常の自己注意機構では埋め込みベクトル 𝒙 (𝑐) とムを模倣したシンプルで合理的なアーキテクチャで位置埋め込みベクトル 𝒙 ( 𝑝) を足し合わせたベクトありながら，WSJ データのみで学習した解析器の中

ル 𝒙 = 𝑥 (𝑐) + 𝑥 ( 𝑝) に対して Attention を計算する．しでは最も高い性能を達成していることから, 本研究かし，分割自己注意機構では 𝒙 (𝑐) と 𝒙 ( 𝑝) それぞれに対して別々に Attention を計算する．分割自己注

でもこれを採用することにする．

意機構の入力 𝒙，パラメータ行列 𝑊，𝑐 = 𝑊𝑥 をそれ

図 2 に提案モデルの全体の構造を示す．エンコー

ぞれ式 (1)，式 (2)，式 (3) とする．
𝒙 = [𝑥 (𝑐) ; 𝑥 ( 𝑝) ][]𝑊 (𝑐)0𝑊=0
𝑊 ( 𝑝)(1)𝑐 = [𝑐 (𝑐) ; 𝑐 ( 𝑝) ] = [𝑊 (𝑐) 𝑥 (𝑐) ; 𝑊 ( 𝑝) 𝑥 ( 𝑝) ](3)(2)ダ部に Wang ら [3] の”Constituent Attention モジュール”を導入した木構造自己注意機構（4.1 節）を用いて，入力文の統語構造情報を抽出する．エンコーダから抽出された情報に基づき，デコーダ部の Chart
Decoder（3.2 節）で構文木のスコアを算出し，教師

以上より，入力 𝑥 から得られる Query，Key，Value
はそ れぞ れ 𝑄 = [𝑞 (𝑐) ; 𝑞 ( 𝑝) ]，𝐾 = [𝑘 (𝑐) ; 𝑘 ( 𝑝) ]，𝑉 =[𝑣 (𝑐) ; 𝑣 ( 𝑝) ] となる．Query，Key，Value と，Key の次
元 𝑑 𝑘 用いて自己注意機構は式 (4) で表される．
( 𝑄𝐾 𝑇 )Attention(𝑄, 𝐾, 𝑉) = softmax √𝑉(4)𝑑𝑘
内積 𝑄𝐾 𝑇 は 𝑞 (𝑐) · 𝑘 (𝑐) + 𝑞 (𝑣) · 𝑘 (𝑣) に分解される．
図 1 に式 (4) の値の導出過程を示す．

提案手法

4

あり学習を行う．

4.1

木構造自己注意機構

木構造自己注意機構は統語構造情報を抽出するために，3.1 節の分割自己注意機構に隣り合う単語間の関連性を捉える”Constituent Attention モジュール”を導入する．”Constituent Attention モジュール”では，N 個の単語を含む文の各単語に対して，文中の句または節（constituent）の区切りを推測する確率 𝑎 = {𝑎 1 , ...𝑎 𝑁 } を生成する．確率 𝑎 を用いて，同4.2

中間層を用いた統語構造解析

通常の統語構造解析では，エンコーダの最終層の出力に基づいて，デコーダが入力文の構文木を予測する．しかし，入力文によって構文木の深さは異なり，それに合った統語構造情報が必要となると考えられる．そこで，エンコーダ内部に constituent で構
文木を形作る木構造自己注意機構の性質を利用して，エンコーダの中間層の出力をデコーダの入力とし，統語構造を解析する手法を提案する．
図 2: 提案モデルの全体図．エンコーダには，分割アルゴリズムを Algorithm 1 に示す．

自己注意機構に”Constituent Attention モジュール”をAlgorithm 1 中間層を用いた統語構造解析導入した木構造自己注意機構，デコーダには ChartDecoder を用いる．

1: 𝑚 ← middle layer id
2: score list = []3: for layer = . . . model.encoder.layers dospan score = layer.forward
score list.append(span score)
6: predicted tree = model.parse(score list[𝑚])
4:5:

実験

5
図 3: （左）木構造自己注意機構を用いたエンコー
ダ．ブロックは入力文から生成された constituent を表している．層を登るにつれ constituent はマージされ徐々に大きくなる．
（右）エンコーダ各層の構成．

本節では，4 章で提案した手法を用いたモデルの性能及び有効性を検証する．

5.1

実験設定

実験では，Penn Treebank 1）の WSJ（英字経済新聞

じ constituent に属する単語同士のみで自己注意機構

Wall Street Journal 2））コーパスを用いて，予測されを作用させる制約 ”Constituent Priors 𝐶𝑖, 𝑗 ”が生成される構文木が人間の作成した構文木とどの程度類似しる．”Constituent Priors 𝐶𝑖, 𝑗 ”は，式 (8) で表される，文中の 𝑖 番目の単語と 𝑗 番目の単語が同じ constituentているかを評価する．コーパスのデータ数はそれぞれ，訓練データ 39,832（2-21 章），開発データ 1,700に含まれるかの確率である．

（22 章），評価データ 2,416（23 章）の標準的分割で

𝑗 −1∏ある．学習の際，1 Epoch おきにデータをシャッフルする．Multi-Head 数を 8，batch 数を 32 とした．

𝐶𝑖, 𝑗 =𝑎𝑘

(8)

𝑘=𝑖

5.2

上層に移るにつれ constituent は隣同士でマージされて徐々に大きくなり，エンコーダ内部で入力文の構文木を形作る（図 3）．式 (8) と式 (4) を用いて，木構造自己注意機構は式 (9) のように求められる．
( 𝑄𝐾 𝑇 )Attention(𝑄, 𝐾, 𝑉)𝑡𝑟 𝑒𝑒 = 𝐶 ⊙ softmax √𝑉𝑑𝑘

木構造自己注意機構の有効性検証

本節では，提案手法の木構造自己注意機構の有効性を検証するため，通常の自己注意機構を用いた Kitaev ら [2] のモデル（従来モデル）と，双方向LSTM を用いた Stern ら [4] と Gaddy ら [5] のモデル

(9)木構造自己注意機構を用いることで，通常の自己と比較を行った．また，同じデータセットを用いたより高い精度を持つモデルとして Zhou ら [7] のモデルも表中に示す．この際，4.2 節の手法は用いず，注意機構よりも統語構造情報を反映した特徴量を抽エンコーダの最終層の出力を用いて統語構造解析を出することができる．これにより，Chart Decoder が行う．エンコーダの層数を ℓ として，表 1 に実験結

効率よく文中に含まれる句または節を捉えることを可能とする．

1） https://catalog.ldc.upenn.edu/LDC99T422） https://www.wsj.com

表 1: Penn Treebank での実験結果 [%].
従来モデル (ℓ=2)
従来モデル (ℓ=10)
提案モデル (ℓ=2)
提案モデル (ℓ=8)
提案モデル (ℓ=10)
提案モデル (ℓ=12)
Stern et al. (2017)
Gaddy et al. (2018)
Zhou et al. (2020)

𝐹1

完全一致

品詞

95.75
95.75
95.58
95.58
95.83
95.63
92.56
92.08
96.18

56.22
55.53
55.67
54.71
56.75
54.99
–
––

97.45
97.24
97.44
97.35
97.44
97.33
–
–
–

表 2: 各モデルの解析結果から完全一致した文の長さ |𝑠| ごとの数（WSJ は評価データに含まれる文の各長さの内訳）≤ 20

20 < |𝑠| ≤ 40

> 40

従来モデル (ℓ=2)

740

572

40

提案モデル (ℓ=8)

731

536

51

提案モデル (ℓ=10)

743

579

45

提案モデル (ℓ=12)

735

546

41

WSJ

1034

1211

171

表 3: 中間層を用いた統語構造解析結果（提案モデ
ル (ℓ=12) のエンコーダの各中間層の出力を用いた解析結果から，完全一致した文の長さ |𝑠| ごとの数）

果を示す．精度の評価尺度には 𝐹1 スコア，再現率と適合率が共に 100%である割合（完全一致），品詞の正解率（品詞）を用いた．表より，提案モデルが従来モデルよりも品詞以外の結果が良いことがわか

中間層

≤ 20

20 < |𝑠| ≤ 40> 40

Layer 6Layer 8Layer 10Layer 12 (最終層)

677
714
730
735

430
506530546

25363641る．また，双方向 LSTM を用いたモデルと比較しても精度が高い．これらのことから木構造自己注意機
構は通常の自己注意機構や双方向 LSTM よりも確かな統語構造情報を抽出し，デコーダでの解析を補助し，性能改善に寄与することがわかる．
また，従来モデル (ℓ=10) が従来モデル (ℓ=2) よりも精度が低い理由は，入力文の埋め込みベクトルの生成に BERT を用いているため，これにより既に入力文の特徴がある程度抽出され，その後に多くのエンコーダを積んでしまうと過学習を引き起こす可能性が考えられる．一方で，提案モデル (ℓ=10) が提案モデル (ℓ=2) よりも精度が高い理由は，エンコーダ内部で構文木を形作る木構造自己注意機構の性質により，入力文の構文木を作るためにはある程度の層数を必要とすることが考えられる．

5.3

文の長さにおける有効性検証

本節では，文の長さにおける各モデルの有効性を検証するため，従来モデル (ℓ=2) と提案モデルの，5.2 節の解析結果から完全一致した文の長さごとの数（正解数）を比較する．結果を表 2 に示す．表中の WSJ は評価データに含まれる文の各長さの内訳である．長さが 40 以下の文に対しては，5.2 節において最も精度の高かった提案モデル (ℓ=10) の正解数が多かった．しかし，長さが 41 以上の文については提案モデル (ℓ=8) の正解数が多かった．これにより文の長さによって構文木の深さが異なり，必要となる統語構造情報が異なることが考えられる．

5.4

中間層を用いた統語構造解析結果

本節では，提案手法の中間層を用いた統語構造解
析の結果を示す．提案モデル (ℓ=12) のエンコーダの各中間層の出力をデコーダの入力とし，構文木を予測する．各中間層を用いた解析結果から完全一致した文の長さごとの数を表 3 に示す．表中の中間層はAlgorithm 1 の 𝑚 である．表より，Layer10 と Layer8の出力を用いた際の，長さ 41 以上の正解数が同じことから，完全一致した長さ 41 以上の文では Layer8と Layer10 で出力されるスコアが重複していることが考えられる．以上と 5.3 節の結果から，構文木それぞれに対して適切な中間層から出力される統語構造情報を用いるべきであることが考えられる．

6

まとめ
本論文では，木構造自己注意機構とエンコーダの中間層を用いた統語解析手法を提案した．木構造自己注意機構を用いることで，𝐹1 スコアと完全一致において従来の自己注意機構や双方向 LSTM を用いたモデルを上回る結果を達成できることを実験により確認した．また，エンコーダの中間層を用いた解析結果から，各構文木に対して適切な中間層の出力を用いるべき事がわかった。このことから今後は，ロジスティック回帰などを用いて効率的に各入力文の構文木に適した中間層を選びとるような手法を提案し，モデルの改良に取り組みたい．

参考文献[1] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, and Illia
Polosukhin. Attention is all you need. In Proc. of the 31stNIPS, 2017.
[2] Nikita Kitaev and Dan Klein. Constituency parsing witha self-attentive encoder. In Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 2676–2686, Melbourne,Australia, July 2018. Association for Computational Linguistics.
[3] Yau-Shian Wang, Hung yi Lee, and Yun-Nung (Vivian)Chen. Tree transformer: Integrating tree structures intoself-attention. In EMNLP, 2019.
[4] Mitchell Stern, Jacob Andreas, and Dan Klein. A minimal
span-based neural constituency parser. In Proceedings of the55th Annual Meeting of the Association for ComputationalLinguistics (Volume 1: Long Papers), pp. 818–827, Vancouver, Canada, July 2017. Association for ComputationalLinguistics.
[5] David Gaddy, Mitchell Stern, and Dan Klein. What’s goingon in neural constituency parsers? an analysis. In Proceedings of the 2018 Conference of the North American Chapterof the Association for Computational Linguistics: Human
Language Technologies, Volume 1 (Long Papers), pp. 999–1010, New Orleans, Louisiana, June 2018. Association for
Computational Linguistics.
[6] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina
Toutanova. BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language
Technologies, Volume 1 (Long and Short Papers), pp. 4171–4186, Minneapolis, Minnesota, June 2019. Association for
Computational Linguistics.
[7] Junru Zhou, Zuchao Li, and Hai Zhao. Parsing all: Syntax
and semantics, dependencies and spans. In Findings of theAssociation for Computational Linguistics: EMNLP 2020,
pp. 4438–4449, Online, November 2020. Association for
Computational Linguistics.