# 学会記事
## ニューラル機械翻訳における逆翻訳へのタグ付与の効果

\author{
Benjamin Marie $^{\dagger} \cdot$ Raphael Rubino ${ }^{\dagger}$ 藤田篤 $\dagger$
}

本稿では, 2020 年 7 月に開催された The 58th Annual Meeting of the Association for Computational Linguistics (ACL)において我々が発表したショート論文“Tagged Back-translation Revisited: Why Does It Really Work?” (Marie, Rubino, and Fujita 2020)について, 日本語で紹介する。

## 1 本論文で取り組んだ問題

ニューラル機械翻訳 (NMT) システムの性能を向上させるアプローチとして，対訳データに加 えて単言語データを利用する手法がいくつか存在する。その中で，訓練済みの NMT システム を用いて目標言語の単言語デー夕を起点言語に翻訳することで疑似対訳データを生成し，新た な NMT システムの訓練に用いる『逆翻訳法』(Sennrich, Haddow, and Birch 2016a) は, NMT システムの特にデコーダを強化し，訳文の流暢性を向上させられることが知られている．特に， （正規の）対訳データが小規模にしか存在しない状況下で有用である.

このようにして生成された疑似対訳データには，流暢でない起点言語文や正しい翻訳ではな い文対が含まれる。したがって，逆翻訳法で NMT システムを訓練すると，疑似対訳デー夕の特徵が学習され，それらが翻訳時（デコード時）にも反映されると予想される。NMT システムの 訓練時に疑似対訳データと正規の対訳データを区別するために, Caswell, Chelba, and Grangier (2019) は，疑似対訳データの起点言語側の各文の先頭にタグを付与する手法を提案した. この 手法は，元々は多言語 NMT システムの訓練時に異なる言語対の対訳データを区別するために 考案された (Johnson, Schuster, Le, Krikun, Wu, Chen, Thorat, Viégas, Wattenberg, Corrado, Hughes, and Dean 2017) ものであるが，単一言語対の分野適応にも有用であり (Chu, Dabre, and Kurohashi 2017), 逆翻訳法においても翻訳性能を向上できることが経験的に示された。しかし ながら，実際に異なる対訳データを区別できているか，どのような違いが学習されているかは 解明されていない。

人間が直接作成したテキスト（以下，原テキスト）と比べると，人間によって翻訳されたテ キスト（以下，翻訳テキスト）は，より平易で，文長が短く，語彙が小さいなどの特徴を持つ (Laviosa-Braithwaite 1998)。これらの特徵は, 逆翻訳法で用いられる疑似対訳データの起点言

語文の特徵 (Burlot and Yvon 2018) とも重なる. そこで，逆翻訳への夕グ付与 (Caswell et al. 2019) によって正規の対訳データと疑似対訳データの違いを学習できるか否かを，原テキストと 翻訳テキストに対する NMT システムの性能比較を通じて検証した。

## 2 実験設定

WMT19 の英語・独語翻訳 (en-de) $)^{1}$ WMT15 の英語・仏語翻訳 (en-fr) ${ }^{2}$ の対訳データを用い てNMT システムを訓練, 評価した。逆翻訳の生成元となる単言語データとしては, 英語, 独語, 仏語の各々について WMT が提供するすべての News Crawl から無作為に抽出した 2,500 万文を用いた，モデル選択のための開発用データには，英語・独語翻訳については newstest2016 を，英語・仏語翻訳については newstest 2013 を用いた。これらには原テキストと翻訳テキスト の両方が比較的均等に含まれているためである。評価用デー夕には, 英語・独語翻訳について は WMT10 から WMT19 まで, 英語・仏語翻訳については WMT08 から WMT15 までのすべて の newstestのうち，上記の開発用データ以外を用いた. Moses33ツールを用いてすべてのデー タをトーカナイズし，文字の大小を統制 (truecasing) した.

NMT システムとしては, Transformer Base モデル (Vaswani, Shazeer, Parmar, Uszkoreit, Jones, Gomez, Kaiser, and Polosukhin 2017)を Marian4を用いて訓練した。各言語の語彙は, 対訳データの各言語部分のみに基づいて，バイト対符号化 (Sennrich, Haddow, and Birch 2016b) で 32,000 語を定めた. その他の設定の詳細は Marie et al. (2020)を参照されたい.

まず正規の対訳データのみを用いて NMT システムを訓練し，次にそのシステムを用いて目標言語の単言語デー夕を翻訳することで疑似対訳データを作成した。その際, ビーム幅は 12 ,長さに対する正規化重みは 1.0 とした。そして, 正規の対訳データと疑似対訳データを混合し て用い，新たな NMT システムを訓練した。データの混合前に疑似対訳データの各起点言語文 にタグを付与して得たシステムを“T-BT”，タグを用いずに得たシステムを“BT”と記す.

すべてのシステムを, BLEU スコア (Papineni, Roukos, Ward, and Zhu 2002)で評価した。そ の際, SacreBLEU の“--origlang”オプションで “L1” および “non-L1”（L1 は起点言語のコー ド）を指定することにより，原テキストと翻訳テキストに対する翻訳結果を区別して評価した。
+smooth.exp+test.XXX+tok.13a+version.1.4.2. ただし, “L1”と“L2”は各々起点言語と目標言語の言語コード (en, de, fr のいずれか), “XXX”は評価用データセットの名前である.
}

## 3 実験結果

表 1 に，BT と T-BTの各々による BLEU スコア，および正規の対訳データのみを用いて訓練した NMT システムによる BLEU スコアとの差分を示す。BT は，翻訳テキストについては 多くの場合に BLEU スコアを向上させたものの, 原テキストに対する BLEU スコアを一貫し て低下させた。一方 T-BTは，原テキストに対する BT の負の効果を打ち消し，多くの場合に BLEU スコアを向上させた，BT と T-BTの結果の比較を通じて，訓練時に正規の対訳データ と疑似対訳データをタグで区別することの有用性，およびタグを用いずに訓練した NMT シス テムは疑似対訳データに対して過度に適合することが確認できた。

訓練時と同様に翻訳時に入力文にタグを付与する場合の効果についても調查した. 表 2 に示 すように，原テキストにタグを付与してT-BT を誤誘導した場合，BLEU スコアが低下した。一方，翻訳テキストに対してタグを付与した場合，T-BT は翻訳テキストの翻訳に適した処理を行 うことができ， 8 個の評価データのうち 6 個において BLEU スコアを向上させた.

## 4 考察と今後の課題

実験を通じて，逆翻訳法による NMT システムの訓練は疑似対訳データの特徴に過度に適合 すること，その結果翻訳テキストに対する翻訳品質は向上するものの，原テキストに対する翻訳品質は一貫して低下することを確認した，後者は，「最先端のNMT システムは原テキストよ りも翻訳テキストの翻訳が得意である」(Graham, Haddow, and Koehn 2019; Zhang and Toral 2019）という報告とも符号する。ただし，疑似対訳データに対して夕グを付与し，正規の対訳 データと区別して訓練することより，原テキストに対する翻訳の大幅な品質劣化を回避するこ とができる。また，翻訳テキストの翻訳時に同じタグを付与することで翻訳品質をさらに改善 できる可能性がある.

Marie et al. (2020) では, 正規の対訳データを 20 万文対に減らした少資源設定の実験と，よ り大規模な疑似対訳デー夕（en $\rightarrow \mathrm{fr}$ では 7,660 万文対，それ以外では 1 億 5,000 万文対）を用い た実験についても述べている，少資源の実験では，表 1 とは異なる結果が観察された，具体的 には，逆翻訳法は原テキストの翻訳，翻訳テキストの翻訳の両方において常に翻訳品質を改善 し, タグ付与の効果は希薄であった. 大規模な疑似対訳デー夕を用いた実験では, 逆翻訳の品質の影響がより濃く出るため，BTの原テキストに対する翻訳品質が大幅に劣化し，その分た けタグ付与の効果も大きかった。 ただし, 最終的な BLEU スコアは, 表 1 の T-BT の結果を大 きく改善するほどではなかった。以上より, 逆翻訳法でNMT システムの性能向上を図る際は,疑似対訳データに対してタグを付与し，正規の対訳データと区別すべきである.

今後は, 翻訳テキストの自動検出に関する試み (Rabinovich and Wintner 2015; Rubino, Lapshinova-
表 1 逆翻訳 (BT) およびタグ付き逆翻訳 (T-BT) を用いて訓練したNMT システムによる BLEU スコア

括弧内の数値は, 正規の対訳データのみを用いて訓練した NMT システムによる BLEU スコアとの差分.

表 2 評価用データにも夕グを付与した場合の T-BT モデルの BLEU スコアの増減

Koltunski, and van Genabith 2016)をふまえ，正規の対訳データ中における原テキストと翻訳 テキストの識別, それに基づくNMT システムの訓練技術について研究を進める予定である.

## 参考文献

Burlot, F. and Yvon, F. (2018). "Using Monolingual Data in Neural Machine Translation: A Systematic Study." In Proceedings of the 3rd Conference on Machine Translation: Research Papers, pp. 144-155, Brussels, Belgium. Association for Computational Linguistics.

Caswell, I., Chelba, C., and Grangier, D. (2019). "Tagged Back-Translation." In Proceedings of the 4th Conference on Machine Translation (Volume 1: Research Papers), pp. 53-63, Florence, Italy. Association for Computational Linguistics.

Chu, C., Dabre, R., and Kurohashi, S. (2017). "An Empirical Comparison of Domain Adaptation Methods for Neural Machine Translation." In Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 2: Short Papers), pp. 385-391, Vancouver, Canada. Association for Computational Linguistics.

Graham, Y., Haddow, B., and Koehn, P. (2019). "Translationese in Machine Translation Evaluation." arXiv preprint arXiv:1906.09833.

Johnson, M., Schuster, M., Le, Q. V., Krikun, M., Wu, Y., Chen, Z., Thorat, N., Viégas, F., Wattenberg, M., Corrado, G., Hughes, M., and Dean, J. (2017). "Google's Multilingual Neural Machine Translation System: Enabling Zero-Shot Translation." Transactions of the Association for Computational Linguistics, 5, pp. 339-351.

Laviosa-Braithwaite, S. (1998). "Universals of Translation." In Routledge Encyclopedia of Translation Studies, pp. 288-291. Routledge.

Marie, B., Rubino, R., and Fujita, A. (2020). "Tagged Back-translation Revisited: Why Does It Really Work?" In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pp. 5990-5997, Online. Association for Computational Linguistics.

Papineni, K., Roukos, S., Ward, T., and Zhu, W.-J. (2002). "Bleu: A Method for Automatic Evaluation of Machine Translation." In Proceedings of the 40th Annual Meeting of the Association for Computational Linguistics, pp. 311-318, Philadelphia, USA. Association for Computational Linguistics.

Rabinovich, E. and Wintner, S. (2015). "Unsupervised Identification of Translationese." Transactions of the Association for Computational Linguistics, 3, pp. 419-432.

Rubino, R., Lapshinova-Koltunski, E., and van Genabith, J. (2016). "Information Density and Quality Estimation Features as Translationese Indicators for Human Translation Classifica-
tion." In Proceedings of the 2016 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pp. 960-970, San Diego, USA. Association for Computational Linguistics.

Sennrich, R., Haddow, B., and Birch, A. (2016a). "Improving Neural Machine Translation Models with Monolingual Data." In Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 86-96, Berlin, Germany. Association for Computational Linguistics.

Sennrich, R., Haddow, B., and Birch, A. (2016b). "Neural Machine Translation of Rare Words with Subword Units." In Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 1715-1725, Berlin, Germany. Association for Computational Linguistics.

Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., Kaiser, Ł., and Polosukhin, I. (2017). "Attention is All you Need." In Prodeedings of the 30th Annual Conference on Neural Information Processing Systems, pp. 5998-6008. Curran Associates, Inc.

Zhang, M. and Toral, A. (2019). "The Effect of Translationese in Machine Translation Test Sets." In Proceedings of the 4th Conference on Machine Translation (Volume 1: Research Papers), pp. 73-81, Florence, Italy. Association for Computational Linguistics.

## 略歴

Benjamin Marie: 2016 年フランス・Paris-Sud University で Ph.D. を取得. 同年より NICT 先進的音声翻訳研究開発推進センター研究員。主に機械翻訳を 含む多言語処理の研究に従事.

Raphael Rubino: 2011 年フランス・Avignon University で Ph.D. を取得. 2019 年より NICT 先進的音声翻訳研究開発推進センター研究員. 主に機械翻訳, テキスト品質評価, 機械学習の研究に従事.

藤田篤：2005 年奈良先端科学技術大学院大学情報科学研究科博士後期課程修了。博士 (工学)。2014 年より NICT 先進的音声翻訳研究開発推進センター 主任研究員. 主に言い換え表現の生成と認識, 機械翻訳の研究に従事.


# 学会記事
## GiNZA - Universal Dependenciesによる実用的日本語解析

\author{
松田寛 $\dagger$
}

## 1 はじめに

Universal Dependencies (UD) の日本語解析系として GiNZA ${ }^{1}$ 利用が広がりを見せ，2020 年 1 月から 5 ケ月間のダウンロード数が 2 万回を超えた。また, 2020 年 5 月に公開された UD_Japanese-GSD（日本語 GSD）v2.6 は，日本語 Webテキスト 8,070 文（うち訓練用 7,026 文） に対して国語研基準で正解が与えられた商用利用も可能な本格的なオープン Treebank となっ た $^{2}$. さらに日本語 GSD 全体に固有表現の正解ラベル $3{ }^{3}$ 追加した v2.6-NE が Megagon Labs か ら公開された ${ }^{4}$. この最新の日本語 GSD を訓練データに用いることにより様々な UD 対応 NLP フレームワークで日本語が扱えるようになり，利用者は GiNZA 以外の選択肢も手軽に得られ るようになった，本稿では，GiNZAの使い方など概要を説明した上で，UD 対応 NLP フレーム ワークでの日本語の統語解析が実用レベルにあるかについて文節主辞認定を題材に評価する.

## 2 GiNZA

GiNZA は産業利用を想定して高速・軽量化された NLP フレームワークである $\mathrm{spaCy}^{5}$ と形態素解析器 SudachiPy6を用いて実装されている。Python 3.6 以上を導入済みの環境であれば,

\$ pip install ginza

のコマンド一行でインストールが完結し，spaCyの CNN マルチタスク学習器を用いて UD_ Japanese-BCCWJ (Omura and Asahara 2018) から新聞記事を除外した 41,072 文（うち訓練用 27,314文）に GSK2014-A (橋本，乾，村上 2008)の拡張固有表現を加えて学習した解析モデルを 即座に利用できる。この導入の容易さも利用者の支持を得た一つの要因となっている. GiNZA をインストールすると ginza コマンドが実行パスに登録される. ginzaコマンドは標準入力から
^{4}$ https://github.com/megagonlabs/UD_Japanese-GSD/releases

5 https://spacy.io

 }^{6}$ https://github.com/WorksApplications/SudachiPy

読み込んだテキストの解析結果をタブ区切りの CoNLL-U 形式7で次のように出力する.

Python ライブラリ：GiNZA の機能を Python プログラムで使用するサンプルを付録に示す. 2020 年 6 月中旬に Twitter Search API で東京都の選挙に関連するツイートを取得し, サンプル コードで得た高頻度の依存関係から特徴的なものを選別した結果を表 1 に示す 8.

トークン化とパイプライン：GiNZA がトークン化で使用する SudachiPy のコア辞書の登録語は UniDic 短単位基準で構成されているが, 長単位の複合語を分割情報付きで出力することも できる (坂本, 川原, 久本, 高岡, 内田 2018). GiNZA では最も長い単位のモード Cを用いて パイプラインの学習を行うことで依存構造解析精度を高めている。解析結果を短単位（モード

A）で取り出す場合には図 1 右側のように CompoundSplitter をパイプラインに配備する.

また, UD 品詞 (UPOS) の推定において, UniDic 短単位品詞に含まれる名詞-普通名詞-サ変可能 などの可能性品詞は, 用法に基づいて NOUN や VERB などに解決する必要がある. GiNZA v4ではトークン化処理で品詞 bi-gram 規則で UPOS を決定している.

表 1 ツイート分析結果から選別した特徴的な依存関係

 \cdot \mathrm{CaboCha} \cdot \mathrm{spaCy}$ の各形式も指定できる.)

8 query=“選挙 東京 OR 都 exclude:retweets” で得られた 19,826 ツイート・37,629 文を使用. Sudachi 同義語辞書 を用いた正規化や用言の否定判定の GiNZA への機能追加は今後の課題である.
}

## $3 \mathrm{UD$ 対応 NLP フレームワーク}

spaCy： 日本語 GSD v2.6-NE (松田, 若狭, 山下, 大村, 浅原 2020)のリリースからほどな くして，その学習済みモデル ${ }^{9}$ が spaCy v2.3.0 と同時に公式リリースされた. 図 2 のライブラ リ構成 10 において, 日本語モデルは Tokenizer に SudachiPy 及びコア辞書を使用する点で他の 言語と設計が異なっている. spaCy 日本語モデルのパイプラインは SudacihPy モードA（短単位）で学習されており, UPOS 推定は GiNZA と同じ品詞 bi-gram 規則が用いられている。なお

図 1 GiNZA v4 Pipeline Architecture

図 2 spaCy Library Architecture

図 3 Stanza Pipeline

spaCy 公式オンラインコース ${ }^{11}$ が有志により日本語化されている.

Stanza $^{12}$ ：代表的な end-to-end（辞書等を使用せずトークン化を含めてパイプライン全段を 訓練コーパスのみで学習する ${ }^{13}$ ) アーキテクチャの NLP フレームワーク (Qi, Zhang, Zhang, Bolton, and Manning 2020). 日本語モデルは前身の Standord NLP の時代から公開されてきた.日本語 GSD v2.5 までの学習済みモデルはトークン化の精度がボトルネックであったが，著者 が v2.6-NE を用いて独自に訓練したモデルを評価したところ大幅な精度向上が確認された。

## 4 UD と文節

日本語 UD (浅原, 金山, 宮尾, 田中, 大村, 村脇, 松本 2019) に基づいて解析された依存木 から文節主辞間の関係を示す依存関係を判別できれば，その依存元トークンを根とする部分木 を文節と見なすことができる。しかしUDは言語固有の統語構造を考慮した設計ではない。本章では UDの解析木から文節主辞を判定するために GiNZA v4 が導入した方式を解説する 14 .

文節主辞間の依存関係の分布：日本語 GSD v2.6-NE には国語研が付与した文節情報 (BunsetuBILabel）が含まれており，これを利用して文節主辞から外部への依存関係に付与された依存関係の出現数の分布と，全トークンに付与された依存関係の出現数の分布とを比較したとこ ろ, 文節主辞間の関の割合が高いものは少なく, UD で定義される依存関係から直接的に文節主辞を同定することは困難なことがわかった.

文節主辞を判別するための依存関係ラベル拡張：依存構造解析モデルの訓練時に文節主辞 トークンの依存関係のラベルを $\{$ relation $\}$ _bunsetu の形に拡張することで，依存関係から文節主辞を識別可能な形に変更して学習・評価を行った。結果を表 2 に示す.

表 2 依存関係ラベル拡張による文節主辞認定精度

解析結果で依存関係が正解だったトークンについては拡張されたラベルから文節主辞を同定で きている。これは，文節べースのコーパスから UDへの変換規則 (Omura and Asahara 2018)を 再現することが容易であることを示している。一方，依存関係の解析自体が失敗しているコンテ キストでの文節主辞判定の再現率は 0.126 と低いが適合率は 0.9 程度を確保できている。GiNZA $\mathrm{v} 4$ はこの依存関係ラベル拡張による文節主辞認定を採用し，さらに文節主辞が未検出となった 区間でルールベースの主辞認定を行うことで文節主辞判定のカバレッジを確保している.

## 5 複合語の短単位への書き換え

GiNZA v4では CompoundSplitter を用いることで複合語を依存関係つきで短単位語に分解で きる。分解後の短単位語の依存先は, 元の複合語とその依存先との間に付与された依存関係が compound, nummod, punctのいずれかの場合は，更に長い単位の複合語を形成するために短単位語の依存先を元の複合語の依存先と同一とし, それ以外の場合は複合語末尾に位置する短単位語を依存先としている。短単位語に付与する依存関係は，元の複合語の UPOSを手がかりに \{ADJ: amod, ADP: case, NUM: nummod, PART: mark, PUNCT: punct, (default): compound\} のように決定するルールを用いた ${ }^{15}$.これらの書き換え規則をモード Cの出力に適用した結果， $\mathrm{UAS}$ LAS・MLAS ${ }^{16}$ の各値はモードA と比べて約 $1 \%$ 改善した ${ }^{17}$.

## 6 性能評価

日本語 GSD v2.6-NE を用いて日本語 UD 解析系の性能を評価した ${ }^{18} . \mathrm{spaCy}$ は公式モデル の ja_core_news_mdを，GiNZAとStanzaは訓練セットで学習したモデルを用いた。速度評価で はテストセットの全ての文を結合したテキストを入力することでパイプラインの処理効率を最大化した。表 3 において spaCyや GiNZA が精度・速度の多くの指標で Stanzaを上回っている

表 3 日本語 GSD v2.6-NE を用いた日本語 UD 解析系のベンチマーク

が，Stanza は Tokenizer に形態素解析器を組み达むことで性能が向上する余地がある.

## 謝 辞

著者が形態素解析器 ChaSen verion 2.0 のリリースに関わってから 20 年の間に統語解析技術 は機械学習技術とともに目覚ましい進歩を遂げた。一方，それらの訓練に用いる Treebankコー パスのオープン化（特に商用目的での利用）では日本語は英語などに大きく遅れをとってきた. OSS NLP フレームワークが世界市場でシェアを広げる中，OSS に馴染まない言語固有のコー パス事情から日本語の解析技術が世界市場で相手にされなくなる懸念が生じていた。この問題 について著者は国立国語研究所の浅原氏とディスカッションし, まずは商用利用可能な日本語依存構造解析器としてGiNZA を開発・公開する運びとなった。このGiNZA という名称は，日本文化を発信し時代の最先端で世界と影響を与え合ってきた街であり, Megagon Labs が属する リクルートグループの拠点である銀座の地から，全世界のビジネスで手軽に使える日本語 NLP を提供し，産業活性化に貢献したいという想いから名付けられた。

その後，浅原氏の尽力により UD_Japanese-GSD のライセンスから Non-commercial 条項を削除できたことで, このコーパスから学習した解析モデルを商用目的を含めて公開・利用できるよ うになった。 さらに UD Japanese グループによるUD_Japanese-GSD の再整備 (v2.6), Megagon Labs による固有表現情報の追加 (v2.6-NE) を経て, spaCy や Stanza などの NLP フレームワー クを用いて高精度な日本語解析モデルを容易に構築できるようになった。

$\mathrm{spaCy}$ 日本語モデルのリリースでは多くのエンジニアからコントリビュートを得た。 またワー クスアプリケーションズ徳島人工知能 NLP 研究所の皆様には SudachiPy の統合にご協力いたた いた。これらのOSS・オープンデータ活動に支援をいただいた全ての方々に感謝申し上げたい.

## 参考文献

浅原正幸, 金山博, 宮尾祐介, 田中貴秋, 大村舞, 村脇有吾, 松本裕治 (2019). Universal Dependencies 日本語コーパス. 自然言語処理, 26 (1), pp. 3-36.

橋本泰一, 乾孝司, 村上浩司 (2008). 拡張固有表現夕グ付きコーパスの構築. 情報処理学会研究

報告. 自然言語処理研究会報告, 188, pp. 113-120.

松田寞，若狭絢，山下華代，大村舞，浅原正幸 (2020). UD Japanese GSD の再整備と固有表現

情報付与. 言語処理学会第 26 回年次大会発表論文集.

Omura, M. and Asahara, M. (2018). "UD-Japanese BCCWJ: Universal Dependencies Annotation for the Balanced Corpus of Contemporary Written Japanese." In Proceedings of the 2nd Workshop on Universal Dependencies (UDW 2018), pp. 117-125, Brussels, Belgium.

Qi, P., Zhang, Y., Zhang, Y., Bolton, J., and Manning, C. D. (2020). "Stanza: A Python Natural Language Processing Toolkit for Many Human Languages." In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics: System Demonstrations, pp. 101-108.

坂本美保, 川原典子, 久本空海, 高岡一馬, 内田佳孝 (2018). 形態素解析器『Sudachi』のため の大規模辞書開発. 言語資源活用ワークショップ発表論文集, 3, pp. 118-129.

## 付録

プログラム 1 GiNZA を用いた述語と格要素の共起頻度のカウント

## 略歴

松田寛：2000 年奈良先端科学技術大学院大学情報科学研究科博士前期課程

修了。修士 (工学)。2000 年に株式会社ジャストシステム入社, 2002 年より

NLP 技術部門をリード，2010 年より研究開発部長. 2012 年にベンチャーへ

転向。2018 年に Megagon Labs（株式会社リクルート）へジョイン。現在に

至る. 自然言語処理, 文分散表現, 感情分析の研究に従事.

(C) The Association for Natural Language Processing, (Licensed under CC BY 4.0）https://creativecommons.org/licenses/by/4.0/


# 学会記事
## 言語処理 100 本ノック

## 1 背景

言語処理 100 本ノックは，実用的でワクワクするような課題に取り組みながら，プログラミ ング，データ分析，研究のスキルを楽しく習得することを目指した問題集である。東北大学の 乾・岡崎研究室での新人研修を想定し，岡崎が 2011 年の冬頃に制作を開始し，初版1を 2012 年 4 月 3 日に公開した. その後, 大幅な改訂を 2 回実施した. 2015 年版 ${ }^{2}$ (2015 年 3 月 12 日公開) では, データが再配布可能となるように全面的な改訂を行うとともに，単語の分散表現などの 新たなテーマを導入した。2020 年版 ${ }^{3}$ （2020 年 4 月 6 日公開， 2020 年 6 月 8 日改訂）では, 深層ニューラルネットワークに関する問題を強化するとともに，英語版や韓国語版など多言語へ の翻訳を推進した（図1).

言語処理 100 本ノックの問題作成にあたり，次のようなことを意識した。

実践的な題材を選ぶ 自然言語処理の研究・開発を行うために習得して欲しい技術 (例えばUNIX コマンドや正規表現など）やトピック（例えば形態素解析や係り受け解析，単語ベクトル，深層学習など）を洗い出したうえで，その技術の典型的な応用をゴールとして設定し，問題を構成した，例えば，第 3 章「正規表現」では，全ての問題を解くことでWikipedia データからの 知識獲得を体験できる。また，第 4 章「形態素解析」のゴールはコーパスの統計的な分析であ るが，その過程でデー夕の可視化技術が習得できる。実践的な応用を実現するために，自分で 調べながらプログラムを書くことで，必要な技術が自然と身につくことを狙っている。

楽しさを重視するプログラミングの醍醐味のひとつは，短い手続きを記述するだけでも，意外性のある面白い実行結果を生み出しうることにある，例えば，第 1 章「準備運動」では文字列，リスト型，辞書型，集合型，イテレータ，スライスなど，プログラミング言語の基礎を習得することに狙いがあるが，単にこれらの実装例を問うのではなく，面白い実行結果が得られ る題材を探した，過去に見たネットニュースから着想を得たり，英語の語吕合わせを調べたり，子供向けの教育番組を見ながら着想を得たり，題材選びに多くの時間を費やした.
^{1}$ http://www.cl.ecei.tohoku.ac.jp/index.php?NLP\%20100\%20Drill\%20Exercises

2 http://www.cl.ecei.tohoku.ac.jp/nlp100/

 }^{3}$ https://nlp100.github.io/

第1章: 準備運動

テキストや文字列を扱う題材に取り組みなが ら、プログラミング言語のやや高度なトピッ クを復習します。

## 第2章: UNIXコマンド

研究やデータ分析において便利なUNIXツール を体䮞します.これらの再実装を通してて，プ ログラミング能力を高めつつ，既存のツール

第3章: 正規表現

Wikipediaのページのマークアップ記述に正規表現を適用することで，様々な情報・知識を 取り出します。

図 1 言語処理 100 本ノック 2020 年版 (Rev 1)

実験の進め方を示す 自然言語処理の実験では，データの前処理（データのダウンロードや特徴量抽出など）や提案手法の実装, ハイパー・パラメータの調整, 正解率や F1 スコアの測定,失敗事例分析など，多くの研究に共通する流れがある。例えば，第 6 章「機械学習」は，ニュー スのカテゴリ分類器を構築しながら，この一連の流れを体験できるように構成されている． ゴールを分割する 自然言語処理の研究において，プログラミングによる実験は，研究のアイ ディアが計算機上で期待通りに動作することを実証することが主目的である。研究の成果物は 知見（論文）であって，ソフトウェアそのものではない，したがって，研究のアイデイアを正確かつ効率よく実現し，実験を進めることが望ましい，言語処理 100 本ノックでは，各章をサ ブゴールに分解し，各サブゴールを実現するプログラムを積み重ねることで，全体のゴールを 達成する構成とした。これには以下の理由がある.

・ ゴールをサブゴールに分解する実践例を示す.
- 各プログラムの実装や検証の難易度を下げる。

・プログラムを実行結果を確認する習慣をつける.
- 実験の途中結果を記録・保管する習慣をつける.
指示を与えすぎない 言語処理 100 本ノックの問題文は，わざと細かい指示を与えないように している。これは, 教員やメンターからのアドバイスは,「テキスト分類に BERT 使ったら どうだろうか？」みたいな指示が多く，具体的な解決法は自分で見つけることが推奨されるか らである。また, 問題に対する解き方は一通りではなく, 複数の解き方を仲間と議論すること が言語処理 100 本ノックの楽しみ方のひとつである。このため，指示を細かく与えすぎないよ うに配慮した。

理論やアルゴリズムの演習ではない 自然言語処理の問題集と銘打っているが，理論やアルゴ リズム，データ構造の実装することはゴールとせず，実践的な応用を実現することを優先した。例えば，確率的勾配降下法や Viterbi アルゴリズムなどを自分で実装してみることは，大変勉強 になることではあるが，対象外とした。

特定のプログラミング言語に依存しない 言語処理 100 本ノックの初版は, Python でプログラ ムを記述することを想定した. これは，2011 年当時の乾・岡崎研究室の標準のプログラミング 言語が Python であったことによる。しかし, 自然言語処理の研究で使われるプログラミング 言語として, Java, Ruby, Scala 等も有力な選択肢であった. このため, Python を標準的なプロ グラミング言語と想定しつつも, 言語仕様に依存した問題にならないように配慮した.

特定のツールに依存しない 自然言語処理の研究・開発では, 既存のツールやライブラリを活用することが欠かせない。一方で，どのツールやライブラリを選択するかは，個人の自由であ る。そこで，言語処理 100 本ノックの問題文では，特定のツール・ライブラリへの言及は原則 として回避することとした。ただし, 形態素解析や係り受け解析など，ツールを明示した方が 問題の説明が分かりやすくなる場合や，メージャーなツール・ライブラリを紹介した方が初学者にとって有益である場合は, ツール・ライブラリの具体名を挙げた.

ツールを活用する ツールやライブラリは研究や実験を加速する．例えば，コーパス中に出現 する単語とその出現頻度のリストを作成したとき，出現頻度順に並び替えることは，プログラ ムの正しさやコーパスの特徴を短時間で把握するのに役立つ. しかし, 並び替えのプログラム を書くのは面倒なので， 心理的な障壁を下げるためにも既存のツールを活用すべきである。そ こで，第 2 章「UNIX コマンド」では，夕ブ区切り形式のデータを分析するプログラムを書き つつ, 同様の実行結果をUNIX コマンドだけですぐに得られることを確認する構成とした。 データを公開する 言語処理 100 本ノックの初版では，問題を解くために必要なデー夕の入手性に難があった。 そこで， 2015 年版では，問題で用いるデー夕は一般に入手可能なものとして，誰でもすぐに始められるようにした。

一般的な計算資源を利用する 言語処理 100 本ノックのプログラムの計算環境として，個人の ノートパソコンもしくは Google Colaboratory 4 を想定している. 例えば，第 10 章「機械翻訳」
^{4}$ https://colab.research.google.com/
}

では，さらに大きなデータを用いて翻訳の性能を向上させたいが，特殊な GPU 環境が必要だっ たり，学習に数日かかる等の理由で，比較的規模の小さいデータを用いた.

なお，言語処理 100 本ノックの問題は公開とした。これは，研究室の学生が身につけるスキ ルセットを公開することで，研究室や所属する学生の価値を高める狙いがあった。一方で，問題を公開すると解答がウェブ等で流通し，学習効果が減る懸念もあった。しかしながら，これ までに多くの研究室や企業に採用して頂いた結果，ウェブ上で様々な解説が公開された。自然言語処理や機械学習の解説を一切行わないなど，不親切な問題を公開しただけであるが，みん なで助け合いながら学ぶ状況が自然に生まれたことは, 我々にとって予想外の展開であった.

## 2 実践例

言語処理 100 本ノックの活用例として, 東北大学乾・鈴木研究室にて毎年実施されている「プ ログラミング基礎勉強会（以下勉強会）」5の様子とそこで行われている工夫を紹介する．勉強会 は，自然言語処理の基礎，とりわけ実装技術の習得の目指す会で，2010 年から新人研修の一環 として実施されている。

## 2.1 学びを最大化するための勉強会運営

週に 1 度の勉強会で主に行われるのはコードレビューである.メンターとなる先輩学生やス タッフからの模範解答の提供ではない，具体的には，問題ごとに数名の受講生が自分の書いて きたコードを解説し，その後メンターを中心に参加者全員でコードについて議論を行う。あわ せてメンターからの補足説明（考えられる改善点, より良いコードの例, 便利なライブラリや イディオム, etc.）が与えられる。ここで触れられる話題は, 個々の具体的な解答に関する内容 にとどまらず，アルゴリズムやデー夕構造の基礎知識，困ったときの調べ方や質問の仕方，デ バッグのコッなど多岐に渡る。したがって 1.5 時間の勉強会で扱う問題は $1 \sim 5$ 問程度と少なく, 100 問を解くまでにはおよそ 1 年を要する。また，研究室には歴代の参加者やメンターによっ て書かれたコードが 8 年分蓄積されており, 見本となる解答例の品質は年々洗練されてきてい る。なお, 以前は新人の人全員が一度に参加する形式であったが，各受講生のコードレビュー の頻度をあげるために 2020 年度から小グループ化を行った.

運営上の工夫として，予習の際は「他人の回答を見ずに自分自身の力で解く」ことを強く推奨 している。理由の一点目は，それが実際の問題解決の予行演習になるからである，研究や開発 で直面する問題には答えがついていない。ついていないからこそ研究や開発が必要となる。問題に直面したとき，一体何を解けば良いのか，どう解けば良いか，エラーや実装ミスが生じた場
^{5}$ https://www.nlp.ecei.tohoku.ac.jp/study-groups/learning-programming/
}
合どう対処すれば良いかについて，自力で試行錯誤と問題解決を行う訓練は重要である。言語処理 100 本ノックの問題文が一部 well-defined でないことが気になるかたもおられるかもしれ ないが，これも「解くべき問題を考える」スキルを身につけてもらうことを意図したものであ る. 自力で問題を解いてもらう理由の二点目は, 参加者の回答のパターンが大きくばらけるこ とで，コードレビューにおける学び，とくに計算コストに関する学びが増えるからである。お 互いが事前に回答を見ないことで，必然的に各参加者の回答（実装戦略）にばらつきが生じる. そのため, 各勉強会では, 問題一つを取ってみてもデータ構造, アルゴリズムや使われたライ ブラリなどその中身は多種多様である。それぞれの回答を比較することで，実装戦略による計算量やメモリ効率の差を参加者全員が学ぶことができる。真剣に書いたコードに対してより良 い代替案が提示されることほど良い学びの機会はない.

最後に，研究室として中長期的に勉強会を持続していくためのメンターに関する工夫を紹介 する。まず，一部の学生・スタッフに負荷がかかりすぎないよう，メンターは各章ごとの持ち 回り制としている。また各メンターの得意分野が割り当たるように調整を行っている。これに よってメンター自身が楽しめ，また勉強会で提供される説明の品質も高くなることを期待して いる。なお余談ではあるが，最近は競技プログラミングの経験者が研究室に配属されること増 えており，メンターよりも参加者のほうがプログラミングに精通していることも多い。これに より勉強会における学びの機会が増え，メンターにとっても刺激的な時間となっている.

## 2.2 プログラミング基礎勉強会を支える技術

本節では，プログラミング基礎勉強会で利用しているツールやそれらの活用法を紹介する。言語処理 100 本ノックはその名の通り自然言語処理の知識・技術を習得するための目的志向の 問題集であり，解く際に用いる道具（プログラミング言語，エディタ，バージョン管理システ ムなど）は学習者が自由に選べる設計になっている。したがってここに挙げるツール群もあく まで一例に過ぎないが，2020 年現在自然言語処理の学習および研究・開発のプロトタイピング 時に用いるツールとして最も学習効果と運用効率の高い組み合わせのひとつであろう。また,読者が複数名での勉強会を検討している場合は，どんなツールを使うにせよ参加者全員の利用 ツールを統一しておくことをおすすめしたい．とくに参加メンバーに自然言語処理ないしプロ グラミングの初心者が含まれる場合, 利用技術の統一は相互の教えあいや学びの効率に大きく 影響する。

## Python 3

勉強会ではプログラミング言語として Python 3.xを採用している．そのもっとも大きな理由 は, Python が潤沢な外部ライブラリを備えた自然言語処理および機械学習の今日のデファクト
言語であり，既存の有用なアルゴリズムがほぼすべて再実装抜きに利用できるからである ${ }^{6}$. 研究開発の主目的である新しい価值の創造に時間を割けるようになり，またプログラムにもバグ が入りづらくなる。また, Pythonがいわゆる軽量プログラミング言語であることも大きな利点 である．初心者にとっては習得が容易となり，熟練者にとってもプログラム完成までの時間が 比較的短く済むため試行錯誤サイクルの短縮が期待できる.

## JupyterLab

コード編集環境（エディタ）としては, JupyterLabを採用している. JupyterLab は Jupyter Notebookを中心したWebべースの統合開発環境である（図 2).Vim/Emacs 等のエディタや PyCharm 等の統合開発環境に比べ，とくに勉強会での利用にあたっては以下に述べるようなす ぐれた利点がある。

・第一に，テキストを Markdown で挿入できる. リッチなメモをコードの隣に記載できる ことで，予習時には考察や勉強の助けとなり，勉強会時には複数のコードの指針やそこに 至る考察の比較が容易となり，復習時には勉強会での解説などを書き加えて自分だけの ノートを作ることができる。また，コード内に単にコメントでメモをとるよりも，リッ チな構造化テキストを利用した方が視覚的にも分かりやすく参加者の理解を助けやすい. さらに，軽量マークアップ言語のデファクトである Markdown 記法に慣れてもらうとい う副次的なメリットも得られる。
- 第二に，コードとその実行結果を対にして共有できる。参加者が問題文を読み間違えて いた場合など，コードだけではすぐに確認できない誤りも出力結果を見れば（コードの

図 2 JupyterLab
^{6} \mathrm{MeCab}, \mathrm{spaCy}$, AllenNLP, numpy/scipy, scikit-learn, fairseq, Hugging Face の提供する各種ツールなど, 枚挙に 暇がない.
}

図 3 プログラミング基礎勉強会における典型的なディレクトリ構造

問題点とあわせて）すぐに捕捉できる。また，参加者が工夫してプリントした「見やす い出力」も一目でわかる。さらに，参加者間の出力自体が異なる複数のコードの比較も 容易となる。
- 第三に，探索的なデータ分析を助ける，実際 JupyterLab は，自然言語処理の研究・開発 で必須であるテーブルデータの処理（Pandas など）や可視化 (Matplotlib, Plotly など) をインタラクティブかつシームレスに実行できるため，データ分析と可視化における最 も強力なツールのひとつとして盤石な地位を得ている。大規模なコードを書き始めたあ とでも，データの観察や可視化の際は JupyterLabが作業を効率化してくれる。また，実 データ（言語データ）を扱う自然言語処理を志す若者に，データをよく観察することに できるだけ早く慣れて欲しいという思いもある.

## Git/GitHub

バージョン管理システムおよびホスティングサービスとしては Git/GitHubを採用している. いまや広く情報系の研究開発において Git/GitHubの活用は必要不可欠である. 勉強会での利用を通して Git/GitHubに慣れ，自身の研究開発がはじまったあと抵抗なくこれらを使い始め られることが目標である.

具体的な運用方法を述べる，参加者は個人ごとにブランチとそれに紐づくデイレクトリを持 ち，主にその下で作業する。また，各個人ディレクトリでは章ごとにサブディレクトリを作成 し，その下にipynbファイルを配置する（図 3)。さらに，各 ipynbファイルの先頭にその人だ と分かる文字列を入れると，参加者全員の ipynb ファイルを JupyterLab で開いたときに，誰の コードを見ているかの判別に役立つ.

勉強会の開始前に, 参加者は個人ブランチでの作業の差分を勉強会用の GitHubレポジトリ に pushする。メンターは各ブランチの差分を master に merge 後 push し, 参加者全員の解答 が集約された状態にする。万が一コンフリクトが発生した場合でも，その解消はメンターの責任になるため，誤って他人のファイルを削除する等のトラブルを回避することができる．

Git/GitHubへの心理的な抵抗を少なくするために初期段階では細かい原理を教えず，上に挙

げた一連のコマンドをマニュアル通りに操作してもらう。そうすることで, 参加者は Git 自身 の複雑さに直面することなく, 変更履歴をトラッキングできる利便性のみを享受することがで きる。実際，乾・鈴木研究室では共通のコードベースを複数人で扱うような数多くの研究プロ ジェクトが走っているが，Git/GitHubを追加のチュートリアルなしにスムーズに活用できてい ることが観察されている.

## 謝辞

言語処理 100 本ノックは, 名古屋大学の佐藤理史先生が自然言語処理のプログラミングの演習のために作成された 100 問の問題に着想を得た。また,「100本ノック」という名称は, 東北大学の乾・岡崎研究室に在籍していた杉浦純氏のアイディアである. 最後に, 問題へのフィー ドバックを送っていただいた皆様, ウェブ上で解説を公開していただいた皆様に，この場を借 りて感謝申し上げる.


# 局所的モデルと CKYアルゴリズムによる並列構造解析

並列構造解析とは等位接続詞によって結びつけられる句を同定するタスクである.並列構造は自然言語の曖昧性の主たる要因の一つであり, 最高精度の構文解析器で あっても誤りを生じさせる。本研究は，句のペアが並列となる場合に高いスコアを 出力するようなスコア関数を定義し, 解析時にはスコア関数と CKY アルゴリズム を組み合わせた構文解析によって並列構造を導出する。提案手法では並列構造解析 を三つのサブタスクに分解し, それぞれのサブタスクを学習した三つのニューラル ネットワークによってスコア関数を構成する. 提案手法が並列構造を範囲の競合な く導出できることを保証しつつ, 既存手法より高い精度で並列構造を同定できるこ とを英語における評価実験により示す.

キーワード：並列構造解析，並列句, CKY アルゴリズム，構文解析
## Coordinate Structure Analysis using Local Models and CKY Algorithm

\author{
Hiroki Teranishi ${ }^{\dagger}$, Hiroyuki Shindo $^{\dagger}$, Taro Watanabe $^{\dagger}$ and Yuji Matsumoto ${ }^{\dagger \dagger}$
}

The task of coordinate structure analysis is to identify coordinated phrases linked by a coordinator. Coordination is a major source of ambiguities in natural language and confuses even state-of-the-art syntactic parsers. In this paper, we generalize a scoring function that takes a pair of spans with a coordinator and returns a higher score for the two spans to be coordinated. During inference, our system employs this function with the CKY parsing algorithm and produces coordinate structures for a given sentence. To obtain such a function, we decompose the task into three independent subtasks and build the function based on three different neural networks for the tasks. The experimental results on English corpora demonstrate that our model achieves stateof-the-art results, ensuring that the global structure of coordination is consistent.

Key Words: Coordinate Structure Analysis, Conjuncts, CKY Algorithm, Syntactic Parsing

## 1 はじめに

並列構造とは等位接続詞が結びつける句（並列句）から成る構造である. 並列句の範囲の解釈 には曖昧性があり，しばしば人間にとっても同定することが難しい. 例えば, “Toshiba’s line of portables, for example, features the T-1000, which is in the same weight class but is much slower and has less memory, and the T-1600, which also uses a 286 microprocessor, but which weighs almost twice as much and is three times the size.”という文を一目見て，各等位接続詞に対する 並列句を全て見つけることは困難である。並列構造の存在は文を長くし，解釈を曖昧にするた め，構文解析において誤りの要因となっている.

等位接続詞に対する並列句を同定する方法として，先行研究は並列句の二つの性質を利用し てきた。（1）類似性－並列句は類似した言語表現となる傾向がある。（2）可換性－並列句を入れ 替えても文全体が文法的に適格である. Ficler and Goldberg (2016b) は並列句ぺアの類似性と 可換性の特徴に基づいた計算を行うニューラルネットワークと構文解析器を組み合わせる方法 を提案した. Teranishi, Shindo, and Matsumoto (2017) もこれらの二つの特徴を取り入れている が，構文解析の結果を用いずに最高精度の性能を達成している。どちらのアプローチも Shimbo and Hara (2007) や Hara, Shimbo, Okuma, and Matsumoto (2009)の類似性に基づく手法と比べ て高い性能を得ているが，三つ以上の並列句を持つ並列構造や文中の複数の並列構造をうまく 取り扱うことができない．特に文中に複数の並列構造が存在する場合には，並列構造の範囲が 不整合に重なり合う状況が生じ得るという問題がある。対して, Hara et al. (2009) は並列構造 の範囲に不整合が生じることなく並列構造を導出できる生成規則を用いている.

本論文では，並列構造解析における新しいフレームワークを提案する。このフレームワーク では等位接続詞と語系列上の二つの範囲（スパン）を取るスコア関数を用いる。、コア関数は 二つのスパンが並列となる場合に高いスコアを返す働きを持つ。この関数を並列構造の導出規則に基づく CKY アルゴリズムと組み合わせることで，システムは入力文に対する並列構造の 集合を範囲の競合なく出力する。このようなスコア関数を得るために, 並列構造解析のタスク を等位接続詞の同定, 並列句ペアの内側境界の同定，外側境界の同定の三つのサブタスクに分解し，それぞれに異なるニューラルネットワークを用いる。各ニューラルネットワークは並列構造の構成要素に対して局所的に学習を行うが，CKYアルゴリズムによる構文解析時に協調し て働く，英語における評価実験の結果，我々のモデルは並列構造を範囲の競合なく導出できる ことを保証しつつ, Teranishi et al. (2017)の手法の拡張や先行研究と比較して高い精度を達成 していることが示された。

本研究の貢献は以下のとおりである.
- 並列句ぺアに対するスコア関数の学習・適用によって並列構造を解析するというフレー ムワークを提案した。
- 並列構造解析を三つのサブタスクに分解し, CKYアルゴリズムによる構文解析において 協調して働くモデルを開発した。
- 三つ以上の並列句を含む並列構造や文中の複数の並列構造を範囲の競合なく導出可能な システムを確立し，既存手法を上回る解析精度を達成した。

## 2 並列構造解析

## 2.1 並列構造

並列構造 (coordinate structure) とは, 等位接続詞 (coordinator) が結びつける複数の句から 成る統語構造である ${ }^{1}$. 等位接続詞によって結び付けられた句は並列句 (conjunct) と呼ばれる.英語において, and や or, butなどの等位接続詞によって形成される並列構造に連接して，カン マ (,) やセミコロン (;) なども等位接続の働きを持って並列句をさらに連結させる場合がある.本論文では，このように等位接続詞と協調して等位接続の役割を果たす語を準等位接続詞と呼 ぶ. 準等位接続詞は等位接続詞に付随せずに単体で並列構造を形成することができない．並列構造は多くの場合, 等位接続詞の出現によって検出されるが, butが前置詞として働く場合があ るように，語の表層形のみから並列構造の有無を判定することはできない．本論文では，等位接続詞・準等位接続詞となり得る語をそれぞれ並列キー・準並列キーと呼ぶ．英語においては as well as などの複数の語から成る表現が等位接続の働きをする場合があるが，本研究では一語 から成る等位接続詞を解析の対象とする。

## 2.2 タスク定義と困難さ

並列構造解析とは，文に現れる並列キーに対して並列句を同定するタスクである．より具体的には，並列キーが並列構造を形成する場合は，その並列構造に含まれる全ての並列句の範囲 （スパン）を[始点,終点]の形式で同定する。反対に並列キーが並列構造を形成しない場合は，並列構造の不在を表す NONE を返す。並列キーと見なされる語は解析に先立って定義されるもの とする.

並列構造解析のタスクの難しさは複雑な並列構造の取扱いにくさから生じており，代表的に は二つのケースが挙げられる。一つは並列構造が三つ以上の並列句を含む場合であり，もう一 つは文中に複数の並列構造が存在する場合である。並列構造は準等位接続詞を伴って三つ以上 の並列句を持つ可能性があるため，カンマに代表される準並列キーが実際に等位接続の役割を 果たしているかを判定し，どの並列構造に属して並列句を連結しているのかを突き止めなけれ ばならない. 文中に複数の並列構造が存在する場合, 各並列構造は別の並列構造に包含されて

入れ子の形で出現するか, もしくは他の並列構造と範囲が全く重なり合うことなく独立して出現する。言い換えると，二つの並列構造の範囲が部分的に重なり合うことはない. したがって，並列構造解析のタスクでは，各並列構造がいくつの並列句を含んでいるか知ることができない 状態で, 複数の並列構造の範囲の制約を満たしながら個々の並列句を同定しなければならない.

並列構造解析のタスクは句構造解析や依存構造解析などの構文解析によって必ずしも解くこと ができない点でも困難である。例えば，“I met [Bob on Sunday] and [Alice on Wednesday].”とい う文では, “Bob on Sunday” と “Alice on Wednesday”が並列となっているが，これらはふつう句構造文法の句と対応しない. また, "We saw an old [man] and [woman]." と "We saw a [beautiful woman] and [man].”という二つの文では，前者は old の主辞が man であり後者は beautiful の主辞は woman であり, どちらも同一の依存構造を持ち, Stanford/Universal Dependencies (de Marneffe, MacCartney, and Manning 2006; Nivre, de Marneffe, Ginter, Goldberg, Hajič, Manning, McDonald, Petrov, Pyysalo, Silveira, Tsarfaty, and Zeman 2016)のアノテーションで は二つの文の並列構造の範囲の違いを表すことができない. さらに, “[Mary always orders wine]， and [Sally beer].” という文において, and に後続する並列句では “always orders” が省略されて いるように, 空所化 (gapping) という現象が生じる場合がある。このような空所化を句構造や 依存構造では適切に表現することができず，文の統語構造がしばしば不自然な構文木で表され るため, 構文解析の障害になるという問題がある。したがって, 句構造や依存構造などを対象 にした構文解析の枠組みで並列構造を解析することは容易ではなく, 並列構造解析に特化した 手法の研究がなされている².

## 2.3 並列構造の木構造による表現

並列構造の階層関係や並列構造に含まれる複数の並列句の関係は木構造として表現すること ができる。本論文では並列構造の木構造による表現を並列構造木と呼ぶ. 図 1 は並列構造木の 例である。木構造による並列構造の表現は，複数の並列構造の範囲が競合しない（部分的に重 なり合う状態とならない）点, 並列句の数を二つに限定せず制限なく表せる点で適している.言い換えれば，文に含まれる並列構造を木構造として出力することで，並列構造の範囲の制約 は必然的に満たされる。

## 2.4 並列構造の範囲の組み合わせ

並列構造解析の一つの障害となる点として, 並列構造に含まれる並列句の範囲の組み合わせ数 が膨大になることが挙げられる。文の長さを $N$, 等位接続詞の出現位置を $k$ とする。並列句の数 を二つに限定し，並列句が等位接続詞に隣接すると仮定した場合, 並列句範囲の組み合わせ数は

e.g.) It also recommends better retirement and day-care benefits, and basing pay on education, experience and nurses' demanding work schedules.

図 1 並列構造木の例. coord は並列構造, conj は並列句, cc は等位接続詞, cc-sub は準等位接続詞を 表す.

$(k-1) \times(N-k)$ 通りである，等位接続詞が文のほぼ中心位置に出現するとき，その組み合わせ 数はたかだ $(N / 2)^{2}$ 通りである。しかし実際には並列句は必ずしも等位接続詞に隣接せず, “ $[\mathrm{A}]$ and, on the other hand, [B]"のように等位接続詞と並列句の間に挿入句が出現する場合がある. このような場合を考慮すると並列句範囲の組み合わせ数は $k(k-1) / 2 \times(N-k)(N-k+1) / 2$ 通り となり，等位接続詞が文のほぼ中心位置に出現するとき，その組み合わせ数はたかたか $(N / 2)^{4} / 4$通りである。これらの組み合わせ全てについて句のぺアがどの程度並列になっているかを計算 する場合，時間計算量 $\mathcal{O}\left(N^{4}\right)$ を要し，計算方法によっては膨大な時間がかかる.

実際には，準等位接続詞の出現により三つ以上の並列句が出現する場合や文中に複数の並列構造が出現する場合を考慮すると, それらの組み合わせの総当たり数は爆発的に増加するため,並列構造の範囲の組み合わせ全てについて範囲の妥当性を検証・比較することは現実的ではな い. 本研究では局所的な評価・比較を帰納的に適用することにより，計算量を抑えながら並列構造の範囲の組み合わせ全てについて考慮する。

## 3 並列句の特徵と従来研究

並列構造解析，すなわち等位接続詞が結びつける並列句の範囲同定において，有用な二つの 特徴がある (Ficler and Goldberg 2016b; Teranishi et al. 2017).
- 類似性 : 同一の並列構造に属する並列句は, 句の構文構造・意味の点で類似する.
- 可換性：同一の並列構造に属する並列句は, 互いに入れ替えても文の流暢性が保たれる.

(a) 構文構造・意味の点で類似する並列句の対.

The Tass news agency said the 1990 budget anticipates

[expenditures of 489.9 billion rubles (US\$790.2 billion) $]_{\mathrm{NP}}$ and [income of 429.9 billion rubles (US\$693.4 billion) $]_{\mathrm{NP}}$.

（b）並列句の対を互いに入れ替えた文.

図 2 並列句の特徴。

例として, “The Tass news agency said the 1990 budget anticipates income of 429.9 billion rubles (US\$ 693.4 billion) and expenditures of 489.9 billion rubles (US\$ 790.2 billion)." という 文を挙げる。等位接続詞 and に対する二つの並列句, “income of 429.9 billion rubles (US $\$ 693.4$ billion)”と “expenditures of 489.9 billion rubles (US\$ 790.2 billion)”はともに名詞句であり，ほ ぼ同一の品詞系列・句構造を持つ（類似性, 図 2a）。また, これらの並列句を互いに入れ替えた 場合であっても文法性を損なうことなく, 構文的に正しい文が成立する（可換性, 図 $2 \mathrm{~b}$ ).

## 3.1 並列句の類似性に基づく従来手法

並列構造解析のタスクにおいて, これまで並列句の類似性に基づく手法が盛んに研究されてき た.まず並列句が共通して持つ品詞タグ・意味ラベル・形態情報・構文構造に基づいてスコアを 計算することによって，並列する名詞句ペアを同定する手法が開発された (Agarwal and Boggess 1992; Kurohashi and Nagao 1994; Resnik 1999; Hogan 2007). これらの研究に対し, Shimbo and Hara (2007) は並列句の類似度に基づく識別モデルを提案した． Shimbo らの手法において，並列句の類似度は系列アラインメントのノードとエッジに割り当てられた統語・形態情報の特徴 の重み付き和として計算され，そのパラメータは機械学習手法であるパーセプトロンによって 調整される. Hara et al. (2009) は Shimbo らの手法を発展させ, 並列構造に特化した文脈自由文法規則と組み合わせ，三つ以上の並列句を持つ並列構造や文中の複数の並列構造を範囲が競合することなく導出可能にした. Hanamoto, Matsuzaki, and Tsujii (2012)は Haraらの手法に

よる解析結果と主辞駆動句構造文法の解析器の出力を双対分解によって一致させることで精度 を向上させた。

並列句の類似性に基づく並列構造の解析手法の発展により，名詞句の並列などの類似度が大 きい並列句に対しては解析精度が向上してきた，しかしながら，動詞句や節の並列，形容詞 $\cdot$動詞など異なる統語範疇を持つ句の並列など，類似度が必ずしも高くない並列句の同定には課題が残った。

## 3.2 並列句の類似性に依存しない手法

非類似となる並列句をとらえる方法として，Kawahara and Kurohashi (2008) は類似性の素性 を用いずに依存構造と格フレームに基づいて並列句の生成確率を学習し，範囲同定を行う手法 を開発した. Yoshimoto, Hara, Shimbo, and Matsumoto (2015) は Eisner アルゴリズム (Eisner 1996)の規則を拡張し，依存構造とともに並列構造を同定する手法を提案している.

## 3.3 ニューラルネットワークを用いた並列構造解析

近年，並列句の類似性・可換性に基づいたニューラルネットワークによるスコア計算を取り 入れた並列構造解析の手法が研究されている. Ficler and Goldberg (2016b) は句の類似性のみ ならず可換性についても並列句ペアのスコア計算の素性として用いている. Ficler らの手法は 三つのコンポーネントから成り立っている。まず始めに二値分類器を用いて等位接続の働きを し得る語が実際に並列構造を持つか否かを予測する。次に並列構造を持つと予測された等位接続詞に対して, Berkeley Parser (Petrov, Barrett, Thibaux, and Klein 2006)を用いて並列句ペア の候補を抽出する．最後にニューラルネットワークを用いて並列句ペアの候補に対してスコア 付けをし，最もスコアの高いぺアをシステムの予測として出力する．Ficler らの手法は従来の 非ニューラルネットワークによる手法と比較して高い精度で並列句の範囲を同定することがで きるが，並列句ぺアの候補抽出やスコア計算の過程において構文解析器の結果を用いており，構文解析の結果に強く依存しているという欠点がある。 パイプライン的なアプローチに対し, Teranishi et al. (2017) はニューラルネットワークによるエンドッーエンドの解析手法を開発し た. Teranishi らの手法は直接的に個々の並列句を求めるのではなく, 並列構造全体の始点・終点を予測した後に，並列構造を個々の並列句に分割するというトップダウンなアルゴリズムを 採用している。並列句の類似性・可換性を考慮したニューラルネットワークによって並列構造 の始点・終点が決定されるが, 構文解析の結果を用いないという点で Ficler らの手法と異なる. Teranishi らの手法は Ficler らの手法よりも高い解析精度を達成したが, Hara et al. (2009)の手法のように複数の並列構造を同時に考慮して，範囲の競合なく並列構造を導出することができ ていない.

本研究は, (1) Hara らの手法のように並列構造の範囲が文全体として整合性を保つように制
約を与える，(2) Teranishi らの手法のように並列となる語系列のペアに対して高いスコアを割 り当てられるモデルを導入する，という二点を組み合わせる試みとして位置づけられる．Hara らの手法は動的計画法によりボトムアップに並列構造を導出しているのに対して, Teranishi ら の手法はトップダウンに並列句を同定しているという違いがある。また，動的計画法の過程で 並列句ペアの候補を比較する際に，逐一ニューラルネットワークによってスコア計算を行うこ とは計算量・解析速度の点で現実的なアプローチではない。本研究は並列句ぺア候補のスコア 計算を分割することで，ニューラルネットワークを用いながら動的計画法を適用可能にし，並列構造を範囲の競合なく導出できるようにしたことで，従来研究より優れた解析性能を達成し ている.

## 4 文脈自由文法規則を用いた構文解析

## 4.1 並列構造の構文解析

本節では並列構造を構文木として出力する方法について述べる ${ }^{3}$. 並列構造を包含する文の構文木は表 1 の文脈自由文法 (CFG) 規則から導出され，並列構造木と一対一に対応付けするこ とができる。並列構造を木として表現する利点については 2 節で述べたが，CFG 規則を用いる 利点として, (1) 並列構造の範囲が競合するような候補を排除し，並列構造木を導出できる組み 合わせのみを探索できる，(2) CKYアルゴリズムの適用により効率的に並列構造木を導出でき る，点が挙げられる。表 1 の CFG 規則は Hara et al. (2009) が開発した規則をもとに作られて いるが，我々の規則が等位接続詞と並列句の間に任意の句が挿入された並列構造であっても導出できるのに対し, Hara らの規則は等位接続詞に隣接する並列句しか導出できないという違い がある。本規則を用いることで，並列構造のアノテーションが付与された Penn Treebankコー パス (Ficler and Goldberg 2016a) において， 99.5\%の並列構造を構文木として導出することがで きる ${ }^{4}$.

表 1 の規則の適用により，同じ文から異なる構文木が複数導出され得る。そこで構文木に対 してスコアを割り当てることで，最もスコアの高い構文木をシステムの出力とする.

$
\hat{T}=\underset{T \in \mathcal{T}_{G}(s)}{\arg \max }(\operatorname{score}(T))
$

ここで, $\mathcal{T}_{G}(s)$ は文脈自由文法 $G$ によって文 $s$ から導出可能な構文木の集合である.
]$ and $[\mathrm{B}]$ and $[\mathrm{C}]$ ” のような等位接続詞の一つが準等位接続詞のように働く場合がほ とんどであるが, このような表現であっても入れ子になった二つの並列構造として導出することができる.
}
表 1 並列構造木の導出規則

(1) COORD $\rightarrow$ CONJ N? CC N? CONJ

(2) COORD $\rightarrow$ CONJ CC-SUB COORD

(3) CONJ $\rightarrow$ COORD

(4) $\mathrm{CONJ} \rightarrow \mathrm{N}$

## 前終端記号の規則

(11) $\mathrm{CC} \rightarrow$ (and|or|but|nor|and/or)

(12) CC-SUB $\rightarrow(,|;|:)$

(13) $\mathrm{W} \rightarrow{ }^{*}$

$(\ldots \mid \ldots)$ は括弧内のいずれかの語に，“*”は任意の語にマッチし，“?”は直前の要素の 0 または 1 回の出現を表す。

## 4.2 スコア計算と CKY アルゴリズムの適用

本研究では並列構造の構文木に対して, 非終端記号である COORD のノードと前終端記号 のノードのみにスコアを割り当てる．COORD が付与されたノードに対するスコアは，関数 score $_{\text {coord }}$ によってえられる。前終端記号について, その終端記号である語が並列キーとして 定義された語の集合 $\mathbb{S}_{c c}$ または準並列キーとして定義された語の集合 $\mathbb{S}_{s u b-c c}$ に属するとき，そ のノードのスコアは関数 score $_{\text {ckey }}$ により計算される。終端記号の語が $\mathbb{S}_{c c}$ または $\mathbb{S}_{s u b-c c}$ のいず れにも属さない場合, 前終端記号は $\mathrm{W}$ に一意に決まり，そのノードのスコアは 0 とする．以上 を整理して, スコア関数 $\operatorname{score}(T)$ は次のように表される。

$
\operatorname{score}(T)=\sum_{\langle[i, j], \ell\rangle \in T} \operatorname{score}_{\text {node }}([i, j], \ell)
$

$
\operatorname{score}_{\text {node }}([i, j], \ell)= \begin{cases}\operatorname{score}_{\text {coord }}(i, j) & (\ell=\mathrm{COORD}) \\ \operatorname{score}_{\text {ckey }}(i, \ell) & \left(\ell \in\{\mathrm{CC}, \mathrm{CC}-\mathrm{SUB}, \mathrm{W}\}, i=j, w_{i} \in \mathbb{S}_{c c} \cup \mathbb{S}_{\text {sub-cc }}\right) \\ 0 & (\text { otherwise })\end{cases}
$

ここで $\langle[i, j], \ell\rangle$ は構文木 $T$ に含まれるノードであり, ノードのスパン $[i, j]$ とそのラベル $\ell$ 表 している。また， $w_{i}$ は入力文の $i$ 番目に出現する語を表す. 並列構造のノード $\langle[i, j], \mathrm{COORD}\rangle$ に対するスコア関数 score $_{\text {coord }}$ と，並列キーまたは準並列キーに該当する語の前終端ノードに 対するスコア関数 score $_{\text {ckey }}$ の定義については次節にて述べる.

本研究では, $\mathrm{CFG}$ 規則の適用による並列構造の構文木の導出のために CKY アルゴリズムを 用いる。CKYアルゴリズムを適用するために，CFG 規則はチョムスキー標準形に変換される ${ }^{5}$. CKYアルゴリズムを用いた CFG 構文解析では, 動的計画法により式 (1)の結果 $\hat{T}$ を時間計算量 $\mathcal{O}\left(N^{3}\right) （ N$ は入力文の単語数）によって効率良く求めることができる.

## 4.3 文の前処理・後処理法

アメリカ英語において，引用のあとに続くピリオドやカンマは引用符の内側に置かれる．引用符で囲まれた句が三つ以上並列する場合に，並列句の区切りとなる準等位接続詞が引用符内 で閉じてしまう（例: “associations," "societies" and “councils"). このような並列構造は表 1 の 規則 (2) から正しく導出することができず，規則 (2) の適用によって準等位接続詞直後の並列句 が閉じ引用符から開始してしまう。そこで引用符の内側に置かれた句読点を取り扱う方法につ いて示す.

## 引用符の削除・復元による方法

引用符の削除・復元による方法では，文の構文解析に先立って引用符を削除する．その後構文解析によって並列句の範囲を同定したあとに引用符を挿入する．例えば，“A," "B" and “C," という並列構造を持つ文に対して, システムが並列句の境界を $[\mathrm{A}],[\mathrm{B}]$ and $[\mathrm{C}]$, と予測した場合，後処理によって“[A]," “[B]" and “[C],”と復元される.

## 引用符と句読点のスワップによる方法

引用符と句読点のスワップによる方法では, カンマと閉じ引用符がこの並び順で出現した場合に，構文解析に先立って位置を入れ替える。その際にスワップ位置を保持しておき，その後構文解析によって並列句の範囲を同定したあとに再びスワップすることで元の語順に戻す。例え ば, “A," "B” and “C,"という文に対して, システムが前処理後の並列句の境界を “[A]", “[B]"

and “ $[\mathrm{C}] "$, と予測した場合, 後処理によって“ $[\mathrm{A}], "$ “ $[\mathrm{B}]$ ” and “ $[\mathrm{C}]$,” と復元される.

本研究ではスワップによる前処理・後処理法を採用する ${ }^{6}$. 理由として, スワップによる方法 では引用符を手がかりとして並列句の範囲を決定することができる点が挙げられる．また，イ ギリス英語のように閉じ引用符のあとにカンマが出現する場合，スワップによる方法では単に 前処理・後処理が適用されずにそのままシステムによる予測ができるが，削除・復元による方法ではそのような場合であっても引用符が削除されてしまい，システムの予測時に引用符を手 がかりとして役立てることができない.

## 5 構文解析モデル

義と学習方法について示す. 提案手法ではスコア関数を, 等位接続詞分類モデル, 内側境界ス コア付与モデル, 外側境界スコア付与モデルの三つのモデルにより構成する. 図 3 は本手法の フレームワークの概要図である。

## 5.1 モデル定義

$N$ 語の系列 $w_{1: N}=w_{1}, \ldots, w_{N}$ と対応する品詞タグ系列 $p_{1: N}=p_{1}, \ldots, p_{N}$ を入力として, 我々 のシステムは並列構造の集合 $\left.\{\left.\langle t,\left.\{\left[b_{t}^{(1)}, e_{t}^{(1)}\right], \ldots,\left[b_{t}^{(n)}, e_{t}^{(n)}\right]\right.\}\right.\rangle\right.\}\left(n \geq 2, b_{t}^{(i)} \leq e_{t}^{(i)}\right)$ を出力する. こ こで $t$ は等位接続詞の出現位置を表し, $\left[b_{t}^{(k)}, e_{t}^{(k)}\right]$ は等位接続詞 $w_{t}$ によって形成される並列構造に含まれる並列句のうち先頭から $k$ 番目に出現する並列句であり, その開始位置が $b_{t}^{(k)}$, 終了位置が $e_{t}^{(k)}$ であることを表す. ここで並列構造に含まれる並列句の数 $n$ が $n \geq 2$ となってい る理由は，並列構造に含まれる並列句の数をあらかじめ知ることができないためである。しか し，並列キーと準並列キーに対する並列句ぺアの同定として，以下のようにタスクを定式化す ることができる.

$
\begin{aligned}
& X=\left.\{w_{1: N}, p_{1: N}, C\right.\} \\
& C=\left.\{t \mid w_{t} \in \mathbb{S}_{c c} \cup \mathbb{S}_{\text {sub-cc }}\right.\} \\
& Y=\left.\{\left.\langle y_{t}^{\text {ckey }}, y_{t}^{\text {pair }}\right.\rangle \mid t \in C\right.\}
\end{aligned}
$

ここで $y_{t}^{\text {ckey }}$ は語 $w_{t}$ が実際に等位接続の役割を果たしているか $\left(y_{t}^{\text {ckey }}=1\right)$, または果たして いないか $\left(y_{t}^{\text {ckey }}=0\right)$ を表す二値のラベルであり, $y_{t}^{\text {pair }}$ は並列句スパンのペアである.また,
$ 規則を追加することもできるが， $\mathrm{CFG}$ 規則を不用意に複雑にしてしまうため, 本研究では採用していない.
}

## 並列構造の集合

$\{<$ and6, $\{[5,5],[7,7]\}>$

<and10, $\{[4,8],[11,22]\}>$,

<and17, $\{[14,14],[16,16],[18,22]\}>\}$

## CKY アルゴリズムによる構文解析

$\begin{array}{lllllll}3 & 4 & 5 & 6 & 7 & 8 & 9\end{array}$

並列構造木と等価な構文木

図 3 並列構造解析のフレームワークの概観.CKYアルゴリズムの適用において, 前終端記号の四角形 ノードは等位接続詞分類モデルによって, COORDノードは内側・外側境界スコア付与モデルに よってそれぞれスコア付けされる。

$y_{t}^{\text {ckey }}=0$ のとき, 対応する並列句ペアが存在しないことから $y_{t}^{\text {pair }}=\varnothing$ となる. $t=1$ または $t=N$ の場合について, 語 $w_{t}$ は文内に並列構造を形成することができないため $y_{t}^{\text {ckey }}=0$ とな る. 本論文では，等位接続詞と成り得る語の集合 $\mathbb{S}_{c c}$ と準等位接続詞と成り得る語の集合 $\mathbb{S}_{s u b-c c}$ をそれぞれ \{“and”, “or", “but”, “nor”, “and/or”\} と \{“,", “;”, “:”\} と定義する. 提案手法では, $y_{t}^{\text {pair }}$ の四つの境界一 (準) 等位接続詞の左側に出現する並列句の始点・終点, 右側の並列句の 始点・終点一に対して，内側境界（左側並列句の終点・右側並列句の始点）を同定するモデル

と外側境界（左側並列句の始点・右側並列句の終点）を同定するモデルの二つを用いる 7 . 四つ の境界の組み合わせを列挙する場合の時間計算量は $\mathcal{O}\left(N^{4}\right)$ であるが，内側・外側境界に分割し て数え上げた場合は $\mathcal{O}\left(N^{2}\right)+\mathcal{O}\left(N^{2}\right)=\mathcal{O}\left(N^{2}\right)$ となり，計算量を抑えることができる.

## 等位接続詞分類モデル

等位接続詞分類モデルは並列キーおよび準並列キーのラベルを予測する二值分類器である.

$
P_{\theta}\left(y_{t}^{\text {ckey }} \mid t\right)=\operatorname{softmax}\left(f_{\text {ckey }}(t)\right)
$

ここで $\theta$ はモデルのパラメータ集合である。二値分類の損失関数は以下のとおりに計算される.

$
\ell_{\theta}^{\text {ckey }}(X, Y)=-\sum_{\left.\langle y_{t}^{\text {ckey }}, y_{t}^{\text {pair }}\right.\rangle \in Y} \log P_{\theta}\left(y_{t}^{\text {ckey }} \mid t\right)
$

## 内側境界スコア付与モデル

内側境界スコア付与モデルは並列句のペアに対し，その内側境界に基づいてスコアを付与す るモデルである。本論文では，左側並列句の始点, 終点, 右側並列句の始点, 終点をそれぞれ $b^{l}, e^{l}, b^{r}, e^{r}$ と表す. 並列キー $w_{t}$ に対する内側境界 $\left(e^{l}, b^{r}\right)$ のスコアは以下のように計算される.

$
\operatorname{ScORE}_{\theta}^{\text {inner }}\left(e^{l}, b^{r}, t\right)=f_{\text {inner }}\left(e^{l}, b^{r}, t\right)
$

内側境界の確率値は全ての可能な内側境界の組み合わせにおけるスコアを正規化することで計算される。

$
\begin{gathered}
I_{t}=\{(1, t+1),(1, t+2), \ldots,(1, N),(2, t+1), \ldots,(t-1, N)\} \\
P_{\theta}\left(y_{t}^{\text {pair }}=\left(\left[*, e^{l}\right],\left[b^{r}, *\right]\right) \mid t\right)=\frac{\exp \left(\operatorname{SCORE}_{\theta}^{\text {inner }}\left(e^{l}, b^{r}, t\right)\right)}{\sum_{\left(e^{\prime l}, b^{\prime r}\right) \in I_{t}} \exp \left(\operatorname{SCORE}_{\theta}^{\text {inner }}\left(e^{l l}, b^{\prime r}, t\right)\right)} \\
\ell_{\theta}^{\text {inner }}(X, Y)=-\sum_{\left.\langle y_{t}^{\text {ckey }}, y_{t}^{\text {pair }}\right.\rangle \in Y} y_{t}^{\text {ckey }} \log P_{\theta}\left(y_{t}^{\text {pair }} \mid t\right)
\end{gathered}
$

ここで項 $y_{t}^{\text {ckey }} \log P_{\theta}\left(y_{t}^{\text {pair }} \mid t\right)$ は，（準）並列キーが等位接続となる場合 $\left(y_{t}^{\text {ckey }}=1\right)$ のみ交差工 ントロピー損失が計算され，等位接続とならない場合 $\left(y_{t}^{c k e y}=0\right)$ は 0 となることを意味する.

## 外側境界スコア付与モデル

内側境界スコア付与モデルと同様に外側境界 $b^{l}, e^{r}$ の確率 $P_{\theta}\left(y_{t}^{\text {pair }}=\left(\left[b^{l}, *\right],\left[*, e^{r}\right]\right) \mid t\right)$ は外側境界の全ての可能な組み合わせ $O_{t}$ から計算される。同様に, 損失関数 $\ell_{\theta}^{\text {outer }}$ はスコア関数 $\operatorname{SCORE}_{\theta}^{\text {outer }}\left(b^{l}, e^{r}, t\right)=f_{\text {outer }}\left(b^{l}, e^{r}, t\right)$ を用いて定義される. ここで内側境界の集合 $I_{t}$ と 外側境界の集合 $O_{t}$ は，境界の可能な組み合わせが同じであるため等しい。内側境界の確率 $P_{\theta}\left(y_{t}^{\text {pair }}=\left(\left[*, e^{l}\right],\left[b^{r}, *\right]\right) \mid t\right)$ と外側境界の確率 $P_{\theta}\left(y_{t}^{\text {pair }}=\left(\left[b^{l}, *\right],\left[*, e^{r}\right]\right) \mid t\right)$ を用いて, 最も確率 の高い並列句ぺアは以下のように求められる.

$
\begin{aligned}
y_{t}^{\text {pair }} & =\underset{\left(\hat{e}^{l}, \hat{b}^{r}\right)}{\arg \max } P_{\theta}\left(\left(\left[*, \hat{e}^{l}\right],\left[\hat{b}^{r}, *\right]\right) \mid t\right) \\
& \cup \underset{\left(\hat{b}^{l}, \hat{e}^{r}\right)}{\arg \max } P_{\theta}\left(\left(\left[\hat{b}^{l}, *\right],\left[*, \hat{e}^{r}\right]\right) \mid t\right)
\end{aligned}
$

ただし，式 (11)によって個々の（準）等位接続詞について並列句ぺアを決定すると範囲に不整合が生じる可能性があるため, 並列構造の解析時には 4 節で示したとおり, CFG 規則によって 導出される構文木のスコアが最大となるように並列構造が決定される。

## 5.2 スコア関数の構成

並列キーまたは準並列キーに該当する語 $w_{i} \in \mathbb{S}_{c c} \cup \mathbb{S}_{s u b-c c}$ の前終端ノードに対するスコアは, (準) 並列キーの有無を表す二值のラベル $y_{i}^{\text {ckey }}$ の対数確率から割り当てられる.

$
\text { score }_{\text {ckey }}(i, \ell)= \begin{cases}\log P\left(y_{i}^{\text {ckey }}=1 \mid i\right) & (\ell \in\{\mathrm{CC}, \mathrm{CC}-\mathrm{SUB}\}) \\ \log P\left(y_{i}^{\text {ckey }}=0 \mid i\right) & (\ell=\mathrm{W})\end{cases}
$

並列構造を表す COORD ノードのスコアは（準）等位接続詞が結びつける二つの並列句に基 づいて計算される。等位接続詞の出現位置を $k$, 左側並列句のスパンを $[i, l]$, 右側並列句のスパ ンを $[m, j]$ とすると，語 $w_{k}$ によって結びつけられた二つの並列句から成る並列構造 $[i, j]$ のス コアは，内側境界 $(l, m)$ の対数確率と外側境界 $(i, j)$ の対数確率の和として計算される.

$
\begin{aligned}
\operatorname{score}_{\text {coord }}(i, j) & =\log P\left(y_{k}^{\text {pair }}=([i, l],[m, j]) \mid k\right) \\
& =\log P(([*, l],[m, *]) \mid k)+\log P(([i, *],[*, j]) \mid k)
\end{aligned}
$

式 (13)の計算と表 1 の規則 (1)を対応づけると, 規則 (1) は以下のように表される.

$
\operatorname{COORD}_{i, j} \rightarrow \mathrm{CONJ}_{i, l} \mathrm{~N}_{l+1, k-1} ? \mathrm{CC}_{k, k} \mathrm{~N}_{k+1, m-1} ? \mathrm{CONJ}_{m, j}
$

準等位接続詞によって並列句が結びつけられる場合は, 準等位接続詞 $w_{k}$ が結びつける左側並列句 $[i, l]$ と右側並列句 $[m, j]$ を用いて, 式 (13) と同様の計算を適用することで COORD ノード

のスコアが割り当てられる。式 (13) の計算を表 1 の規則 (2) に当てはめた場合，規則 (2) の右辺を展開して以下のように表される。

$
\begin{aligned}
& \text { (ただし, } l=k-1, m=k+1)
\end{aligned}
$

## 5.3 ニューラルネットワーク

本小節では関数 $f_{\text {ckey }}, f_{\text {inner }}, f_{\text {outer }}$ のニューラルネットワークによる構成について説明する.

## エンコーダ

単語・品詞夕グの系列の文レベルのベクトル表現を得るために, 本研究では双方向型 Long Short-Term Memory (BiLSTMs) (Hochreiter and Schmidhuber 1997)を用いる.

$
\mathbf{h}_{1: N}=\operatorname{BiLSTMs}\left(f_{\text {input }}\left(w_{1: N}, p_{1: N}\right)\right)
$

ここでLSTM の隠れ状態べクトルの次元を $d^{\text {hidden }}$ とすと, エンコーダから出力される系列 の各ベクトル $\mathbf{h}_{t}$ の次元は $2 d^{\text {hidden }}$ となる. BiLSTMs の入力として, 単語・品詞夕グを各べク トル表現にマッピングする関数 $f_{\text {input }}$ が出力するべクトル系列を用いる. $f_{\text {input }}$ 内での具体的 なマッピング方法として，事前学習したべクトル表現のほか, ELMo (Peters, Neumann, Iyyer, Gardner, Clark, Lee, and Zettlemoyer 2018) や BERT (Devlin, Chang, Lee, and Toutanova 2019) などの文脈を考慮した単語分散表現, 文字レベルでの演算を行う LSTM や畳み込みニューラル ネットワークの出力ベクトルなどを用いることができる。これらの選択による性能差は 6 節で 示す. $f_{\text {input }}$ と BiLSTMs から成るモデルを本論文ではエンコーダと呼び, エンコーダは等位接続詞分類モデル，内側境界スコア付与モデル，外側境界スコア付与モデルの三つのネットワー クの共通の下層部分として共有される.

## 等位接続詞分類モデル

$f_{\text {ckey }}$ には並列キーの文レベルベクトル表現の線形変換を用いる.

$
f_{\text {ckey }}(t)=\mathbf{W}^{\text {ckey }} \mathbf{h}_{t}+\mathbf{b}^{\text {ckey }}
$

ここで $\mathbf{W}^{\text {ckey }} \in \mathbb{R}^{2 \times 2 d^{\text {hidden }}}$ と $\mathbf{b}^{\text {ckey }} \in \mathbb{R}^{2}$ は等位接続詞分類モデルのパラメータである.

## 内側境界スコア付与モデル

エンコーダが出力した文レベルベクトル表現を用いて，内側境界スコア付与モデルは内側境界に位置する二つのベクトル表現を連結し, 多層パーセプトロン (MLP) に入力することでス

カラー値を出力する.

$
f_{\text {inner }}\left(e^{l}, b^{r}, t\right)=\mathbf{w}_{2}^{i n} \operatorname{ReLU}\left(\mathbf{W}_{1}^{i n}\left[\mathbf{h}_{e^{l}} ; \mathbf{h}_{b^{r}}\right]+\mathbf{b}_{1}^{i n}\right)+\mathrm{b}_{2}^{i n}
$

ここで $\mathbf{W}_{1}^{i n} \in \mathbb{R}^{d^{i n} \times 4 d^{\text {hidden }}}, \quad \mathbf{b}_{1}^{i n} \in \mathbb{R}^{d^{i n}}, \quad \mathbf{w}_{2}^{i n} \in \mathbb{R}^{d^{i n}}, \quad \mathrm{~b}_{2}^{i n} \in \mathbb{R}$ は内側境界スコア付与モデルの パラメータである.

## 外側境界スコア付与モデル

外側境界スコア付与モデルは外側境界のベクトル表現と並列キー前後のベクトル表現の差を 用いてスコア計算を行う，減算は二つのスパンの意味的な距離や関連性をとらえる意図で導入 している (Teranishi et al. 2017). 演算によって得られたべクトル表現を MLP に入力すること でスカラー値を得る.

$
\begin{gathered}
f_{\text {feature }}\left(b^{l}, e^{r}, t, \mathbf{h}_{1: N}\right)=\left[\mathbf{h}_{b^{l}}-\mathbf{h}_{t+1} ; \mathbf{h}_{e^{r}}-\mathbf{h}_{t-1}\right] \\
f_{\text {outer }}\left(b^{l}, e^{r}, t\right)=\mathbf{w}_{2}^{\text {out }} \operatorname{ReLU}\left(\mathbf{W}_{1}^{\text {out }} \mathbf{r}+\mathbf{b}_{1}^{\text {out }}\right)+b_{2}^{\text {out }} \\
\mathbf{r}=f_{\text {feature }}\left(b^{l}, e^{r}, t, \mathbf{h}_{1: N}\right)
\end{gathered}
$

ここで $\mathbf{W}_{1}^{\text {out }} \in \mathbb{R}^{d^{\text {out }} \times 4 d^{\text {hidden }},} \mathbf{b}_{1}^{\text {out }} \in \mathbb{R}^{d^{\text {out }}}, \quad \mathbf{w}_{2}^{\text {out }} \in \mathbb{R}^{d^{\text {out }}}, \quad \mathrm{b}_{2}^{\text {out }} \in \mathbb{R}$ は外側境界スコア付与モ デルのパラメータである.

## 5.4 学習

ニューラルネットワークモデルのパラメータ集合 $\theta$ は以下の損失関数を最小化することによっ て最適化される.

$
L(\theta)=\sum_{(X, Y) \in D}\left(\ell_{\theta}^{\text {ckey }}(X, Y)+\ell_{\theta}^{\text {inner }}(X, Y)+\ell_{\theta}^{\text {outer }}(X, Y)\right)
$

ここで $D$ は学習デー夕に含まれる文 $X$ とその文に含まれる並列構造 $Y$ の対の集合である。式 (19) で計算される損失は三つのサブモデルの損失の和であり，したがって三つのサブモデルの パラメータは同時に学習される。

## なぜ局所的な学習を行うか

各サブモデルの局所的な決定に基づいてスコア関数を学習する代わりに，モデルを統合して CKYアルゴリズムによって導出された構文木のスコアと正解の構文木のスコアを最大マージン 法などによって直接的に学習することができる (Stern, Andreas, and Klein 2017). しかしなが ら, このような大域最適の学習には非常に多くの時間を要し, またハイパーパラメータの注意深い設定が必要なうえ, 予備実験の範囲では Teranishi et al. (2017)の手法をわずかに上回る程
度の精度しか得られなかった。

内側・外側境界の局所的な学習の成功は, 交差エントロピー損失を用いて学習を行ったこと が要因であると分析する。最大マージン損失を最小化する大域的な学習の場合，スコア最大の 構文木と正解の構文木に含まれる並列句の境界についてモデルのパラメータが調整される。対 して交差エントロピー損失を用いた内側・外側境界の局所的な学習の場合, 正解の境界だけで なく全境界についてパラメータの調整が行われ, 不正解の境界全てのスコアが押し下げられる よう学習が進む. そこで交差エントロピー損失最小化による局所的な学習と類似の学習方法と して，入力文 $s$ に対する構文木 $T \in \mathcal{T}_{G}(s)$ の条件付き確率 $P(T \mid s)$ を次式のようにモデル化する ことを考える。

$
P_{\theta}(T \mid s)=\frac{\exp \left(\operatorname{score}_{\theta}(T)\right)}{Z_{\theta}(s)}, \quad Z_{\theta}(s)=\sum_{T^{\prime} \in \mathcal{T}_{G}(s)} \exp \left(\operatorname{score}_{\theta}\left(T^{\prime}\right)\right)
$

この条件付き確率に対して最尤推定によってパラメータ集合 $\theta$ を調整することで，局所的な学習による方法と同等以上の解析精度が期待できるが，分配関数 $Z$ において文脈自由文法 $G$ に よって文 $s$ から導出可能な構文木の全てについてスコア計算をする必要があり, 現実的には計算が困難である。そこで分配関数 $Z$ を何らかの方法により近似することで，このような大域的 な学習を実行する方法も考えられる (Andor, Alberti, Weiss, Severyn, Presta, Ganchev, Petrov, and Collins 2016).

しかし近年, Teng and Zhang (2018) や Dozat and Manning (2017)の手法に見られるように,構文解析のタスクにおいて局所的な決定をニューラルネットワークによって高精度に学習し,解析時に大域最適解を求めることで，大域的な目的関数によって学習したモデルの解析結果と 遜色ない精度が実現できている。提案手法において並列句ぺアの内側・外側境界は局所的に学習されるが，並列構造の同定時には CKY アルゴリズムを用いた構文解析によって両境界の整合性を考慮して大域最適解を求めている。このことから，各サブタスクを高い精度で学習でき れば大域的な目的関数を用いた学習との解析精度の差は縮まると推測され, 本研究でも局所的 な学習による方法を採用する.

## 6 実験

## 6.1 実験設定

## データセット

本研究では並列構造のアノテーションが付与された Penn Treebank (Ficler and Goldberg 2016a) (PTB) と GENIA Treebank beta (Kim, Ohta, Tateisi, and Tsujii 2003) (GENIA)を用いて評価実験を行う。実験の前処理・後処理には 4.3 節で示したスワップによる方法を用いる．PTB で

の実験では，コーパスの Wall Street Journal のパートのうち， セクション 2 から 21 を訓練デー 夕，セクション 22 を開発データ，セクション 23 をテストデータとして用いる. GENIAでの実験では, Hara et al. (2009) と同様に 5 分割交差検定によって評価を行う.

## モデル

エンコーダ内の関数 $f_{\text {input }}$ として, 単語を事前学習済みの単語ベクトルに, 単語を構成する文字列を文字ベースの畳み込みニューラルネットワーク (Ma and Hovy 2016) (CharCNNs) の出力 ベクトルに, 品詞タグを品詞タグの表現ベクトルにマッピングし, それらの三つのベクトル表現 を連結したべクトルを出力する関数を用い，この設定を本論文では default と呼ぶ．事前学習済み の単語ベクトルとして, PTB での実験には GloVe (Pennington, Socher, and Manning 2014)を, GENIA での実験には BioASQ (Tsatsaronis, Schroeder, Paliouras, Almirantis, Androutsopoulos, Gaussier, Gallinari, Artieres, Alvers, Zschunke, and Ngomo 2012) を初期値として用いる8 . PTB での実験において, 品詞タグは Stanford POS Tagger (Toutanova, Klein, Manning, and Singer 2003) を用いて 10 分割ジャックナイフ法により付与し, GENIA での実験では先行研究 (Hara et al. 2009; Ficler and Goldberg 2016b; Teranishi et al. 2017) に従って, コーパスに付与されて いる品詞を用いた。モデルのパラメータの最適化は Adam (Kingma and Ba 2015) を用いて確率的勾配降下法によって行った。その他のハイパーパラメータについては表 2 のとおりである.

## ベースライン

評価実験のベースラインとして Teranishi et al. (2017)の手法を再実装したものを用いる. Teranishi らの手法は, 並列構造全体の始点・終点を予測したあとに, 等位接続詞とカンマによっ て並列構造を個々の並列句に分割している。しかし個々の並列構造に対して独立に始点・終点 を決めているため, 文中の他の並列構造と範囲が競合し得る。そこでTeranishi らの手法を拡張 し，複数の並列構造の範囲が部分的に重なり合わないという制約のなかで，並列構造の範囲の スコアの合計が最も高くなる組み合わせを探索して決定する。 ベースラインのモデルで使われ るエンコーダについては，上述の default の設定と同様の構成を用いる。本論文では以降，この 拡張を施したべースラインモデルをTeranishi+17:+ext として参照する。また PTBでの実験で は, Stern et al. (2017) の句構造構文解析器を用いて, 並列構造の構文木表現を直接学習・予測 した結果とも比較する。

## 評価

PTB での実験では，並列キーに対する並列句スパンの予測に基づいて，適合率 $(\mathrm{P})$, 再現率

表 2 実験に用いたハイパーパラメータの設定.

(R), それらの調和平均である $\mathrm{F} 1$ 値 (F)によってシステムの評価を行う. Teranishi et al. (2017) の評価実験に則って，並列句の一致について以下四つの基準で評価する ${ }^{9}$.
- whole: 最初の並列句の始点と最後の並列句の終点の一致.
- outer: 最初の並列句の始点・終点の一致かつ最後の並列句の始点・終点の一致.
- inner: 等位接続詞前後の並列句それぞれの始点・終点の一致.
- exact: 全ての並列句の始点・終点の一致.

また，評価に際して特に名詞句の並列構造のみを対象にした解析性能についても調べる ${ }^{10}$.

GENIA での実験では, 上述の一致基準に基づいて再現率によって評価する。ただし, 先行研究では whole の一致基準についてのみ評価を行っている. また, 並列構造の統語範疇ごとに対象を絞って性能を評価する。

## 先行研究との実験設定の違い

提案手法と先行研究の実験設定の違いについて整理する. 各手法が利用している外部資源に ついて表 3 に示す. 提案手法, ベースラインおよび Teranishi et al. (2017)のモデルは, PTB と GENIA のいずれにおいてもコーパス外のテキストで事前に学習した単語ベクトル表現を用い

表 3 比較手法で用いられる外部資源

(a) PTB での設定

(b) GENIA での設定

*はコーパス外のテキストを用いて学習したものを表す.

ているのに対し, Stern et al. (2017) の構文解析器ではランダムに初期化した単語ベクトルを, Ficler and Goldberg (2016b)のモデルは PTB・GENIA のそれぞれで事前学習したべクトル表現を用いている，PTBでの評価実験において，Ficler らは Berkeley Parserによって付与され た品詞夕グを用いているのに対し, その他のモデルは Stanford POS Tagger で付与した品詞夕 グを用いている。 GENIA においてはいずれもコーパスに付与されている品詞タグを用いてい る。また, Ficler らは PTB・GENIA のいずれにおいても Berkeley Parser が付与した句構造の 構文木を用いており，品詞タグのベクトル表現については Word2Vec (Mikolov, Chen, Corrado， and Dean 2013) を用いてそれぞれのコーパスで事前学習している。外部資源の利用における差異は並列構造の解析性能に影響を及ぼすため，本節の評価実験は厳密に同条件下での比較では ない11.しかしながら，本節では提案手法における外部資源の利用の有無による性能差を提示 することで，設定の違いを考慮したうえでの優位点を示す。

外部資源の利用以外の差異として， 4.3 節に示した引用符によるイレギュラーな並列構造に対 する取扱いが挙げられる．Ficlerらの手法では Berkeley Parser を用いて並列句ぺアの候補を抽出しており，イレギュラーな並列構造を同定できるかどうかは構文解析の結果に依存する。ベー スラインおよび Teranishi らの手法は，引用符による変則的な並列構造を導出できないという制
^{11}$ Ficler らは Berkeley Parser を改変して用いており, 改変部分や手法の実装についての詳細は得られなかった.
}
限はない. 対して提案手法は表 1 で示した文脈自由文法規則からイレギュラーな並列構造を導出できないため, 4.3 節で提案したスワップによる前・後処理と組み合わせることで対応する.表 1 の規則によって変換された正解の構文木を Stern らの構文解析器によって直接的に学習す る方法においても, 同様の理由で学習用の構文木を構築する前に前処理を行い, 解析器による 構文木の出力後に後処理を行って評価をしている。このように，スワップによる前・後処理は 表 1 の規則を引用符によるイレギュラーな並列構造に対応させる目的で導入されており，提案手法のシステムの一部に組み込まれたものである。したがって，タスク評価の入出力時点では 提案手法と他の手法で単語系列や並列構造範囲に差異はない. しかしながら，スワップによっ て単語系列が操作されることで引用符とカンマの語順が正規化され，BiLSTMs を用いた本手法 にとってより有効な語順に変化している可能性がある.

最後に本論文で提案する文脈自由文法規則と Hara et al. (2009)の規則の違いによる性能差に ついて述べる. Haraらの規則は等位接続詞の前後の並列句が等位接続詞に隣接すると仮定して おり，“ $[\mathrm{A}] \ldots$ and $[\mathrm{B}] ”$ のような，等位接続詞に隣接しない並列句を導出することができない. ただし，Haraらは “ $[\mathrm{A}]$, and $[\mathrm{B}]$ ”のような，等位接続詞とその前に出現する並列句とのあいた にカンマが出現することを許容し，規則を追加している．対して我々は表 1 の規則 (1)によっ て，等位接続詞と並列句のあいだに任意の句が出現するような並列構造を導出可能にしている. このような並列構造は PTB に実際に存在するが，GENIA においては等位接続詞と並列句のあ いだにンマ以外の任意の句が出現せず，アノテーションされた全ての並列構造が Hara らの規則により導出可能である。したがって GENIA での評価実験において，規則の違いによる性能差は生じない12.

## 6.2 実験結果

PTB と GENIA の実験結果をそれぞれ表 4 と表 5 に示す. PTBにおいて，提案手法 (Ours) は並列構造の全ての一致基準において既存手法の精度を大幅に上回った. 提案手法が並列句ぺ アの内側・外側境界について学習しているのに対し, ベースラインは並列構造全体の境界のみ を学習しているため, whole 以外の基準では提案手法がより正確に境界を予測できている。次 に Stern et al. (2017)の句構造構文解析器による解析では, いずれの一致基準についても並列構造に特化した解析器と比べて並列構造の同定精度が低いことが確認された.しかし並列構造の 構文木表現の構文解析精度について評価したところ，句構造のラベル付きスパンの一致につい ての F1 値が開発データで $97.88 \%$, テストデータで $97.63 \%$ という結果となった。この精度の高 さは, 表 1 の $\mathrm{CFG}$ 規則で導出される構文木の大部分が $\mathrm{W}$ と $\mathrm{N}$ のノードによって右辺に展開さ

表 4 PTB での実験結果

} & whole & 78.78 & 77.94 & 78.36 & 77.36 & 76.52 & 76.94 & 78.52 & 77.80 & 78.16 & 78.72 & 78.34 & 78.53 \\

Teranishi+17 および Ficler+16 の数値は論文で報告されている結果より抜粋.

れる二分木であるためだと考えられる。しかし並列構造について高い精度で同定できていない ことから， $\mathrm{W}$ や $\mathrm{N}$ のノードと比較して出現数が少ない COORD のノードについては句構造構文解析によって高い精度でスパンを予測できていないと推測される。

GENIA において，提案手法は exactの基準でベースラインを上回る精度を達成した，我々の モデルはベースラインと比較して，並列構造全体の始点・終点を予測する能力について劣って いるものの, inner の基準では高い性能を発揮している. 対して, ベースラインは whole の基準 で高い性能を示しており，他の基準では精度が相対的に低い.この性能差は二つの手法のアル ゴリズムの違いを反映している。提案手法はボトムアップに並列句ペアから並列構造を導出し ているのに対し, ベースラインは並列構造全体の範囲を予測してから個々の並列句に分割する というトップダウンの解析を行っている。そのためべースラインの手法では, 文や節などの長 い並列構造を非準等位接続詞であるカンマによって誤って分割し, 解析精度が低下してしまう。提案手法の欠点は CKYアルゴリズムの初期段階の誤りが後段のステップまで伝搬することで あり，そのため inner 以外の基準では誤りの影響を受けて精度が低下していると考えられる。
表 5 GENIA での実験結果

Teranishi+17, Ficler+16, Hara+09 の数値は論文で報告されている結果より抜粋.

## 6.3 考察

## 文単位での完全一致

並列構造単位での評価に加えて，文単位での全並列構造の完全一致について評価した。評価 に際して，文が持つ並列構造に応じて文を次の五つに分類する.

All: 並列構造を持つ全ての文.
- Simple: 二つの並列句から成るただ一つの並列構造を持つ文.
- Complex: Consecutive または Multiple に該当する文.
- Consecutive: 三つ以上の並列句から成る並列構造を少なくとも一つ持つ文.
- Multiple: 複数の並列構造を持つ文.

なお， Simpleと Complexにそれぞれ該当する文の集合は互いに素であり，All はそれらの和集合であるが，Consecutive と Multipleの文集合には一部重複がある.

表 6 は PTB と GENIA における完全一致率の評価結果である。いずれのデータセットにお いても，Simpleの文において提案手法はベースラインと比較して高い性能を得ている。このパ フォーマンスの差は二つのシステムが学習している境界の違いに由来するものだと考えられる. Simple の文の場合, 提案手法は等位接続詞の前後に出現する二つの並列句の内側・外側境界を 学習しているのに対し, ベースラインのシステムは並列構造の外側境界のみを学習・予測して いる.しかし, 同格や副詞句表現が等位接続詞と並列句の間に出現し得る場合があり, 二つの 並列句が等位接続詞に隣接するという仮定は必ずしも成立しない. 提案手法は PTBにおいて, Consecutive と Multiple の文についてもベースラインの精度を上回っている. ベースラインの 手法は並列構造全体のスパンを予測してから個々の並列句に分割しているため, 準等位接続詞
表 6 文単位での並列構造の完全一致率

} & All & $468 / 673=69.53$ & $577 / 873=66.09$ & $1502 / 2508=59.88$ \\

表 7 異なる設定によるモデルの性能の違い（PTB，開発）

とならないようなカンマの出現により, 誤って並列構造を分割し得る. 対して提案手法はカン マなどの準並列キーが，実際に準等位接続詞として働いているかどうかについて予測しており， Consecutive の文をより高い精度で導出することができている。しかし GENIA では並列構造全体に占める名詞句の並列構造の割合が高く，かつ複合名詞が羅列するような単純な並列が多い ため，カンマによる並列構造の分割が機能し，結果としてベースラインの手法が Consecutive の 文において精度高く解析できていると推測される。

## 並列構造解析に有効な情報

並列構造解析に有効なべクトル表現・特徴計算について分析するため, 異なる設定によって 評価実験を行った．表 7 はその結果を示している，品詞タグがない場合にモデルの性能は顕著

に低下した。また品詞の他に, 文字 (形態) 情報が有効な素性であることも確認できた。これら が有効な情報である理由として, 特に名詞句の並列など類似度の高い並列句ぺアにおいては, 品詞や接頭辞・接尾辞の一致が並列句の範囲同定の手がかりになるからだと推測している。また,事前学習された単語の埋め込み表現がこのタスクにおいて有益であることも確認された。近年広く利用されている文脈を考慮した単語分散表現を用いた場合, ELMo (Peters et al. 2018)では 性能がわずかに上昇し，BERT (Devlin et al. 2019)では大幅に向上した ${ }^{13}$. ELMo は双方向型 LSTM により学習されており, LSTM の層ごとに前方向・後方向の文脈について独立に計算し ているのに対し, BERT では Transformer (Vaswani, Shazeer, Parmar, Uszkoreit, Jones, Gomez, Kaiser, and Polosukhin 2017) が用いられており，アテンションによって両方向の文脈を同時に 見ているという違いがある。我々のモデルではすでにエンコーダ内に双方向型 LSTM が用いら れているが，アテンションのような単語対単語の関係を考慮するようなモデルは組み达まれてい ないため, Kurohashi and Nagao (1994) や Shimbo and Hara (2007) の手法で用いられているア ラインメントと同様の働きを Transformer によって獲得できた可能性がある. 今後はエンコー ダに Transformer を用いるなど，アーキテクチヤによる性能差をより細かく調査したい。また 外側境界スコア付与モデル内での特徴計算において, 内側境界スコア付与モデルと同様の特徴関数（表 7 では concat feature として表記）を用いた場合, 性能が低下した. 式 (17) は並列句 ペアの類似性・可換性をとらえる目的で設計されており, 単に $b^{l}, e^{r}$ の二点だけを計算の考慮に 入れた concat featureでは，外側境界のそのような特徴をとらえられていないと分析する.

ベースラインのモデルに ELMo や BERT によるベクトル表現を用いた場合, 提案手法の default の設定を上回る性能が得られた。ベースラインのモデルに ELMo・BERT を用いることで解け るようになった並列構造と, ベースラインの手法から提案手法に変更することで解けるように なった並列構造が仮に同一であった場合, 提案手法に ELMo・BERT を用いることによる改善 は小さいはずである。しかしながら提案手法においても ELMo・BERT のべクトル表現を使用 することによる性能改善は大きい. このことから，手法の改善によって解けるようになった並列構造と, ELMo・BERT を使って解けるようになった並列構造は性質が異なると推測される.各モデルによって解決された並列構造を表 8 に具体的に示す. 表 8 より, 提案手法で用いるア ルゴリズムによって並列キーや準並列キーが複数出現する文において, 複雑な並列構造をより 頑健に同定できるようになったのに対し，文脈を考慮したべクトル表現は“NP and NP PP ...” や“VP and VP ADVP ...”のような系列に対して, PP や ADVP が後ろの並列句に含まれるか どうかといった前後文脈により依存するような曖昧な並列構造を同定するのに有効に働いてい

表 8 ベースライン $+\mathrm{BERT}$ と提案手法の解析結果の違い

(a) ベースライン+BERT の解析誤りが提案手法によって改善された例

 &  \\

(b) 提案手法の解析誤りがベースライン+BERT によって改善された例

 &  \\

ると考えられる。

## 解析結果の定性的分析

表 9 に提案手法による並列構造の解析結果の例を示す. 例 1 は二つの独立した並列構造を正 しく解析できており，特に後者の並列構造では the retail and financial sectors という名詞句に 対し, the retail と financial sectors という二つの名詞句の並列ではなく, retail と financial の二 つの形容詞の並列として解析に成功している。例 2 は自動詞と他動詞の二つの動詞句による不均衡な並列構造の範囲を正確にとらえられている。例 3 は三つの平叙節の並列を解析できてお り，またそのうち一つの並列句内に埋め込まれている並列構造の解析にも成功している. 対し て例 4 では, at prevailing market prices という前置詞句が or の直後の並列句に含まれるもの として解析している。解析結果の境界は句の切れ目として不自然ではないが，前置詞句の主辞 (buy) をとらえることができていない. 例 5 では入れ子となっている並列構造は解析できてい
(a) システムによって正しく解析された並列構造の例

 \\

(b) システムによって誤って解析された並列構造の例

 &  \\

るが, that 節の that が省略されているために, Dealers said ... securities を一つの平叙節として 認識してしまっている. このように, 提案手法によって出力された並列句は句の境界について は不自然ではないものの, 並列構造の前後の句が並列句によって共有されるか否かの曖昧性を 十分に解消できていない. 並列となる句が前後の句に対して共通の関係を持つかどうかを判別 することが提案手法の今後の課題である.

## 他言語への適用可能性

本節では評価実験により提案手法の英語における有効性を示した. 4 節で示した構文解析を 用いる本手法は, 解析対象のテキストに対して以下の要件を前提としている.

1. テキストが文単位に分けられ，入力文は単語分割が完了したものとして単語から構成さ れる。

2. (準) 等位接続詞となり得る語が定義されている.

3. (準) 等位接続詞が形成する並列構造のパターンが，文脈自由文法の規則として定義さ れている.

これらの前提条件が満たされる限り，CKYアルゴリズムによる構文解析の過程において，並列 キーに対する並列構造の有無が判定され，並列句の開始・終了位置となるあらゆる単語の組み 合わせが精査され，並列構造の組み合わせが木として導出される，という一連のプロセスが言語 やドメインに依存することなく機能する。また 5 節で提案したニューラルネットワークのモデ ルは，単語に対する品詞タグや事前学習されたべクトル表現を必須としていないが，高精度な 解析のためにはそれらのリソースが利用できることが望ましい。さらにニューラルネットワー クの学習のためには, 並列句の範囲が明示的に付与された文が大量に利用できることが想定さ れる ${ }^{14}$.

以上の条件について，提案手法の日本語への適用を例に具体的に考える。『現代日本語書き言葉均衡コーパス』(小椋，小磯，冨士池，宮内，小西，原 2011) (BCCWJ) は，新聞，書籍，雑誌, 白書, ブログ，掲示板など，様々なジャンルにまたがって収集されたテキストから成るコー パスであり, このコーパスでは一部のデータに対して並列構造の範囲が付与されている (浅原,松本 2018). 並列構造の範囲は国語研短単位形態素境界に基づいて分割された文の構成要素を 基準にして付与されており，六つのジャンルから成るコアデータでは総数 57,109 の文に 14,368 の並列構造が出現している。したがって前提条件 1 は解決され，学習に必要なアノテーション についても入手が可能であり, 単語に対する品詞タグやベクトル表現もツールを使って付与す ることができる。また並列構造や品詞情報のアノテーションから，（準）等位接続詞となり得 る語を定義することができ，前提条件 2 も満たされる。前提条件 3 について, 例えば, “本物 ならではの [風合い], [風格] そして [高級感あふれる質感] は”という並列構造が表 1 の規則から 導出できるように，提案規則を用いることで大部分の並列構造を導出することができると見込 まれる。ただし，前終端記号に対する規則 (11) (12)については，条件 2 で設定した（準）等位接続詞から定義される必要がある。日本語では“ $[\mathrm{A}]$ と $[\mathrm{B}]$ と $[\mathrm{C}]$ ”という並列構造のように，複数の等位接続詞から成る並列構造が頻出するが，例えば規則 $(2)$ に類似した規則，“COORD $\rightarrow$

CONJ CC COORD”を追加することで，そのような並列構造を導出できる。また日本語の法令文においては，「並びに」と「及び」から成る並列構造が “ $[\mathrm{A}]$ 並びに $[[\mathrm{B}]$ 及び $[\mathrm{C}]]$ ” と一意に 解釈できるように上位・下位の階層関係が定められており，このようなドメインや文書に固有 のルールも文脈自由文法規則として取り入れることが可能である.

以上を踏まえて，本手法を日本語に適用できる見込みは高く，本手法の提案規則に基づいて いくつかの拡張を伴うことで，英語や日本語に類似した他言語においても本手法が適用可能で あると期待される。

## 7 おわりに

本論文では，並列構造解析のためのシンプルでより正確なフレームワークを提案した。提案手法は並列構造解析のタスクを三つのサブタスクに分解し，それぞれに異なるニューラルネッ トワークを用いる。並列構造を範囲の競合なく導出できる文脈自由文法規則を定義し，CKYア ルゴリズムによる構文解析とニューラルネットワークを組み合わせることで，我々のシステム は入力文に対する並列構造の集合を出力する，英語における評価実験の結果，並列構造の最適 な組み合わせの導出のために三つのニューラルネットワークが協調して働いており，既存のシ ステムやその拡張を上回る解析精度を達成していることが示された。また分析により，提案手法はベースライン手法と比較して複雑な並列構造を文レベルで正確に解析できることが分かっ た. 我々のシステムは並列構造の範囲同定に誤る場合であっても, 並列句の境界は句の区切り と一致している傾向にあり，範囲の候補として有力である．今後の課題として，CKYアルゴリ ズムによる構文解析を拡張し, スコアが高いものから順に複数個の構文木を取り出し, 並列構造の前後の文脈を考慮した構文木候補のリランキング手法を開発することによって，解析精度 をより向上させることが挙げられる。また日本語を含む他言語に本手法を適用し，評価実験を 行うことも課題とする.

## 謝 辞

本研究は JST CREST（課題番号：JPMJCR1513）の助成を受けて行った。また本研究の 一部は, The 2019 Annual Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies で発表したものである (Teranishi, Shindo, and Matsumoto 2019).

## 参考文献

Agarwal, R. and Boggess, L. (1992). "A Simple but Useful Approach to Conjunct Identification." In Proceedings of the 30th Annual Meeting of the Association for Computational Linguistics, pp. 15-21. Association for Computational Linguistics.

Andor, D., Alberti, C., Weiss, D., Severyn, A., Presta, A., Ganchev, K., Petrov, S., and Collins, M. (2016). "Globally Normalized Transition-Based Neural Networks." In Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 2442-2452. Association for Computational Linguistics.

浅原正幸，松本裕治 (2018). 『現代日本語書き言葉均衡コーパス』に対する文節係り受け・並列構造アノテーション. 自然言語処理, 25 (4), pp. 331-356.

de Marneffe, M.-C., MacCartney, B., and Manning, C. D. (2006). "Generating Typed Dependency Parses from Phrase Structure Parses." In Proceedings of the 5th International Conference on Language Resources and Evaluation, pp. 449-454. European Language Resources Association (ELRA).

Devlin, J., Chang, M.-W., Lee, K., and Toutanova, K. (2019). "BERT: Pre-training of Deep Bidirectional Transformers 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. Association for Computational Linguistics.

Dozat, T. and Manning, C. D. (2017). "Deep Biaffine Attention for Neural Dependency Parsing." In Proceedings of the 5th International Conference on Learning Representations.

Eisner, J. M. (1996). "Three New Probabilistic Models for Dependency Parsing: An Exploration." In Proceedings of the 16th International Conference on Computational Linguistics (Volume 1), pp. 340-345.

Ficler, J. and Goldberg, Y. (2016a). "Coordination Annotation Extension in the Penn Tree Bank." In Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 834-842. Association for Computational Linguistics.

Ficler, J. and Goldberg, Y. (2016b). "A Neural Network for Coordination Boundary Prediction." In Proceedings of the 2016 Conference on Empirical Methods in Natural Language Processing, pp. 23-32. Association for Computational Linguistics.

Hanamoto, A., Matsuzaki, T., and Tsujii, J. (2012). "Coordination Structure Analysis using Dual Decomposition." In Proceedings of the 13th Conference of the European Chapter of
the Association for Computational Linguistics, pp. 430-438. Association for Computational Linguistics.

Hara, K., Shimbo, M., Okuma, H., and Matsumoto, Y. (2009). "Coordinate Structure Analysis with Global Structural Constraints and Alignment-Based Local Features." In Proceedings of the Joint Conference of the 47th Annual Meeting of the ACL and the 4th International Joint Conference on Natural Language Processing of the AFNLP, pp. 967-975. Association for Computational Linguistics.

Hochreiter, S. and Schmidhuber, J. (1997). "Long Short-Term Memory." Neural Computation, 9 (8), pp. 1735-1780.

Hogan, D. (2007). "Coordinate Noun Phrase Disambiguation in a Generative Parsing Model." In Proceedings of the 45th Annual Meeting of the Association of Computational Linguistics, pp. 680-687. Association for Computational Linguistics.

Kawahara, D. and Kurohashi, S. (2008). "Coordination Disambiguation without Any Similarities." In Proceedings of the 22nd International Conference on Computational Linguistics, pp. 425-432. Coling 2008 Organizing Committee.

Kim, J. D., Ohta, T., Tateisi, Y., and Tsujii, J. (2003). "GENIA Corpus-A Semantically Annotated Corpus for Bio-textmining." Bioinformatics, 19 (suppl 1), pp. i180-i182.

Kingma, D. P. and Ba, J. (2015). "Adam: A Method for Stochastic Optimization." In Proceedings of the 3rd International Conference on Learning Representations.

Kurohashi, S. and Nagao, M. (1994). "A Syntactic Analysis Method of Long Japanese Sentences Based on the Detection of Conjunctive Structures." Computational Linguistics, 20 (4), pp. 507-534.

Ma, X. and Hovy, E. (2016). "End-to-end Sequence Labeling via Bi-directional LSTM-CNNsCRF." In Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics, pp. 1064-1074. Association for Computational Linguistics.

Mikolov, T., Chen, K., Corrado, G. S., and Dean, J. (2013). "Efficient Estimation of Word Representations in Vector Space." In Proceedings of the 1st International Conference on Learning Representations.

Nivre, J., de Marneffe, M.-C., Ginter, F., Goldberg, Y., Hajič, J., Manning, C. D., McDonald, R., Petrov, S., Pyysalo, S., Silveira, N., Tsarfaty, R., and Zeman, D. (2016). "Universal Dependencies v1: A Multilingual Treebank Collection." In Proceedings of the 10th International Conference on Language Resources and Evaluation, pp. 1659-1666. European Language Resources Association (ELRA).

小椋秀樹, 小磯花絵, 冨士池優美, 宮内佐夜香, 小西光, 原裕 (2011). 『現代日本語書き言葉均
衡コーパス』形態論情報規程集 (第 4 版). 国立国語研究所.

Pennington, J., Socher, R., and Manning, C. D. (2014). "Glove: Global Vectors for Word Representation." In Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing, pp. 1532-1543. Association for Computational Linguistics.

Peters, M., Neumann, M., Iyyer, M., Gardner, M., Clark, C., Lee, K., and Zettlemoyer, L. (2018). "Deep Contextualized Word Representations." In Proceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long Papers), pp. 2227-2237. Association for Computational Linguistics.

Petrov, S., Barrett, L., Thibaux, R., and Klein, D. (2006). "Learning Accurate, Compact, and Interpretable Tree Annotation." In Proceedings of the 21st International Conference on Computational Linguistics and 44th Annual Meeting of the Association for Computational Linguistics, pp. 433-440. Association for Computational Linguistics.

Resnik, P. (1999). "Semantic Similarity in a Taxonomy: An Information-based Measure and Its Application to Problems of Ambiguity in Natural Language." Journal of Artificial Intelligence Research, 11 (1), pp. 95-130.

Shimbo, M. and Hara, K. (2007). "A Discriminative Learning Model for Coordinate Conjunctions." In Proceedings of the 2007 Joint Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning, pp. 610-619. Association for Computational Linguistics.

Stern, M., Andreas, J., and Klein, D. (2017). "A Minimal Span-Based Neural Constituency Parser." In Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 818-827. Association for Computational Linguistics.

Teng, Z. and Zhang, Y. (2018). "Two Local Models for Neural Constituent Parsing." In Proceedings of the 27th International Conference on Computational Linguistics, pp. 119-132. Association for Computational Linguistics.

Teranishi, H., Shindo, H., and Matsumoto, Y. (2017). "Coordination Boundary Identification with Similarity and Replaceability." In Proceedings of the 8th International Joint Conference on Natural Language Processing (Volume 1: Long Papers), pp. 264-272. Asian Federation of Natural Language Processing.

Teranishi, H., Shindo, H., and Matsumoto, Y. (2019). "Decomposed Local Models for Coordinate Structure Parsing." 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. 3394-3403. Association for Computational Linguistics.

Toutanova, K., Klein, D., Manning, C. D., and Singer, Y. (2003). "Feature-rich Part-of-speech

Tagging with a Cyclic Dependency Network." In Proceedings of the 2003 Conference of the North American Chapter of the Association for Computational Linguistics on Human Language Technology - Volume 1, pp. 173-180. Association for Computational Linguistics. Tsatsaronis, G., Schroeder, M., Paliouras, G., Almirantis, Y., Androutsopoulos, I., Gaussier, E., Gallinari, P., Artieres, T., Alvers, M. R., Zschunke, M., and Ngomo, A.-C. N. (2012). "BioASQ: A Challenge on Large-Scale Biomedical Semantic Indexing and Question Answering." In AAAI Fall Symposium Series: Information Retrieval and Knowledge Discovery in Biomedical Text, pp. 92-98.

Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., Kaiser, Ł., and Polosukhin, I. (2017). "Attention is All you Need." In Advances in Neural Information Processing Systems 30, pp. 5998-6008. Curran Associates, Inc.

Yoshimoto, A., Hara, K., Shimbo, M., and Matsumoto, Y. (2015). "Coordination-Aware Dependency Parsing (Preliminary Report)." In Proceedings of the 14th International Conference on Parsing Technologies, pp. 66-70. Association for Computational Linguistics.

## 略厤

寺西裕紀：2014 年慶應義塾大学商学部卒. 同年, 株式会社アイスリーデザイ ン入社. Web・モバイルアプリケーションの開発・運用に従事. 2018 年奈良先端科学技術大学院大学情報科学研究科博士前期課程修了. 同年, 同大学院先端科学技術研究科情報科学領域博士後期課程入学. 自然言語処理の研究に 従事.

進藤 裕之：2009 年, 早稲田大学先進理工学研究科博士前期課程修了. 同年 NTT コミュニケーション科学基礎研究所入所. 2013 年, 奈良先端科学技術大学院大学情報科学研究科博士後期課程修了. 2014 年より現在まで, 奈良先端科学技術大学院大学情報科学研究科助教. これまで, 主に自然言語処理の 研究に従事. 情報処理学会, 人工知能学会, 言語処理学会, ACL 各会員.

渡辺太郎：1994 年京都大学工学部情報工学科卒業. 1997 年京都大学大学院工学研究科情報工学専攻修士課程修了. 2000 年 Language and Information Technologies, School of Computer Science, Carnegie Mellon University, Master of Science 取得. 2004 年京都大学博士 (情報学)。ATR および NTT, NICT に て研究員, また, グーグルでソフトウェアエンジニアとして勤めた後, 2020 年より奈良先端科学技術大学院大学教授. 自然言語処理や機械学習, 機械翻
訳の研究に従事.

松本 裕治：1977 年京都大学工学部情報工学科卒. 1979 年同大学大学院工学研究科修士課程情報工学専攻修了. 同年電子技術総合研究所入所. 1984 85 年英国インペリアルカレッジ客員研究員. 1985～87 年（財）新世代コンピュー 夕技術開発機構に出向. 1988 年京都大学助教授, 1993 年奈良先端科学技術大学院大学教授. 2020 年理研 AIP 知識獲得チームリーダ, 現在に至る. 工学博士. 専門は自然言語処理. 情報処理学会, 人工知能学会, 言語処理学会, AAAI, ACL, ACM 各会員. 情報処理学会フェロー. ACL Fellow.

(2020 年 5 月 1 日 受付) (2020 年 7 月 1 日 再受付) (2020 年 7 月 29 日 採録)