# 単語と文書の関係によるグラフを用いた文書分類

中嶋宽武 ${ }^{1}$ 佐々木稔 ${ }^{1}$
1 茨城大学工学部情報工学科
\{18t40641, minoru. sasaki. 01\}@vc. ibaraki. ac. jp

## 概要

グラフ構造を利用した文書分類の手法の一つに RoBERTaGCNがある。RoBERTaGCNは、20NG、R8、 Ohsumed、MR の 4 つのデータセットによる文書分類において、既存手法の中で最高の性能を誇ってい る。しかし、RoBERTaGCN は、文書-単語ノード間 の関係と単語ノード間の関係は各ノード間の重みと して表現し考慮しているが、文書ノード間の関係は 考慮できていない。そこで、文書の分散表現のコサ イン類似度を文書ノード間の重みとしてグラフに追加することで、RoBERTaGCN の精度向上を試みた。実験の結果、RoBERTaGCN に対して、20NG で $0.67 \%$ 、 Ohsumed で $1.19 \%$ の分類性能の向上を確認できた。

## 1 はじめに

自然言語処理のタスクに文書分類がある。文書分類とは、与えられた文書に対して、事前に定義され たラベル群から適切なラベルを推定するタスクのこ とであり、その技術は、人間が文書を分類する作業 を自動化するための技術として実社会でも応用され ている。

文書分類の手法に RoBERTaGCN がある。 RoBERTaGCN は BERT の大量ラベルなしデータを 活用した大規模事前学習によって得られた知識と、 GCN のトランスダクティブ学習の利点を組み合わ せた手法である。この手法は、20NG、R8、Ohsumed、 MR の 4 つのデータセットによる文書分類において、既存手法の中で最高の性能を誇っている。

しかし、RoBERTaGCN は、文書ノードと単語ノー ド間の関係と単語ノード間の関係は各ノード間の重 みとして表現し考慮しているが、文書ノード間の関係は考慮できていない。そこで、文書ノード間の関係をノード間の重みとしてグラフに追加することで
RoBERTaGCN の精度向上を試みた。具体的には、各文書を BERT モデルに入力し、その最終の隠れ層に おける CLS ベクトルを得る。そして各文書の CLS ベクトルのコサイン類似度を計算し、それらを文書 ノード間の重みとして追加した。これにより、文書 ノード間の関係を考慮したグラフが作成でき、 RoBERTaGCN の各データセットにおける正答率を 上回ることを期待した。

コサイン類似度の閾値を 0.5 と $0.95 \sim 0.995$ まで の間 0.005 刻夕で設定して実験を行うことで、提案手法の性能を評価するとともに、各データセットに おける最適なコサイン類似度の閾値についても検討 を行った。

## 2 関連研究

Kipf ら[1]は、置み込み操作によって局所的に特徴量を抽出する畳み込みニューラルネットワーク (CNN）を、グラフデータに応用できるようにした GCN を提案した。Kipf らの GCN による文書分類は 2017 年当時、最高の精度で分類することができてい た。

Yao ら[2]は、文書分類のタスクに、GCNを適用し た手法である TextGCN を提案した。TextGCN は文書ノードと単語ノードを同一のグラフ(異種グラフ)上に表現し、それを $\mathrm{GCN}$ へ入力としている。 TextGCN は 2018 年当時、文書分類タスクにおいて state-of-the-art を達成した。

Yuxiao ら[3]は、BERT の大量ラベルなしデータを 活用した大規模事前学習によって得られた知識と、 GCN のトランスダクティブ学習の利点を組み合わ せた手法である BertGCN ${ }^{i}$ を提案した。BertGCN では、各文書を BERT に入力して、その出力から文書べク トルを抽出し、それを文書ノードの初期表現として 文書と単語の異種グラフとともに GCNへ入力する。


BertGCN は現在、文書分類タスクにおいて state-ofthe-art を達成している。

## 3 提案手法

提案手法の動作概要図を図 1 に示す。まず、文書 を入力として単語と文書の異種グラフを構築する。次に、そのグラフ情報（重み行列と初期ノード特徴行列）をBERT と RoBERTaGCN に入力し、それぞ れにおける予測結果を得る。最後に、それぞれの予測結果の線形補間を計算し、その結果を最終的な予測として採用する。尚、 3.1 節の内容が本研究におけ る RoBERTaGCN の改良点であり、3.2 節と 3.3 節の 処理は RoBERTaGCN に準拠している。

図 1 : 提案手法の動作概要図

## 3.1 異種グラフ構築

単語ノードと文書ノードを含む異種グラフを構築する。まず、ノード $i, j$ 間のエッジの重みを以下式 (1)のように定義する。単語ノード間のエッジの重み には自己相互情報量（PPMI）を使用する。単語ノー ドと文書ノード間のエッジの重みにはtfidf値を使用 する。RoBERTaGCN では、文書ノード間のエッジの 重みは定義していなかったが、本研究では、各文書 ベクトルの類似度を文書ノード間の重みとして定義 する。具体的には、各文書を BERT に入力し、その 最終の隠れ層から各文書の先頭に追加した特殊トー クンである[CLS]における重みである CLS ベクトル を得る。そして各文書の CLS ゙゙クトルのコサイン類似度を計算し、予め設定した閾値を超える類似度を 文書ノード間の重みとして付加する。

$A_{i, j}=\left.\{\begin{array}{cc}\text { COS_SIM }(i, j), & i, j \text { are documents }(i \neq j) \\ P P M I(i, j), & i, j \text { are words }(i \neq j) \\ T F-I D F(i, j), & \text { is document } j \text { is word } \\ 1, & i=j \\ 0, & \text { otherwise }\end{array}\right.$

次に、GCN に入力する初期ノード特徴行列を作成 する。BERT を用いて文書埋め込み表現を取得し、
それらを文書ノードの入力表現として扱う。文書ノ 一ドの埋め込み表現 $X_{d o c}$ は、文書数 $n_{d o c}$ と埋め込み 次元数dを用いて $X_{d o c} \in \mathbb{R}^{n_{d o c} \times d}$ で表される。総じて、初期ノード特徴行列は以下式(2)で与えられる。

$
X=\left(\begin{array}{c}
X_{\text {doc }} \\
0
\end{array}\right)_{\left(n_{d o c}+n_{\text {word }}\right) \times d}
$

## 3.2 GCN への入カと学習

式(1)と(2)で示したノード間のエッジの重みと初期ノード特徵行列を GCN に入力し、学習を行う。第 $i$ 層の出力特徴行列 $L^{(i)}$ は式(3)で計算される。

$
L^{(i)}=\rho\left(\tilde{A} L^{(i-1)} W^{(i)}\right)
$

$\rho$ は活性化関数であり、 $\tilde{A}$ は正規化された隣接行列 である。 $W^{i} \in \mathbb{R}^{d_{i-1} \times d_{i}}$ は第 $i$ 層における重み行列で ある。 $L^{(0)}$ は $X$ であり、モデルの入力特嘚行列にな っている。GCN の出力は文書ノードの最終表現と して扱われ、分類のためにその出力は Softmax 関数 に入力される。 $\mathrm{GCN}$ の出力による予測は以下式(4) で与えられる。

$
Z_{G C N}=\operatorname{softmax}(g(X, A))
$

## 3. 3 BERT と RoBERTaGCN による予測の補間

BERT 埋め込み表現を直接扱う補助分類器で RoBERTaGCN を最適化することにより、より高速な 収束と性能向上につなげている。具体的には、文書埋め込み表現 $X$ と重み行列 $W$ を softmax に直接送り 込むことで BERT による補助分類器を作成する。補助分類器による予測は以下式(5)で与えられる。

$
Z_{B E R T}=\operatorname{softmax}(W X)
$

そして、RoBERTaGCN からの予測である $Z_{G C N}$ と BERT (補助分類器) からの予測である $Z_{B E R T}$ で線形補間を行い、その線形補間の結果を最終的な予測と して採用する。線形補間の結果は以下式(6)で与えら れる。

$
Z=\lambda Z_{G C N}+(1-\lambda) Z_{B E R T}
$

$\lambda$ はつの予測の間のトレードオフを制御し、 $\lambda=1$ の場合は完全な RoBERTaGCN モデルを使い、 $\lambda=0$ の場合は BERT モジュールのみを使用することを意味する。 $\lambda \in(0,1)$ の場合、両方のモデルから予測の バランスを取ることができ、RoBERTaGCN のモデル をより最適化することができる。 $\lambda=0.7$ が $\lambda$ 最適值であることが Yuxiao らの実験によって明らかに されている。

## 4 実験

コサイン類似度の閾値を 0.5 と $0.95 \sim 0.995$ までの 間 0.005 刻みで設定して実験を行うことで、提案手法の分類性能を評価するとともに、各データセット における最適なコサイン類似度の閾値についても検討を行った。

## 4. 1 データセットについて

文書分類の実験において、よく用いられる英文コ ーパスである 20NG、R52、R8、Ohsumed、MR の 5 つをデータセットとして採用した。以下表 1 に各デ ータセットの文書数や平均単語数、訓練データ数と テストデータ数を示す。

表 1 : 各データセットの情報

 &  &  \\

各データセットについて以下 2 の項目の前処理 を施し実験を行った。

・ストップワードの除去

・記号の除去

各文書を特徴づける単語のみを残すこと、また、単語数を減らしメモリを節約することの両方を目的 として、ストップワードと記号を除去した。

## 4.2 実験結果

コサイン類似度の閾値ごとの実験結果を、もとの RoBERTaGCN での正答率と合わせて表 2 に示す。 ×とした項目は、メモリ不足によって実験が完了で きなかった項目である。また、Ohsumedについては、閾值 0.99 以上と 0.995 以上、閾値 0.975 以上と 0.98 以上の実験で、追加される CLS ベクトルのコサイン 類似度のエッジの数が同じであったため、まとめて 表記した。各データセットにおける CLS ベクトルの コサイン類似度の值の分布については付録に表形式 で示した。どのデータセットにおいても特定の閾値 において、元の RoBERTaGCN の分類性能を上回る ことが確認できたが、R8、R52、MR については元の RoBERTaGCN の性能を上回っている閾值が 1 つか
ら2つ程度となっており、安定的な分類性能の向上 が見られなかった。一方、20NG では、 0.95 から 0.995 までのどの閾値においても元の RoBERTaGCN の分類性能を上回っており、Ohsumed でも、大方の閾値 において元の RoBERTaGCN の分類性能を上回った。際立った結果としては、閾值 0.975 において $20 \mathrm{NG}$ で $0.67 \%$ 、閾值 0.965 において Ohsumed で $1.19 \%$ 、元の RoBERTaGCN の分類性能を上回ることが確認 できた。

表 2 : コサイン類似度の閾値ごとの実験結果

 & MR \\

\cline { 1 - 4 } 0.98 & 89.60 & 98.54 & 93.96 & 88.29 \\

\cline { 1 - 4 } 0.995 & 89.51 & $\mathbf{9 8 . 8 1}$ & 93.26 & 88.31 \\

## 5 考察

以下表 3 に、各データセットにおいて追加された 各種エッジの数とコサイン類似度の平均値を示す。

表 3 : エッジの数とコサイン類似度の平均值

 &  &  \\

×とした 20NG のコサイン類似度のエッジはコサ イン類似度を計算している途中でメモリ不足となり、
重みを付加し終えることができなかった。閾値を 0.5 に設定した実験では、20NG と R52、MR のデータセ ットにおいてメモリ不足により、実験が完了できな かった。また、実験が完了できた R8、Ohsumed にお いても、元の RoBERTaGCN の分類性能を大きく下回る結果となった。いずれの理由も追加する文書ノ ード間のエッジの重みの数が膨大になってしまった ことが原因と考えられる。どのデータセットにおい ても CLS ベクトルのコサイン類似度のエッジの数 が、pmi エッジや tf-idf エッジの 2 倍以上となってい る。また、CLS ベクトルのコサイン類似度の平均値 がいずれのデータセットにおいても 0.8 0.85 の間に あることから、同じジャンルではない文書ノード間 のエッジの重みも相当数追加され、それがノイズに なってしまっていると考えられる。

表 1 の各データセットの平均単語数と表 2 の実験結果を分析すると、提案手法は元の RoBERTaGCN と比較して、平均単語数が多いデータセットほどよ り高い分類性能を得やすいことが分かる。これは、平均単語数が多いほど、文書の CLS ベクトルにそれ らの文書の特徴がよく反映され、同じジャンルの文書ノード間により多くコサイン類似度の重みが追加 されたためと考える。反対に、平均単語数が少ない ほど、文書の CLS ベクトルに差が表れにくくなり、違うジャンルの文書の CLS ベクトルのコサイン類似度が高く出てしまい、違うジャンルの文書のノー ド間の重みにコサイン類似度の重みが追加されてし まったことが、分類性能が思うように上がらなかっ た要因であると考えられる。

表 2 において、分類性能の最高値を示している CLS ベクトルのコサイン類似度の間值における、追加されたエッジの数の割合を計算した。以下表 4 に 計算結果を示す。

表 $4:$ 追加されたエッジの数の割合

 &  &  \\

追加されたエッジの数の割合と分類性能に関係性 は見えてこないため、今後は、文書ノード間に追加 する重みを CLS ベクトルのコサイン類似度の閾値 で決定するのではなく、コサイン類似度の値の上位 ○といった基準での実験を行い、文書ノード間の エッジの数と分類性能の関係を明らかにする必要が ある。

## 6 おわりに

本論文では、文書ノード間のエッジの重みとして 文書の CLS ベクトルのコサイン類似度を付加する ことで RoBERTaGCN を改良でき、元の RoBERTaGCN の分類性能を上回ることを確認した。特に、提案手法は長い（平均単語数の多い）文書に 対して特に有効であることが実験によって示された。

今後は、提案手法と BertGCN の相性や、GCN で はなく代わりに GAT を用いた場合の分類性能につ いても、実験を行って確認していきたい。

## 参考文献

1. Kipf, T. N., and Welling, M. 2017. Semi-supervised classification with graph convolutional networks. In ICLR. 2. Liang Yao, Chengsheng Mao, and Yuan Luo. 2019. Graph Convolutional Networks for Text Classification. In AAAI-19.

3. Yuxiao Lin, Yuxian Meng, Xiaofei Sun, Qinghong Han, Kun Kuang, Jiwei Li and Fei Wu. 2021. BertGCN: Transductive Text Classification by Combining GCN and BERT.

## A 付録


 中嶋宽武 ${ }^{1}$ 佐々木稔 ${ }^{1}$ 1 茨城大学工学部情報工学科 \{18t40641, minoru. sasaki. 01\}@vc. ibaraki. ac. jp  