# Hie-BART : 階層型 BART による文書要約

秋山 和輝 1 二宮 崇 ${ }^{1}$
1 愛媛大学大学院理工学研究科 電子情報工学専攻,
2 同志社大学 理工学部 情報システムデザイン学科
 }^{1}\left.\{}.$ k_akiyama@ai., ninomiya@\}cs.ehime-u.ac.jp, ${ }^{2}$ aktamura@mail.doshisha.ac.jp

## 1 はじめに

近年，高い精度を報告している生成型の自動要約 モデルは，ニューラルネットワークに基づくニュー ラル要約モデルであり，その多くが事前学習を導入 している。これまで自動要約タスク用に拡張された 事前学習モデルとして，BERTSUM モデル [1]が提案 されている。また，複数タスクで利用することので きる汎用的な事前学習モデルとして，T5 モデル [2] や BART モデル [3] が提案されている. 既存の事前学習モデルの中でも，BART モデルは高い精度での 自動要約を可能にしている。しかし，BART モデル は要約生成時に文書の階層構造をとらえる構造には なっていない。

一方，ニューラル要約モデル同様，系列変換モデ ルが適用されることが多いニューラル機械翻訳で は, 入力テキストの情報を「フレーズと単語」や「単語と文字」といった複数の粒度で捉えることで，翻訳精度の改善を実現している. Transformer[4] に基 づくニューラル機械翻訳モデルでは，入力テキスト を複数の粒度（単語やフレーズ）に分解し，それぞ れの粒度を Multi-head Self-Attention Networks (SANs) の各ヘッドに割り当てることで，単語とフレー ズの関係を考慮する Multi-Granularity Self-Attention (MG-SA)[5] を組み込むことで，翻訳精度を向上させ ている.このモデルでは，MG-SAにより，単語間だ けでなく単語とフレーズ間の相互作用を組み込むこ とが可能となる.

そこで，本研究では，MG-SA の概念を BART モ デルに適用し，文と単語の階層的な関係を考慮し た要約を可能とする手法として，Hierarchical-BART (Hie-BART) を提案する. 具体的には, 入力文書を単語レベルと文レベルの情報に分割し，BART におけ る Encoderの SANS 層では，単語レベルの関連を計算 するだけではなく，一部のへッドにおいて文レベル
の関連を計算する。そして，単語レベルと文レベル のマルチヘッドの出力を結合させることで，単語レ ベルと文レベルの双方を考慮した要約生成を行う。

提案モデルの評価は, CNN/DailyMail データセッ 卜[6]を用いた自動要約タスクで行った. 既存の 生成型自動要約モデルと比較した結果，提案モ デルは非階層型の既存の BART モデルに比べて ROUGE-L[7] の F 值が 0.23 ポイント上回ることを確認した.

## 2 関連研究

## 2.1 BART

BART モデル [3] は, Transformer モデル [4] の構造 をべースとした，汎用的な事前学習モデルである。事前学習の手法として，Token Masking，Sentence Permutation, Document Rotation, Token Deletion, Text Infilling の 5 つの手法を提案している. この 5 つの 手法のうち, Sentence Permutation と Text Infilling を 組み合わせたものが最高精度となっており, 最終的な評価時に使用されている. Sentence Permutation は，文書内の文の場所をランダムに交換した文書を 元の文書に復元する事前学習法である. Text Infilling は，複数の単語列を一つのマスクトークンに置き換 えたり，文中にマスクトークンを挿入したりした文書を，元の文書に復元する事前学習法である。

## 2.2 Multi-Granularity Self-Attention (MG-SA)

MG-SA [5] は，入力テキストを複数の粒度の要素 （単語とフレーズ）に分け，各粒度の要素を SANs の 各へッドに割り当てることで異なる粒度の情報を捉 える方法である。この手法ではまず，次のように， SANS の入力 $H$ からフレーズレベルの情報を表す行列 $H_{g}$ を生成する.

$
H_{g}=F_{h}(H)
$

ここで， $F_{h}($.$) は h$ 番目のヘッドに対するフレー ズレベルの入力を生成する関数である. 具体的に は, $F_{h}($.$) は，単語レベルのベクトルに対して Max$ Pooling を適用することでフレーズレベルのベクト ルを生成する。

この生成されたフレーズレベル入力を用いて， SANs を次のように実行する。

$
\begin{aligned}
Q^{h}, K^{h}, V^{h} & =H W_{Q}^{h}, H_{g} W_{K}^{h}, H_{g} W_{V}^{h} \\
O^{h} & =\mathbf{A T T}\left(Q^{h}, K^{h}\right) V^{h}
\end{aligned}
$

ここで, $Q^{h} \in \mathbf{R}^{n \times d_{h}}, K^{h} \in \mathbf{R}^{p \times d_{h}}, V^{h} \in \mathbf{R}^{p \times d_{h}}$, $W_{Q}^{h}, W_{K}^{h}, W_{V}^{h} \in \mathbf{R}^{d \times d_{h}}$ であり, $d$ は隠れ層の次元数, $d_{h}$ は各へッドの次元数, $n$ は単語レベルのベク トルの次元数, $p$ はフレーズレベルのベクトルの 次元数である.また, $\mathbf{A T T}(\mathbf{X}, \mathbf{Y})$ は $\mathrm{X}$ と $\mathrm{Y}$ のアテン ション重みを算出する関数である。この演算によ り，SANs における各へッドの出力 $O^{h}$ が生成され る. その後, 全てのヘッドの出力を結合させたもの が，入力 $H$ に対する MG-SA の出力となる.

$
\operatorname{MG-SA}(\mathbf{H})=\left[O^{1}, \ldots, O^{N}\right] \text {, }
$

各ヘッドの出力 $O^{h}$ は，単語間の情報を含んでいる ものや，単語とフレーズ間の情報を含んでいるもの がある. したがって，MG-SAを使うことで，単語間 の関連性に加えて, 単語間とフレーズ間の関連性を 捉えることができる.

図 1 Hie-BART のモデル図

## 3 提案手法

Hie-BART（Hierarchical-BART）モデルでは，エン コーダは，通常の BART モデルが備えている単語同士の関連性を捉える単語レベルの Multi-head Self-Attention Networks （SANs）に加えて，文と単語間の関連性を捉える文レべルのSANs を備えている。 Hie-BART の概要図を図 1 に示す.

エンコーダでは，入力テキストをEmbedding 層に 通した後, SANs での計算時に単語レベルと文レべ ルに分割して計算する。ここで，各文を区別するた めに，入力テキスト中の各文の先頭には $[B O S]$ トー クンを付与している. 文レベルの SANs では, Create Sentence Level Vector 層で単語レベルの入力から文レ ベルの入力を作成した後, アテンションの計算を行 う. 各へッドでアテンションの計算が終了したら，単語及び文レベルの出力を結合したものを，次層の Feed Forward 層への入力とする.

## 3.1 Create Sentence Level Vector 層

Create Sentence Level Vector 層の動作例を図 2 に示 す. 図 2 において, $E_{w_{i j}}$ 及び $E_{[B O S]}$ は単語 $w_{i j}(i$番目の文中の $j$ 番目の単語）及び $[B O S]$ トークンの 埋め込みべクトルである． $E_{S_{i}}$ は. 単語レベルの埋 め込みべクトルから生成された文 $s_{i}$ ( $i$ 番目の文) の文レベルの埋め込みベクトルである.

Create Sentence Level Vector 層では，単語レベルの 埋め込みべクトルから Average Pooling により文レべ ルの埋め込みべクトルを生成する. 具体的には, 単語系列 $W=\left(w_{1}, \ldots, w_{N}\right)$ （各 $w_{i}$ は単語）が入力とし て与えられた場合，まず，単語系列 $W$ を文分割し，文系列 $S=\left(s_{1}, \ldots, s_{M}\right)$ （各 $s_{i}$ は文）を得る.ここで， $N$ は総単語数， $M$ は総文数を示す. そして,$S$ の各要素（各文）に対して，次のように Average Pooling を適用する。

$
g_{m}=\operatorname{AVG}\left(s_{m}\right)
$

ここで，AVG(・)は Average Poolingを実行する関数である。これにより，各文に対する埋め込み ベクトル $G=\left(g_{1}, \ldots, g_{M}\right)$ を生成する. 実際には, $W$ と $S$ の各要素は埋め込みべクトルとなる.例えば，図 2 において， $E_{S_{1}}$ を生成する場合は, $\left[E_{[B O S]}, E_{w_{11}}, E_{w_{12}}, E_{w_{13}}\right]$ に対して Average Pooling を 適用する。

以上のように生成された $G$ を文レベルの SANs の 入力とする.

図 2 Create Sentence Level Vector 層の動作例

図 3 Concatenate 層の動作例 (ヘッド数が 6 の場合)

## 3.2 Concatenate 層

Concatenate 層では，単語レベル SANs と文レベル の SANs の出力を結合させる. Concatenate 層では,次のような単語レベル SANS と文レベルの SANS 層の 出力が入力となる.

$
\begin{aligned}
& \operatorname{MG-SANS}(\mathbf{W})=\left[O_{w}^{1}, \ldots, O_{w}^{H}\right]=O_{w}^{A L L} \\
& \operatorname{MG-SANs}(\mathbf{G})=\left[O_{s}^{1}, \ldots, O_{s}^{H}\right]=O_{s}^{A L L}
\end{aligned}
$

$O_{w}^{A L L}$ は単語レベルの SANs の出力であり, $O_{w}^{i}$ は単語レベルの SANS のヘッド $i$ の出力である。一方で, $O_{s}^{A L L}$ は文レベルの SANs の出力であり, $O_{s}^{i}$ は文レ ベルの SANS のヘッド $i$ の出力である. ここで， $H$ は SANs のヘッド数を示す. Concatenate 層では，この 単語及び文レベルの SANs の出力結果を次のように 結合させる.

$
\begin{aligned}
& \operatorname{CONCAT}\left(O_{w}^{A L L}, O_{s}^{A L L}, h\right) \\
= & {\left[O_{w}^{1}, \ldots, O_{w}^{h}, O_{s}^{h+1}, \ldots, O_{s}^{H}\right] }
\end{aligned}
$

ここで， $h$ は結合点である. $H$ 個の Multi-head の内， 1 から $h$ までのへッドを単語レベルの出力とし, $h+1$ から $H$ までのへッドを文レベルの出力として 結合する。

Hie-BART 内の Concatenate 層の動作例を図 3 に示 す. 図 3 は，Multi-head のヘッド数が 6 で，結合点 $h$ が 4 の場合の動作を示している。単語レベルの SANS の出力である $\left[O_{w}^{1}, \ldots, O_{w}^{6}\right]$ と, 文レベルの SANs の 出力である $\left[O_{s}^{1}, \ldots, O_{s}^{6}\right]$ が結合点 $h=4$ で結合された $\left[O_{w}^{1}, O_{w}^{2}, O_{w}^{3}, O_{w}^{4}, O_{s}^{5}, O_{s}^{6}\right]$ が Concatenate 層の出力と なる。

以上のように生成された Concatenate 層の出力を 次層の Feed Forward 層への入力とする.

## 4 実験

## 4.1 データセット

データセットは，英文ニュース記事の要約コーパ スである CNN/DailyMail データセット ${ }^{1)}$ [6] を使用 した. このデータセットは，学習データが 287,226 対，開発データが 13,368 対，テストデータが 11,490 対で構成されている. また，要約元文書は平均 781 トークン，要約文は平均 56 トークンである。デー タの前処理はトークン化は CNN/DailyMail ダウン ロードページ1)の通りに行い，BPE の使用などは fairseqによる前処理に基づいて行った2).

表 2 単語レベルと文レベルのヘッド数の割合による 性能比較（開発データでの性能）

## 4.2 実験設定

Hie-BART モデルの実装は, fairseq による BART モデルのコードを基に改良することで実装した. また，事前学習済みのモデルは fairseq のモデル “bart.large”2)を使用した. BARTを fine-tuning する際 は，勾配累積のハイパーパラメータ update-freqを 10，最大エポック数 max-epochを 6 , 総学習ステッ プ数を 23,916とした. また，提案手法 Hie-BART の ハイパーパラメータは, Multi-head のへッド数を 16, 単語レベルと文レベルの SANs における出力の 結合ヘッド数の割合を “単語:文 $=14: 2$ ” とした. 結合ヘッド数の割合のハイパーパラメータは開発デー タで調整した。表 2 に示す通り，開発データにおい て最も性能がよかった割合を採用している。このハ イパーパラメータに関しては, 5 章にて考察する. その他のハイパーパラメータは fairseqによる設定2) を用いた。

## 4.3 結果

実験結果を表 1 に示す。ここでは, CNN/DailyMail のテストデータによる結果を示している. 評価指標 として, ROUGE-1, ROUGE-2, ROUGE-L $の \mathrm{~F}$ 値 [7] とそれらの平均値を用いた. ROUGE スコアの算出 には， files2rouge ${ }^{3}$ を利用した。実験では，提案手法 の Hie-BART モデルを，非階層の通常の BART モデ ルに加えて, LEAD-3[8], BertSumExtAbs[1], T5[2] と比較した. ベースラインの BART モデルとして,我々の計算機環境で再現した BART モデルの結果 （BART (ours)）に加えて, Lewis ら [3] で報告されて


いる結果も示している.

表 1 より，提案手法 Hie-BART は ROUGE-1/2/L の F 値において，Lewis らが報告している BART の性能から平均約 0.1 ポイント改善していることが分か る.また，我々が再現した BARTからは，平均約 0.2 ポイント改善していることが分かる. これらの結果 より，提案手法が有効であることを確認できた.

## 5 考察

提案手法は, Concatenate 層で単語レベルと文レべ ルのへッドの出力を特定の割合で結合する。この割合の変化で提案手法の性能がどう変わるかを考察す る. 表 2 に，結合時の単語レベルと文レベルのへッ ドの割合を変えた時の提案手法の開発データにおけ る性能を示す. ヘッド数の割合はハイパーパラメー タとして手動で調節しており, 表 2 の最左列に示さ れている. 最左列が “単語:文 $=x: y$ ” の場合，単語レ ベルのへッド数が $\mathrm{x}$, 文レベルのへッド数が $\mathrm{y}$ を意味する.

表 2 より，“単語:文 $=14: 2$ ” の場合が ROUGE-1/2/L スコアの平均が最大になっていることが分かる. ま た, 単語レベルに比べて文レベルのへッド数の割合が少ない方が，ROUGE スコアが高くなる傾向に あることが分かる. ただし，文レベルのへッド数 が 0 ，つまり通常の非階層の BARTによる精度は， Hie-BART よりも性能が低い。また，単語レベルの ヘッド数を 8 以下に減らしていく方向は, 精度の改善が見られなかったので表 2 には掲載していない。

## 6 おわりに

本研究では，BART におけるエンコーダの SelfAttention 層を単語レベルと文レベルに分割し計算することで，単語と文間の関係性を考慮する Hie-BART を提案した. BARTを階層化すること により, CNN/DailyMail データセットにおいて， ROUGE-L の F 值が 0.23 ポイント改善することを確認した. 今後は, 単語間や単語と文間の情報に加 え，文同士の関係を取り入れる手法に拡張予定であ る.また, Xsum データセットなどの CNN/DailyMail データセット以外のデータセットで提案モデルの有効性を検証予定である.

## 参考文献

[1] Yang Liu and Mirella Lapata. Text summarization with pretrained encoders. In Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and
the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP), pp. 3730-3740, Hong Kong, China, November 2019. Association for Computational Linguistics.

[2] Colin Raffel, Noam Shazeer, Adam Roberts, Katherine Lee, Sharan Narang, Michael Matena, Yanqi Zhou, Wei Li, and Peter J. Liu. Exploring the limits of transfer learning with a unified text-to-text transformer. Journal of Machine Learning Research, Vol. 21, No. 140, pp. 1-67, 2020.

[3] Mike Lewis, Yinhan Liu, Naman Goyal, Marjan Ghazvininejad, Abdelrahman Mohamed, Omer Levy, Veselin Stoyanov, and Luke Zettlemoyer. BART: Denoising sequence-to-sequence pre-training for natural language generation, translation, and comprehension. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pp. 7871-7880. Association for Computational Linguistics, July 2020.

[4] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, Ł ukasz Kaiser, and Illia Polosukhin. Attention is all you need. In I. Guyon, U. V. Luxburg, S. Bengio, H. Wallach, R. Fergus, S. Vishwanathan, and R. Garnett, editors, Advances in Neural Information Processing Systems, Vol. 30, pp. 5998-6008. Curran Associates, Inc., 2017.

[5] Jie Hao, Xing Wang, Shuming Shi, Jinfeng Zhang, and Zhaopeng Tu. Multi-granularity self-attention for neural machine translation. In Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP), pp. 887-897, Hong Kong, China, November 2019. Association for Computational Linguistics.

[6] Karl Moritz Hermann, Tomas Kocisky, Edward Grefenstette, Lasse Espeholt, Will Kay, Mustafa Suleyman, and Phil Blunsom. Teaching machines to read and comprehend. In Advances in neural information processing systems, $\mathrm{pp}$. 1693-1701, 2015.

[7] Chin-Yew Lin. ROUGE: A package for automatic evaluation of summaries. In Text Summarization Branches Out, pp. 74-81, Barcelona, Spain, July 2004. Association for Computational Linguistics.

[8] Ramesh Nallapati, Feifei Zhai, and Bowen Zhou. SummaRuNNer: A recurrent neural network based sequence model for extractive. In Proceedings of In Association for the Advancement of Artificial Intelligence, 2017.
 秋山 和輝 1 二宮 崇 ${ }^{1}$ 1 愛媛大学大学院理工学研究科 電子情報工学専攻, 2 同志社大学 理工学部 情報システムデザイン学科  }^{1}\left.\{}.$ k_akiyama@ai., ninomiya@\}cs.ehime-u.ac.jp, ${ }^{2}$ aktamura@mail.doshisha.ac.jp  