# 自動獲得された因果関係知識に基づく文間の因果関係の推定

山田涼太
北陸先端科学技術大学院大学
yamada224@jaist.ac.jp

## 1 はじめに

文間の因果関係の推定は，質問応答システムな ど，自然言語処理における幅広い場面で応用できる 技術である。ここで，文間の因果関係の推定とは， 2 つ文 $C$ と $E$ が与えらたとき, $C$ が $E$ によって表 される事象を引き起こす原因になっているか否かを 推定するタスクとする。これまでの因果関係推定の 研究は教師あり機械学習に基づく手法が主流であっ た。しかし，教師あり機械学習のためには因果関係 の有無が付与された大量の文の組の集合が必要で ある。

本研究は，ブートストラップの手法によって因果関係が付与されたデータセットを自動構築し，それ を元に文間の因果関係推定モデルを学習する手法を 探究する [1]. データセットの構築, および因果関係推定モデルの学習には, 近年自然言語処理の様々 なタスクで良い成果が得られている Bidirectional Encoder Representationsfrom Transformers (BERT)[2] を 用いる. また, 自動獲得された因果関係知識の量と 推定精度の相関を実験的に検証する。

## 2 関連研究

Kruengkrai らは, 訓練デー夕における原因文と結果文のそれぞれから得られた単語ベクトルや, 質問応答システムの回答から得られた情報から, 畳 み込みニューラルネットワークを用いて因果関係を判定する手法を提案した [3]. 実験の結果, こ

た. Hashimoto らは，文間の因果関係を推定する SVM(Support Vector Machine) を学習し, 得られた原因-結果の因果関係を推移律によって繋げることで，先に起こることを予測するシナリオを生成した [4].実験では， $68 \%$ の精度で 50,000 のシナリオを作成で きたと報告している。これらの研究では, 因果関係 を推定するモデルは人手で構築された訓練データか ら学習されている。

\author{
白井 清昭 \\ 北陸先端科学技術大学院大学 \\ kshirai@jaist.ac.jp
}

Abe らは，特定の関係が成立する単語の組とそれ を抽出するためのパターンを同時に獲得するアルゴ リズム [5]を応用し，因果関係の文の組とそれを抽出するパターンを自動獲得する手法を提案した [6].例えば，同じ文内に出現しかつ同じ目的語を持つ 2 つの節を因果関係が成立する文の組として抽出する パターンが得られた。

本研究は, 人手によるアノテーションを必要とし ない手法によって文間の因果関係を推定するモデル を学習する点に特徴がある。文献 [6] の手法でも因果関係が付与されたデータを必要としないが，コー パスから因果関係が成立する文の組を抽出すること を目的としているのに対し, 本研究は 2 文間の因果関係の推定モデルの学習を目的としている点が異 なる。

## 3 提案手法

## 3.1 概要

提案手法の処理の流札を図 1 に示す.まず，コー パスから，ヒューリスティクスによって因果関係の 有無のラベルが付与された初期のデータを作成す る。作成した初期デー夕は, 訓練デー夕, 開発デー 夕，検証デー夕に分割する。一方，コーパスから因果関係の有無のラベルが付与されていない文の組の 集合をあらかじめ獲得する。

推定モデルの学習は通常のブートストラップ法に したがう。まず，初期の訓練データと開発データか ら，因果関係の有無を判定するモデルを学習する。次に，ラベルなしデー夕に学習した因果関係推定モ デルを適用し, 判定結果が付与された新たなデー夕 セットを得る。この中から判定の信頼度が高いデー 夕を選別し, 訓練デー夕に追加する。この処理を繰 り返すが，推定モデルを学習する度に，検証デー夕 を用いてモデルによる因果関係推定の正解率を測 り，ひとつ前のステップで学習されたモデルから正解率が改善されなければ，学習を終了する (図 1 の

図 1 提案手法の概要

「終了判定」). 最終的に得られる因果関係推定モデ ルは，初期データと自動拡張したデー夕を合わせた データから学習されたものとなる.

## 3.2 初期データの作成

コーパスから因果関係が成立する可能性の高い文 の組を収集する，具体的には，接続詞「から」「の で」を含む文を検出し，その前後に出現する文を抽出する，以下に示す例文のように，「から」「ので」 で結ばれた文の間には因果関係が成立する可能性が 高いと考える。

電車が止まったからバスが混む 雨が降ったので地面がぬかるんでいる

因果関係が成立する文の組 $(C, E, y e s)$ を以下の手続きで抽出する.

1. 接続詞「から」「ので」(以下，「因果関係キー ワード」と記す)を含み，かつその直前が動詞 または助動詞である文を抽出する。

2. CaboCha[7] を用いて文の文節の係り受け解析を 行う.

3. 因果関係キーワードを含む文節に係り，かつそ の末尾が助詞である文節を抽出する。また，抽出した文節に係り, かつその末尾が助詞であ る文節も抽出する。この操作を再帰的に繰り 返す。最後に，抽出した文節を連結し，「から」「ので」を削除して，文 $C$ を得る.

4. 因果関係キーワードの後に最初に出現する動詞 を検出する，同様に，動詞に係りかつ末尾が助

図 2 因果関係が成立する文の組の抽出例

詞である文節を再帰的に抽出する．抽出した文節を連結して文 $E$ を得る。
5. $C, E$ のいずれかの文字数が 7 未満のとき，こ れを除外する。

6. これらの文に因果関係が成立するというラベル 「yes」をつけ, $(C, E$, yes $)$ という組を抽出する.

上記の手続きによる抽出の例を図 2 に示す。

因果関係を推定するモデルを学習するためには,因果関係が成立する文の組 (正例) だけでななく, 成立しない文の組 (負例) も必要である。負例は以下 の手続きで獲得する．先の手続きで得られた正例の データセットの集合を $\left.\{\left(C_{i}, E_{i}, y e s\right)\right.\}$ と記す. 原因文 $C_{i}$ に対し, 他の組の結果文 $E_{j}(i \neq j)$ の中からラ ンダムに 1 つを選択し, 負例 $\left(C_{i}, E_{j}, n o\right)$ を生成す る.この操作を全ての $C_{i}$ について繰り返す。結果 として，正例と同数の負例を得る.

初期デー夕は, あらかじめ 8:1:1 の比率で, 訓練 データ，開発デー夕，検証デー夕にランダムに分割 する。

## 3.3 因果関係推定モデルの学習

原因文 $C$ と結果文 $E$ の組が与えられたとき，そ れらの間に因果関係が成立するか否かを判定する モデルを学習する. このモデルを BERTを用いて学習する。すなわち，入力を以下のような系列に変換 する。

[CLS] $c w_{1} \cdots c w_{n}$ [SEP] $e w_{1} \cdots e w_{m}$ [SEP]

[CLS] は文の組の分類のための抽象表現を得るた

めのトークン, $[\mathrm{SEP}]$ は 2 つの文の境界を示すトー クン, $c w_{i}$ は原因文の単語, $e w_{i}$ は結果文の単語を 表す。

BERT による分類モデルの学習は, pre-training(事前学習) と fine-tuning の 2 つのステップから構成さ れる。事前学習済みの言語モデルとして, 日本語版 Wikipedia から事前学習され, 京都大学によって公開 されているモデル [8] を使用する。一方, fine-tuning は因果関係の有無のラベルが付与された訓練デー 夕と開発デー夕を用いて行う。学習率 (learning rate) は $2^{-5}$, バッチサイズは 32 , エポック数は 10 と設定 する。

## 3.4 訓練データの拡張

訓練データを抬張するために，ラベルなしデー夕 をあらかじめ用意する。接続詞「ため」をキーワー ドとし, 初期データの作成と同様の手続きで原因文 $C$ と結果文 $E$ の候補の組を抽出する。「ため」の前後に出現する文は, 以下の文 1 のように因果関係が 成立する場合もあれば，文 2 のように従属節が主節 の目的を表す場合もあるため, 正例と負例が混在し たデータが得られることが期待できる。

文1: 雪が降ったため遠足は中止になった

文 2: 学会で発表するため何回も練習した

$n$ 回目の反復ステップで学習された因果関係推定モデルを $M_{n}$ と記す。すなわち， $M_{n-1}$ を用いて 訓練デー夕を拡張し, 拡張後のデー夕で $M_{n}$ を再学習する。初期データから学習された因果関係推定モデルは $M_{0}$ とする. ラベルなしデー夕の集合 $\left.\{\left(C_{i}, E_{i}, ?\right)\right.\}$ (?は因果関係の有無が不明であることを 表す) は, 因果関係判定モデルの反復学習のたびに,別のものを用意する. 以降， $n$ 回目の反復で訓練 デー夕抎張のために用いるラベルなしデー夕の集合 を $U_{n}$ と記す。

訓練デー夕の拡張では, モデル $M_{n-1}$ を用いて $U_{n}$内の文の組に対して因果関係の有無を判定する。さ らに, 判定の信頼度も求める. 判定の信頼度は, こ こでは BERTによる因果関係推定モデルにおける出 カノードの値とする． $U_{n}$ の中から判定の信頼度の 大きいデー夕を選別し, 訓練デー夕に追加する.

予備実験では, 信頼度が上位のデー夕の多くが,因果関係推定モデルによって 2 つの文の間に因果関係が成立すると判定されていた。つまり，判定の 信頼度が上位のデータのほとんどが正例であった。 そのため，訓練デー夕に追加するデー夕を作成する際に，正例と負例のバランスを取る。具体的には,追加デー夕の数を $N_{\text {add }}$ と設定するとき, 信頼度の 大きい順に正例の数が $N_{a d d} / 2$ 件に到達するまで追加データを取得する。この中に含まれる負例の数が $N_{\text {neg }}$ のとき $N_{\text {add }} / 2-N_{\text {neg }}$ 件の負例を新たに作成 する.この負例は, 初期デー夕の作成時と同様に, ラベルなしデータ $U_{n}$ の中から原因文と結果文をラ ンダムに組み合わせて作成する. 最終的に正例と負例の数が等しい $N_{a d d}$ 件のデータを拡張データとし, これを訓練データに追加する．以降，拡張した訓練 データを用いて因果関係推定モデルを再学習する。

## 4 評価実験

## 4.1 実験データ

初期データは, 毎日新聞の 2009 年から 2013 年の 記事から獲得した. 初期データの数は 2,796(正例,負例が 1,398 ずつ)であった。

ラベルなしデータは, 同様に毎日新聞の新聞記事 データから獲得した。 $U_{1}$ は 2013 年, $U_{2}$ は 2012 年, $U_{3}$ は 2011 年の新聞記事から獲得した。提案手法で は, 検証デー夕の正解率が向上しなくなった時点で 訓練デー夕の追加を停止するが，今回の実験では試験的に反復回数を 3 回と設定している. $U_{i}$ は互いに 重なりはなく, また抽出に用いた因果関係キーワー ドが異なるため, 初期デー夕とも重なりはない.前述の検証デー夕は自動構築されたものである. これとは別に, 因果関係推定モデルの性能を正確に 測るため, テストデー夕を人手で作成した。接続詞「から」をキーワードとして抽出した文の組を 50 件,「ので」について 50 件,「ため」について 100 件,合計 200 件の文の組を抽出した。これらに対して,著者 2 名が独立に因果関係の有無を判定した。二者 の判定の一致率は $72 \%, \kappa$ 係数は 0.44 であった。一致率や $\kappa$ 係数は低いが，これは因果関係が成立する かを判定する際に，どれだけ常識的知識を使って情報を補うかに関して見解が分かれることが主な原因 であった。例えば， $\mathrm{C}=\ulcorner 2$ 歳だった」, $\mathrm{E}=\ulcorner$ 原爆の 記憶はない」のとき, 1 名の判定者は 2 歳という幼 ない年齢では記憶が残らないと判断し, 因果関係が あると判定したが，もう 1 名の判定者は 2 つの文に 強い関連性がないと判断した。判定が異なる文の組 については, 著者 2 名の合議により最終的なラベル を決めた。テストデータの正例数は 69 , 負例数は 131 となった.
表 1 判定の信頼度と判定精度の関係

 &  \\

0.9 & $0.787(70 / 89)$ & $63: 26$ & $57: 13$ \\
1.0 & $0.797(55 / 69)$ & $58: 11$ & $54: 1$ \\
1.1 & $0.839(47 / 56)$ & $47: 9$ & $47: 0$ \\
1.2 & $0.860(43 / 50)$ & $43: 7$ & $43: 0$ \\
1.3 & $0.897(35 / 39)$ & $35: 4$ & $35: 0$ \\
1.4 & $0.906(29 / 32)$ & $29: 3$ & $29: 0$ \\
1.5 & $0.895(17 / 19)$ & $17: 2$ & $17: 0$ \\

表 2 因果関係推定モデルの反復学習の結果

## 4.2 実験結果と考察

提案手法では，BERT モデルの出力ノードの値を 判定の信頼度とし，これが高いデー夕を訓練デー夕 に追加する。この妥当性を検証するために，判定の 信頼度が閾値 $t$ 以上のデー夕に対する精度を $P_{t}$ と し, $t$ を変化させたときの $P_{t}$ の変動を調べた. 検証 に用いた因果関係推定モデルは初期データで学習し たもの $\left(M_{0}\right), P_{t}$ を調べるためのデー夕は (自動作成 した) 検証デー夕を用いた。結果を表 1 に示す。閾值 $t$ が大きいほど判定の精度が高いことから，BERT モデルの出力ノードの値を判定の信頼度とすること は妥当であるといえる。また，判定の信頼度が高く なると, 負例の数が正例の数よりもかなり少なくな る傾向も見られた。

表 2 は，それぞれの反復ステップ $i$ について，ラ ベルなしデータ $U_{i}$ の数 (3 列目), 訓練デー夕の総数 (4 列目), および検証データでの正解率 (5 列目) を示している，今回の実験では，一回の反復で追加 するラベル付きデータの数 $N_{a d d}$ を 2000 と設定し た. 検証デー夕での正解率は, 1 回目の反復で向上 し， 0.657 となったが，それ以降は変動はあるもの の，この正解率を越えることはなかった。

表 3 は学習したモデルを用いてテストデー夕の因果関係を判定した結果である。2 行目の「正解率」 はモデルによる因果関係の有無の判定が正解と一致 した割合である。また，本実験の夕スクは因果関係表 3 因果関係推定モデルの評価

} & 精度 & 0.368 & 0.383 & 0.378 & 0.364 \\

が成立するか否の二値分類問題なので，因果関係あ りのクラスとなしのクラスのそれぞれについて，精度, 再現率, $\mathrm{F}$ 値を調べた。正解率は反復回数が 2 のときに最大で， 0.520 となった。初期デー夕のみ から学習したモデル $M_{0}$ と比べて 0.045 ポイント上昇したことから, 訓練デー夕の拡張は効果があるこ とが確認された。しかし, 正解率自体は 5 割程度で あり，二者の判定の一致率 $72 \%$ と比べても決して高 くなく，改善が必要である。

「因果関係あり」クラスの $\mathrm{F}$ 值は反復が進むにつ れて低下するが，「因果関係なし」クラスの $\mathrm{F}$ 値は 反復回数 2 回までは向上する。このことから，訓練 データの拡張は，因果関係が成立しない文の組に対 して正しく判定ができるようになる効果が大きいと 言える。

正解率のピークは，表 2 の検証データでは反復回数が 1 のとき，表 3 のテストデータでは反復回数が 2 のときと，一致していない．検証デー夕は自動作成されたものであり，テストデータと性質が異なる ことが原因のひとつと考えられる，反復をいつ停止 するかは重要な研究課題である。

## 5 おわりに

本論文は，人手によるアノテーションなしに文間 の因果関係を推定する手法を提案した。ブートスト ラップ法によって自動獲得された訓練データが推定 モデルの正解率の向上に寄与することを確認した。今後の課題として, 初期デー夕の正例の中には誤り も少なからず含まれているため，真に因果関係が成立する文の組をより正確に選別するルールを開発す ることが挙げられる。また，本研究では負例はラン ダムに文を組み合わせて作成したが，2つの文は明 らかに無関係であり，因果関係推定モデルの学習に どれだけ寄与するか疑問が残る。より適切な負例の 作成方法の探究も今後の重要な課題である.

## 参考文献

[1]山田涼太. 自動獲得された因果関係知識に基づく 文間の因果関係の推定. 修士論文, 北陸先端科学技術大学院大学, 32021.

[2]Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pp. 4171-4186, 2019.

[3]Canasai Kruengkrai, Kentaro Torisawa, Chikara Hashimoto, Julien Kloetzer, Jong-Hoon Oh, and Masahiro Tanaka. Improving event causality recognition with multiple background knowledge sources using multi-column convolutional neural networks. In Proceedings of the Thirty-First AAAI Conference on Artificial Intelligence, pp. 3466-3473, 2017.

[4]Chikara Hashimoto, Kentaro Torisawa, Julien Kloetzer, Motoki Sano, István Varga, Jong-Hoon Oh, and Yutaka Kidawara. Toward future scenario generation: Extracting event causality exploiting semantic relation, context, and association features. In Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics, pp. 987-997, 2014.

[5]Patrick Pantel and Marco Pennacchiotti. Espresso: Leveraging generic patterns for automatically harvesting semantic relations. In Proceedings of the 21st International Conference on Computational Linguistics and 44th Annual Meeting of the Association for Computational Linguistics, pp. 113-120, 2006.

[6]Shuya Abe, Kentaro Inui, and Yuji Matsumoto. Acquiring event relation knowledge by learning cooccurrence patterns and fertilizing cooccurrence samples with verbal nouns. In Proceedings of the Third International Joint Conference on Natural Language Processing, pp. 497-504, 2008.

[7]工藤拓, 松本裕治. チャンキングの段階適用に よる日本語係り受け解析. 情報処理学会論文誌, Vol. 43, No. 6, pp. 1834-1842, 2002.

[8]BERT 日本語 pretrained モデル. http://nlp.ist.i.kyotou.ac.jp/index.php?ku_bert_japanese. (2020 年 12 月閲覧).
 山田涼太 北陸先端科学技術大学院大学 yamada224@jaist.ac.jp  