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

分子構造を用いた文書からの薬物相互作用抽出
Extracting Drug-Drug Interactions from Texts using Molecular Structures
浅田 真生

三輪 誠

佐々木 裕

Masaki Asada

Makoto Miwa

Yutaka Sasaki

豊田工業大学
Toyota Technological Institute{sd17402, makoto-miwa, yutaka.sasaki}@toyota-ti.ac.jp

はじめに

1

ために正解付きコーパスを増やすことはコストが大
きい．

患者に薬物を併用投与する場合，薬物の本来の作用が増強・減弱することや，副作用が起きることがあり，このことを薬物相互作用とよぶ．薬学論文等から2.2の相互作用自動抽出を行う研究は重要であり，近年はニューラルネットワークを用いた手法 [3, 5] が注目されている．ニューラルネットワークの学習には薬学専門家により正解付けされたコーパスが必要であり，コーパス作成はコストが大きいため増やすことが難しい．
そのため，既存の外部薬物データベース上から，相互GCN

GCN はグラフ構造を入力としたニューラルネットワークであり，分子構造を入力とした分子の物性予測などに利用されており，シミュレーションによる手法よりも高速に物性値の予測ができる．グラフ構造 Gは，GCN により実数値ベクトル g に変換される．

作用抽出に有用な情報を低コストに獲得する研究は重

2.2.1

要である．
また，近年，分子構造のようなグラフ構造を扱う

Graph Convolutional Network (GCN) が化合物の物質推定などにおいて注目されている．
本研究では，薬物の相互作用情報と分子構造を掲載した外部薬物データベース上で，相互作用情報を教師とし，GCN によって薬物の分子構造の表現を事前学習し，獲得した分子構造表現を文書からの相互作用抽出に利用し，分子構造の利用可能性を調査することを目的とする．

Neural Fingerprint

Devenaud らは Neural Fingerprint (NFP) [1] モデルを提案し，化合物の水溶度・毒性推定において高い精度を示している．グラフ G のノード v について，vに近接するノード集合を N (v) で表現する．
mt+1=v∑[htw ; evw ](1)w∈N (v)

ここで，htv はノード v の更新 t ステップ目のベクトル表現であり，T ステップまで更新を行う．また，h0v
は原子 v の入力素性である．evw はノード v, w 間の2関連研究

2.1

CNN を用いた薬物相互作用抽出エッジの表現ベクトルである．[. . . ; . . . ] はベクトルの連結を表す．
deg(v)

ht+1= σ(Htv

Liu らは薬物相互作用抽出の精度向上を目的とし，Convolutional Neural Network (CNN) を用いた手法[3] を提案し，高い性能を示している．しかし，モデルの学習のために使用するコーパスは，薬学専門家によって人手で作成されたものであり，より高い性能のmt+1v )

(2)deg(v)

deg(v) はノード v の次数であり，Htは重み，σはシグモイド関数である．グラフ構造を表す実数値ベクトル g は式 (3) のようになる．
g=∑softmax(Wt htv )(3)v,t― 1239 ―Copyright(C) 2018 The Association for Natural Language Processing.
All Rights Reserved.

図 1: 提案手法の全体図

2.2.2

正解付けされたコーパス上での CNN による相互作用

Gated-Graph Neural Network

Li らは，Gated Reccurent Unit (GRU) を用い抽出に利用する．

た GCN モデルである Gated-Graph Neural Nework(4)

外部データベース上での分子構造ベク
トルの獲得

Aevw はエッジの種類ごとに割り当てられる重みであ

データベースを用いて，2 つの薬物の分子構造を GCNる．GRU によりノード表現ベクトルを更新する．

によりベクトルで表現する．それぞれの分子構造ベク(GGNN) [2] を提案している．
∑mt+1=Aevw htwv

3.1w∈N (v)ht+1= GRU([htw ; mt+1vv ])薬物の相互作用情報と，分子構造を掲載した外部トルを連結し，相互作用を持つか持たないかの二値分(5)

グラフ全体の表現ベクトル g は式 (6) のように表さ類問題を解くことでニューラルネットワークを学習し，その中間表現である分子構造ベクトルを獲得する．

れる．

g=

∑σ(i([hTv ; h0v ])) ⊙ (j([hTv ; h0v ]))g = [g1 ; g2 ](7)ŷ = softmax(W (2) relu(W (1) g + b(1) ) + b(2) )

(8)

(6)v

ここで i, j は単層パーセプトロン，⊙ は全要素積である．

W (1) , W (2) は重み，b(1) , b(2) はバイアスである．予測 ŷ と正解ラベルの交差エントロピー損失を最小にするように学習を行う．最適化には Adam を用いる．

3

提案手法
本研究では，文書からの相互作用抽出における薬物3.2の分子構造情報の利用可能性を検証するために，外部データベース上で分子構造表現を事前学習し，学習した分子構造表現を文書からの相互作用抽出に利用する手法を提案する．モデルの全体像を図 1 に示す．はじめに外部薬物データベース上の相互作用情報を教師とし，薬物の分子構造を入力として，分子構造のベクトCNN による入力文表現

薬物のペアを含む入力文 S = (w1 , w2 , · · · , wN ) が与えられたときにターゲットの薬物間の関係を予測する．単語 wi の単語ベクトルを wi ，畳み込みのウィンドウサイズの集合を {k1 , · · · , kL }，出力の次元数を C ，重み，バイアスを W conv ，bconv とする．

ル表現を事前学習する．獲得した分子構造ベクトルを― 1240 ―zi,l = [(wi−(kl −1)/2 ), · · · , (wi−(kl +1)/2 )](9)

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

mi,j,l = relu(Wjconv ⊙ zi,l + bconv )(10)

Max プーリングを行い，薬物ペアの表現を以下のように得る．

hl = [h1,l , · · · , hC,l ], hj,l = max mi,j,l .

負例をそれぞれ 4：1 に分割し，訓練データ，評価データとした．分子構造ベクトルの事前学習に使用したハイパーパラメータを表 1 に示す．

(11)

i

正解付きコーパス上での相互作用抽出

4.1.2

hconv = [h1 ; . . . ; hL ].

(12)

使用するコーパスは，Semeval-2013 Task 9 データ
セット [4] である．このデータセットは，薬物を含ん3.3分子構造表現を用いた相互作用抽出だ文から構成され，どの単語が薬物であるかはあらか

CNN の出力と，入力文中の薬物ペアの分子構造ベクトルを以下のように連結する．

じめ特定されている．データセットは以下に示す 4 種類の相互作用が正解付けされており，本実験では薬物のペアの相互作用の有無および，相互作用を持つ場合

hall = [hconv ; g1 ; g2 ](13)

は 4 種類のうちのどの相互作用を持つかを求める．

Mechanism: 2 つの薬物が薬力学的作用を持つ．

ただし，分子構造ベクトル g1 , g2 はそれぞれ正規化をEﬀect: 2 つの薬物が薬動態学的作用を持つ．

行う．薬物間の関係表現 ŷ を以下のように得る．

ŷ = softmax(W (2) relu(W (1) hall + b(1) ) + b(2) ) (14)Advice: 2 つの薬物を併用する際の推奨を表す．

W (1) , W (2) は重み，b(1) , b(2) はバイアスである．予Int: 相互作用を持つことのみを表す．
データセットの内訳を表 2 に示す．表 2 より，相互作

測 ŷ と正解ラベルの交差エントロピー損失を最小にす用を持つペアよりも相互作用を持たないペアが多いこるように学習を行う．最適化には Adam を用いる．事とがわかる．コーパス中の薬物と DrugBank の薬物前学習した単語ベクトルは fine-tuning し，分子構造の対応は文字列の部分一致により判断した．コーパス

ベクトルは fine-tuning しない．W (1) , W (2) , W conv ,中の薬物のうち DrugBank 中の薬物と対応が取れた

単語ベクトル埋め込み行列に対して L2 正則化を行う．

ものの割合を表 3 に示す．一致が取れなかった薬物のまた，更新のたびに全ての学習する重みを取り出し，分子構造ベクトルの初期値は 0 ベクトルを用いた．入予測時は平均化した重みを用いる．

力文は GENIA tagger により単語分割を行った．また，Liu ら [3] と同様に，ターゲットの 2 つの薬物はそれぞれ “DRUG1”，“DRUG2” に，それ以外の薬物は4

実験

4.1

実験設定

4.1.1

外部データベース上での分子構造ベクトルの“DRUGOTHER” に置き換える前処理を行った．相互事前学習
薬物データベース DrugBank に掲載された薬物のうち，相互作用を持つ薬物ペア 255,342 組を正例とし，相互作用の掲載されていない薬物ペアからランダムに正例と同じ数だけサンプリングして負例とした．正例，
表 1: 分子構造ベクトル学習のハイパーパラメータ
パラメータ値
分子構造ベクトルの次元数
ステップ数

表 2: 正解付きコーパスの内訳
訓練データ 評価データ
文数

6,976

1,299

ペア数

27,7925,716

相互作用を持つペア数

4,021979

相互作用を持たないペア数

23,771

4,737

Mechanism1,319
1,687

Eﬀect
AdviceInt302826

360
221

18996504

中間層の次元数

1,000

学習率0.001

表 3: コーパス中の薬物の一致率 (%)
DRUG1 DRUG2

ミニバッチサイズ

100

訓練データ

94.51

95.71

NFP モデルの隠れ層次元数

50

評価データ

94.89

95.74

GGNN モデルの GRU 次元数

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

作用抽出の学習に使用したハイパーパラメータを表 4

パスにおける相互作用抽出精度を表 6 に示す．Zhengに示す．

らは LSTM と注意機構を用いた手法 [5] で，Semeval2013 Task 9 コーパスにおいて世界最高精度を示している．NFP モデル，GGNN モデルのいずれにおいて単語ベクトルの事前学習

4.1.3

も，事前学習した分子構造ベクトルを素性に加えるこ

単語ベクトルの事前学習は Skip-gram によって行っとにより，F 値が高くなった．また，分子構造ベクトた．事前学習に用いたコーパスは PubMed2014 のデー

ルを加えることにより，Recall がより高くなることがタで，語彙数は 215,840 である．前処理によって置きわかった．Liu [3]，Zheng [5] らのモデルも分子構造換えられた “DRUG1” および “DRUG2” の単語ベクを利用することで精度が上がることが期待される．

トルの初期値は “drug” と同じ値を用いた．訓練データ
中に新しく出現した単語のベクトルは，事前学習した全単語の単語ベクトルの平均値を使用した．訓練デー

6

タ中の単語のうち，出現頻度が 1 である単語を未知語として扱った．

おわりにあらかじめ外部薬物データベース上で学習した薬物の分子構造ベクトルを用いて CNN による薬物相互作用抽出を行い，分子構造ベクトルを用いない場合よりも精度を上げることができた．今後は外部データベー

結果

5ス上の学習と，コーパス上の学習を同時に行う手法を

DrugBank 中の薬物ペアのそれぞれの分子構造を入力とし，相互作用あり・なしの 2 値分類を行った結果を検討し，分子構造のさらなる利用可能性を調査していきたい．

表 5 に示す．GGNN モデルは NFP モデルよりも高い正解率を示した．続いて，SemEval 2013 Task 9 コー
表 4: 相互作用抽出のハイパーパラメータ
パラメータ値
単語ベクトルの次元数200

中間層の次元数

500

畳み込みのウィンドウサイズ
畳み込みの次元数

本研究は JSPS 科研費 JP17K12741 の助成を受けたものである．

{3,5,7}

参考文献

100

学習率

[1] David K Duvenaud, Dougal Maclaurin, Jorge Iparraguirre, Rafael Bombarell, Timothy Hirzel, Alán
Aspuru-Guzik, and Ryan P Adams. Convolutionalnetworks on graphs for learning molecular fingerprints. In Advances in neural information processingsystems, pp. 2224–2232, 2015.

0.001

ミニバッチサイズ

50

L2 正則化の係数

0.0001[2] Yujia Li, Daniel Tarlow, Marc Brockschmidt, andRichard Zemel. Gated graph sequence neural networks. International Conference on Learning Representations, 2016.

表 5: DrugBank 上の 2 値分類精度
手法
正解率 (%)

手法

謝辞

NFP

94.06

GGNN

98.03

[3] Shengyu Liu, Buzhou Tang, Qingcai Chen, and Xiaolong Wang. Drug-drug interaction extraction via
convolutional neural networks. Computational andmathematical methods in medicine, Vol. 2016, , 2016.

表 6: 相互作用抽出精度
Precision (%) Recall (%) F 値 (%)[4] Isabel Segura Bedmar, Paloma Martı́nez, and Marı́aHerrero Zazo. Semeval-2013 task 9: Extraction ofdrug-drug interactions from biomedical texts (ddiextraction 2013). Association for Computational Linguistics, 2013.

CNN

69.07

69.36

69.21

CNN+NFP

68.39

73.14

70.68

CNN+GGNN

68.98

73.14

71.00

Liu [3]

75.29

60.37

67.01

Zheng [5]

75.9

68.7

71.5

[5] Wei Zheng, Hongfei Lin, Ling Luo, Zhehuan Zhao,Zhengguang Li, Yijia Zhang, Zhihao Yang, and JianWang. An attention-based eﬀective neural model for
drug-drug interactions extraction. BMC bioinformatics, Vol. 18, No. 1, p. 445, 2017.

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