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

概要

理を実現できるという利点がある．そこで本研究では，X コーパスをはじめとするソーシャルメディア

X (旧 Twitter) などのソーシャルメディアでは，口のような実データに対応するような自己注意機構を語に近い文体で文章が記述される傾向にある．こう用いた教師なし統語構造解析モデルを提案する．

した文は文法規則にとらわれない自由な文体で，構文構造について従来のルールベースの手法では解析

2関連研究することができない文が数多く存在する．そこで本Recurrent Neural Network Grammar（RNNG）[4] は，文研究では，実データの例として X コーパスを対象とその句構造をトップダウン，また左から右に同時に，深層学習を用いて統語構造解析を行う教師なしに生成する生成モデルの一つである．Unsupervised

学習モデルを提案する．提案手法では，条件付き確

Recurrent Neural Network Grammars（URNNG） [5] は率場（CRF）による構文木の解析精度の向上を促す

RNNG の，アノテーションされた構文木が必要でよう，Transformer の自己注意機構を入力文の統語構あるという問題点に着目して開発された教師なし

造を反映するように変更したエンコーダを用いる．

学習モデルである．URNNG は，CRF 構文解析器を提案モデルを用いることで，従来のモデルと比較し用いた推論ネットワークと，Stack LSTM [6] と Treeて X コーパスにおける構文解析精度が向上すること

LSTM [7] [8] を用いた生成モデルを組み合わせたが確認された．

アーキテクチャを持ち，変分推論 [9] を用いて学1はじめに習される．推論ネットワークの CRF には，双方向LSTM を用いて抽出された特徴量が入力される．し様々な文字媒体が存在する今日において，それに伴い様々な文体を持つ文が存在している．例えば，

かし，双方向 LSTM の出力には統語構造情報は明示的には反映されていないため，CRF 構文解析器へのX（旧 Twitter）における文は，これまで統語構造解入力としてはまだ改善の余地がある．そこで本研究

析の主な対象となっていた英字新聞コーパスなど

では，より確かな統語構造情報を反映するような制と比べて，文法規則にとらわれない自由な文体を持約を用いて抽出した特徴量を CRF 構文解析器へ与つことが挙げられる．文法規則にとらわれないコーえる手法を提案する．

パスでは，従来の構文規則によるルールベースの手自己注意機構を用いた教師なし統語構造解析モデ法を用いるだけでは，構文構造を解析することがルとして，Wang ら [3] は Tree Transformer を提案してできない文が数多く存在することとなる．一方で，いる．Tree Transformer は Transformer のエンコーダ

Transformer [1] は高い汎用性を持つことから機械翻を用いたモデルで，自己注意機構に入力文の統語構訳にとどまらず，様々な自然言語処理課題に対して造情報を反映するように制約を加える．エンコーダ採用され，高い成果を挙げている．自己注意機構とは，BERT [10] の学習タスクである，[Mask] トーク

は，文中の各単語間の関連性を表すスコアを算出すンに置き換えられた文中の単語を予測する Masked

るもので，潜在的に統語構造情報を捉えている可能

Language Modeling（MLM) により教師なし学習され性が考えられることから，これを工夫した統語構造解析手法が提案されている [2] [3]．深層学習を統語る．しかし，この MLM による学習は，エンコーダのみを学習の対象としているため，デコーダから出構造解析に用いることで， 文を連続値の情報であ力される構文木について予測をするのではなく，エるベクトルで扱うことが可能となり，従来の文法規ンコーダからの出力を用いた [Mask] トークンの予則のマッチングによる処理とは違い，より頑健な処測をしており，統語構造の学習が十分とは言えなれる．
→−→− ←−←−
𝑠𝑖, 𝑗 = MLP( [ ℎ 1 , ..., ℎ 𝑇 ; ℎ 1 , ..., ℎ 𝑇 ](2)

図 1 内の B は構文木のバイナリ行列であり，𝑥𝑖 と𝑥 𝑗 が同じ構成要素に属するときに B𝑖, 𝑗 = 1，属さないときに B𝑖, 𝑗 = 0 を表す．そして，CRF 構文解析器がギブス分布によりバイナリ構文木の分布を分割関数 (3) を用いて，式 (4) のように定義する．
∑∑
𝑍𝑇 (x) =exp(B𝑖′ 𝑗 𝑠𝑖 𝑗 )B′ ∈B𝑇𝑞 𝜙 (B|x) =図 1: URNNG 概要図．（左）CRF 構文解析器を用いた推論ネットワーク（右）RNNG を用いた生成モデ
ル𝑞 𝜙 ( 𝑓 −1 (z)|x) から事後分布が定義される．

本節では，提案モデルのベースとなる URNNG [5]のアーキテクチャについて説明する．各単語を 𝑥，長さ 𝑇 の文を x = [𝑥 1 , ..., 𝑥𝑇 ]，長さ 𝑇 の文に対するラベルなし二分木を z ∈ Z𝑇 として，概要図を図 1に示した．図の左側の推論ネットワークでは，双方URNNG の生成モデルでは，パラメータ 𝜃 を用いて同時確率 𝑝 𝜃 (x, z) を定義する．モデルは，スタッションをサンプリングする．スタックの各要素は，Stack LSTM の隠れ状態と入力ベクトルのペアで構成され，初期スタックを 𝑆 = [(0, 0)]，一番上の要素を top(𝑠) = (ℎ 𝑝𝑟 𝑒𝑣 , 𝑔 𝑝𝑟 𝑒𝑣 ) として表す．各ステップのアクション 𝑧 𝑡 （SHIFT または REDUCE）は，式 (5)よりベルヌーイ分布からサンプリングされる．
𝑧 𝑡 ∼ Bernoulli( 𝑝 𝑡 ),向 LSTM によって抽出された特徴量を用いて，CRF構文解析器で図の点線に示す二分木の分布を生成す

𝑝 𝑡 = 𝜎(w⊤ ℎ 𝑝𝑟 𝑒𝑣 + 𝑏)

(5)

1. 𝑧 𝑡 = 0（SHIFT）の場合る．また，図の右側の生成モデルは RNNG [4] であはじめに，式 (6) で表されるソフトマックス関り，Stack LSTM [6] と Tree LSTM [7] [8] で構成され，数を用いたカテゴリ分布より終端記号（単語）

入力文を復元するように文の生成を行う．

3.1

文の生成

ク表現を利用して SHIFT または REDUCE のアク

基本モデル

3(4)
△

3.2

持った教師なし統語構造解析モデルを提案する．

∑1
exp(
B𝑖 𝑗 𝑠𝑖 𝑗 )𝑍𝑇 (x)𝑖≤ 𝑗

最 後 に，双 射 影 𝑓 : B𝑇 → 𝑍𝑇 よ り，𝑞 𝜙 (z|x) =い．よって，本研究はエンコーダのみの学習ではな
く，エンコーダとデコーダ両方をアーキテクチャに(3)𝑖≤ 𝑗を生成する．

変分推論𝑥 ∼ softmax(Whprev + b)

URNNG は変分推論 [9] によって，事後分布 𝑞 𝜙 (z|x)(6)

そして，生成された単語 𝑥 は Stack LSTM を用を学習可能なパラメータ 𝜙 を用いて定義する．学習いてスタック上にシフトされる．

は以下の式 (1) を最適化することを目的とする．

2. 𝑧 𝑡 = 1（REDUCE）の場合
スタックから最後の要素を 2 つ取り出し，Treemax log𝑝 𝜃 (x) − KL[𝑞 𝜙 (z|x)|| 𝑝 𝜙 (z|x)]𝜃,𝜙LSTM を用いて組み合わせ，新しい表現を得る．

(1)

生成モデルのパラメータ 𝜃 は，Stack LSTM と Tree
はじめに，事後分布 𝑞 𝜙 (z|x) を生成する CRF 構文解析器への入力を，入力文の単語埋め込みと位置埋め込み加えたベクトルに対する双方向 LSTM の出力から得る．双方向 LSTM の出力より前方表現→−→−←−←−[ ℎ 1 , ..., ℎ 𝑇 ] と後方表現 [ ℎ 1 , ..., ℎ 𝑇 ] を隠れ表現として，𝑥𝑖 から 𝑥 𝑗 のスパンスコア 𝑠𝑖, 𝑗 は式 (2) で表さ

LSTM のパラメータである．

4提案モデルURNNG をベースに，双方向 LSTM の代わりにTree-Transformer [3] の木構造自己注意機構（4.1 節）を用いたモデルを提案する．また，木構造自己注意表 1: 事前処理後の X コーパスの例文．
where are @person and @personnooo i dont want to get out of bed
what is ur great m0ment in cricketin the bus with my twins @url there ’s me→−→−←−←−[ ℎ 1 , ..., ℎ 𝑇 ] と後方表現 [ ℎ 1 , ..., ℎ 𝑇 ] を隠れ表現と
図 2: （左）木構造自己注意機構を用いたエンコー
ダ．ブロックは入力文から生成された constituent を表している．層を登るにつれ constituent はマージされ徐々に大きくなる．
（右）エンコーダ各層の構成．

して用いていた．しかし，提案モデルでは双方向LSTM とは異なり，木構造自己注意機構により構文情報を含んだベクトルを既に得ていることから，前方表現と後方表現を使った隠れ表現は不要であると考えられる．そこで提案モデルでは，式 (9) のよう機構を用いるにあたり，スパンスコアの算出方法にに木構造自己注意機構から出力されたベクトルをそついても変更を加える（4.2 節）．のまま用いることによってスパンスコア 𝑠𝑖 𝑗 を表す．

木構造自己注意機構

𝑠𝑖, 𝑗 = MLP( [ℎ𝑡𝑟 𝑒𝑒 ; ℎ𝑡𝑟 𝑒𝑒 ])4.1

URNNG のエンコーダ部がより確かな統語構造情報を抽出するために，木構造自己注意機構を導入する．木構造自己注意機構は，自己注意機構に隣り合(9)ℎ𝑡𝑟 𝑒𝑒 は木構造注意機構の出力を指す．

実験5う単語間の関連性を捉える “Constituent Attention モ

本節では，X コーパスの作成手順を示し，4 章で提ジュール”を導入している．“Constituent Attention モ

案したモデルの性能および有効性を X コーパスを用ジュール”では，N 個の単語を含む文の各単語に対いた実験により検証する．双方向 LSTM を用いた通して，文中の句または節（constituent）の区切りを推測する確率 𝑎 = {𝑎 1 , ...𝑎 𝑁 } を生成する．確率 𝑎 を用常の URNNG と，また木構造自己注意機構を用いたいて，同じ constituent に属する単語同士のみで自己と，提案モデル（URNNG+Tree+Span）で構文解析結注意機構を作用させる制約 “Constituent Priors 𝐶𝑖, 𝑗 ”が果の比較を行った．

生成される．“Constituent Priors 𝐶𝑖, 𝑗 ”は，式 (7) で表される，文中の 𝑖 番目の単語と 𝑗 番目の単語が同じconstituent に含まれるかの確率である．
𝑗 −1∏𝐶𝑖, 𝑗 =𝑎𝑘

スパンスコアを変更する前のモデル（URNNG+Tree)

5.1

X コーパス

英語で記述された X コーパスを用いる．事前処理を行う前の実データを図 4 に示す．実データを以下(7)𝑘=𝑖の手順で事前処理を行い，コーパスを作成する．て徐々に大きくなり，エンコーダ内部で入力文の構• 複数行に改行された文を削除• 本文前後のシンボルを削除

文木を形作る（図 2）．式 (7) を用いて，木構造自己• 文の先頭にあるメンションを削除

注意機構は式 (8) のように求められる．
( 𝑄𝐾 𝑇 )Attention(𝑄, 𝐾, 𝑉)𝑡𝑟 𝑒𝑒 = 𝐶 ⊙ softmax √𝑉𝑑𝑘

• メンション、URL を@person, @URL に置換

上層に移るにつれ constituent は隣同士でマージされ• 絵文字を含む文を削除(8)木構造自己注意機構を用いることで，通常の自己• ハッシュタグを#hash に置換• 1 単語もしくは 2 単語で構成される文を削除

注意機構よりも統語構造情報を反映した特徴量を抽• 同じ文字の連続を 3 文字に制約出することができる．これにより，CRF 構文解析器• 全て小文字にするが効率よく文中に含まれる句または節を捉えること• 文章を文に分割を可能とする．

事前処理を行った後のデータに含まれる例文を4.2

スパンスコア

表 1 に示す．さらに学習効率を上げるために事前処理を行った実データに対して，文に含まれる単語数

URNNG で は，CRF 構 文 解 析 器 に 入 力 す る スの制限を加える．コーパスに用いられる文は 3〜15

パ ン ス コ ア を 双 方 向 LSTM の 出 力 よ り 前 方 表 現

単語で構成されるものに限定し，それぞれ訓練デー

の単語の間で括弧が挿入されるような解析が多くの文において散見され，課題の残る結果となった．
5.3.2

URNNG+Tree

URNNG と比べて数は減ったが，まだ 3〜7 単語の文おいて全ての単語の間で括弧が挿入されるような解析が行われる文が多く見られる結果となった．
しかし，構文木全体として正しい解析は行われていないものの，URNNG よりも部分的に統語構造を捉えようとするような解析が見られた．また，10 単
図 3: 双 方 向 LSTM を 用 い た 通 常 の URNNG，木語以上の長い文に対しては正しい解析が散見され，構造自己注意機構を用いたスパンスコアを変URNNG と比べて解析精度が向上したことが確認で

更 す る 前 の モ デ ル（URNNG+Tree)，提 案 モ デ ル

きたが，全ての単語の間で括弧が挿入されるような（URNNG+Tree+Span）におけるそれぞれの構文解析解析が行われる結果もまだ多く見られた．

結果例．
5.3.3

タ 26,987，評価データ 4,475 であり，単語数ごとのデータ数を表 10 に示す．

5.2

実験設定

URNNG+Tree+Span

3〜7 単語の文おいて全ての単語の間で括弧が挿入されるような解析が行われる文の数が URNNG，URNNG+Tree と比べてかなり減少し，多くの文で正しく構文木を解析することができていた．10 単語

X コーパスは教師データを持たないため，実験で以上の長い文に対しても，全ての単語の間で括弧がは予測される構文木が正しく解析されているか目視挿入されるような解析が行われる文の数は減少し，によって評価を行う．入力文の単語埋め込みを作成

部分的に統語構造を正しく捉えているような解析がする際に使用する Vocabulary には，コーパスに 2 回かなり増加した．これによって，木構造自己注意機以上現れる単語のみを登録し，Vocabulary 数は 7,330

構は CRF 構文解析器のパフォーマンスを向上させ，となった．学習の際，Epoch を 15，batch 数を 16 とさらに，スパンスコアを変更するこで変更前では重する．また，提案モデルにおいて木構造自己注意機複していた統語構造情報が正しく CRF 構文解析器

構を 10 層，Multi-Head 数を 8 に設定した．

へ入力されたことが考えられる．

5.3

実験結果

6まとめ

双方向 LSTM を用いた通常の URNNG，木構造自己注意機構を用いたスパンスコアを変更する前のモデを用いた教師なし統語構造解析モデルを提案した．

ル（URNNG+Tree)，提案モデル（URNNG+Tree+Span）

木構造自己注意機構を用いることで，CRF 構文解それぞれの実験結果を示し，考察を行う. 解析結析器のパフォーマンスを向上させ，従来の双方向果の例を図 3 と付録に示す．解析結果の描画にはLSTM を用いたモデルを上回る結果を実験により確

Syntax Tree Generator1）を用いた．

認した．加えて，スパンスコアの算出方法を変更す

本論文では，X コーパスを解析する自己注意機構ることにより，より正しい統語構造情報を CRF 構
5.3.1

URNNG

文解析器へ入力することができることも実験によ3〜7 単語の文に対して，ほとんどの文が全ての単り示された．今後の展望として，入力文の単語埋め語の間で括弧が挿入されるような解析（図 3 参照）込み表現を BERT を用いて得たり，既存の構文解析が行われていた．これは、双方向 LSTM が少ない単データ Penn Tree Bank を用いた教師あり学習と組み語の文の依存関係を正しく抽出することができてお合わせた半教師あり学習など，モデルの更なる性能向上に取り組みたい．

らず，モデルのパラメータがうまく学習できていな
いと考えられる．8 単語以上の文に対しても，全て
1） http://mshang.ca/syntree/謝辞
本研究は JSPS 科研費 18H05521 の助成を受けたものです．

参考文献[1] Ashish Vaswani, Noam Shazeer, Niki Parmar, JakobUszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser,
and Illia Polosukhin. Attention is all you need. In Proc.
of the 31st NIPS, 2017.
[2] Nikita Kitaev and Dan Klein. Constituency parsing with aself-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 into
self-attention. In EMNLP, 2019.
[4] Chris Dyer, Adhiguna Kuncoro, Miguel Ballesteros, andNoah A. Smith. Recurrent neural network grammars.
CoRR, Vol. abs/1602.07776, , 2016.
[5] Yoon Kim, Alexander Rush, Lei Yu, Adhiguna Kuncoro,Chris Dyer, and Gábor Melis. Unsupervised recurrent
neural network grammars. In Jill Burstein, Christy Doran, and Thamar Solorio, editors, Proceedings of the2019 Conference of the North American Chapter ofthe Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long andShort Papers), pp. 1105–1117, Minneapolis, Minnesota,

June 2019. Association for Computational Linguistics.
[6] Chris Dyer, Miguel Ballesteros, Wang Ling, Austin
Matthews, and Noah A. Smith. Transition-based dependency parsing with stack long short-term memory. In
Chengqing Zong and Michael Strube, editors, Proceedings of the 53rd Annual Meeting of the Associationfor Computational Linguistics and the 7th International Joint Conference on Natural Language Processing (Volume 1: Long Papers), pp. 334–343, Bei-jing, China, July 2015. Association for Computational Linguistics.
[7] Kai Sheng Tai, Richard Socher, and Christopher D.
Manning.
Improved semantic representations fromtree-structured long short-term memory networks. InChengqing Zong and Michael Strube, editors, Proceedings of the 53rd Annual Meeting of the Associationfor Computational Linguistics and the 7th International Joint Conference on Natural Language Processing (Volume 1: Long Papers), pp. 1556–1566, Bei-jing, China, July 2015. Association for Computational Linguistics.
[8] Xiaodan Zhu, Parinaz Sobhani, and Hongyu Guo. Long
short-term memory over tree structures. CoRR, Vol.
abs/1503.04881, , 2015.
[9] Diederik P Kingma and Max Welling. Auto-encoding variational bayes, 2022.
[10] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina

Toutanova. BERT: Pre-training of deep bidirectionaltransformers for language understanding. In Proceedings of the 2019 Conference of the North American
Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1(Long and Short Papers), pp. 4171–4186, Minneapo-lis, Minnesota, June 2019. Association for ComputationalLinguistics.

A

事前処理前の実データ

図 4: 事前処理前の実データ．

B

事前処理後の X コーパス

図 5: X コーパスに含まれる文の単語数による内訳．

図 7: 6 単語の文における構文解析結果例．

図 8: 7 単語の文における構文解析結果例．

（上）訓練データ．
（下）評価データ．

C

構文解析結果例
左 か ら 双 方 向 LSTM を 用 い た 通 常 の URNNG，

木構造自己注意機構を用いたスパンスコアを変更する前のモデル（URNNG+Tree)，提案モデル（URNNG+Tree+Span）におけるそれぞれの構文解析結果例を示す．

図 9: 10 単語の文における構文解析結果例．

図 6: 5 単語の文における構文解析結果例．

図 10: 12 単語の文における構文解析結果例．