# 日本語の分類タスクにおけるカリキュラム学習と マルチタスク学習の効果検証

植松拓也 河原大輔
早稲田大学理工学術院
takuya1009@akane.waseda.jp dkw@waseda.jp

## 概要

複数の言語処理タスクを順番もしくは同時に学習する方法として，カリキュラム学習やマルチタス ク学習がある。これらは英語のベンチマークにおい て包括的に調査されており有効性が報告されてい るが，日本語では調査されていない。本研究では，日本語言語理解ベンチマーク JGLUE に含まれる分類タスクにおいて，カリキュラム学習およびマルチ タスク学習を適用し, 有効性を検証する。結果とし て，親和性のあるタスク同士でカリキュラム学習， マルチタスク学習を行うことで精度が向上すること を確認した。

## 1 はじめに

機械学習に基づく自然言語処理においてよく用い られる手法の一つに転移学習がある。転移学習の一手法として，事前学習をしてから対象のタスクごと にファインチューニングをするという 2 段階で行う ことが多い。転移学習のモデルとしては BERT [1] など様々なモデルが開発されている．BERT は，言語理解ベンチマーク GLUE [2] において当時の最高 スコアを達成しており，広く利用されている。

事前学習やファインチューニングを行う際に，そ れぞれにおいてどのようなタスクをどのような順番で解くかが重要である.この点に着目した手法 にカリキュラム学習があり一定の成果が出ている $[3,4,5,6,7]$. 人間が学習する際，まず難しいことか ら学ぶのではなく簡単なことから学んだ方が良い. それと同様に，学ぶ順番が大切なことは機械学習に も同じことが言える. 機械学習におけるカリキュラ ム学習は, 学習データを最も効果的な順番に並び替 え段階的に学習する手法で，簡単な学習データから 学習して徐々に難易度を上げていくことが多い。

また，近年はマルチタスク学習も注目されている
[8, 9, 10,11]. マルチタスク学習は一度に 2 つ以上の タスクで学習する手法であり，あるタスクから得ら れた知識を他のタスクにも適用することで精度が向上する場合がある．ただし，タスク同士に親和性が ない場合は精度が低下する可能性があるため，親和性のあるタスク同士でマルチタスク学習を行うこと が重要である [12].

このような研究は英語などで活発に行われてい る一方，これまで日本語では包括的な調査が行われ ていない. 本研究では，日本語におけるタスク同士 の親和性や効果的な学習方法を調査することを目的とし，日本語データセットを用いてカリキュラム 学習およびマルチタスク学習を行う。事前学習モデ ルには日本語 BERTを用い，タスクには日本語言語理解ベンチマーク JGLUE [13] に含まれる自然言語推論 (JNLI), 意味的類似度計算 (JSTS), 評価極性分類 (MARC-ja) の 3 種類の分類タスクを用いる.カリ キュラム学習では，あるタスクでファインチューニ ングした後，さらに対象タスクでファインチューニ ングすることで対象タスクの精度が向上するかを 評価する。マルチタスク学習では，上記 3 種類のタ スクから 2 つを選び同時に学習し，有効性を評価 する。

## 2 関連研究

## 2.1 カリキュラム学習

カリキュラム学習については，まず簡単な事例か ら学習し，徐々に難しい事例を学習する場合が多 い. 例えば，画像分類タスクにおいてカリキュラム 学習の有効性を示した実験結果がある [3].この実験では，自動的に生成された三角形や楕円，長方形 の図形を分類するタスクを解く際に，まず正三角形 や円，正方形などの簡単な図形から学び，徐々に色 の種類を増やしたり難しい図形について学ぶこと

により，カリキュラム無しの学習よりも精度が高く なっている.

カリキュラム学習は自然言語処理でも活用されて いるが，難易度の定義が研究ごとに異なる．難易度 の指標としては語彙サイズや入力された単語列の長 さがある. Bengio らは，言語モデルにおいて次の単語を予測する際に，はじめに小さな語彙サイズのモ デルを学習して徐々に語彙サイズを増やしながら学習した方がカリキュラム無しよりも精度が高くなる ことを報告している [3]. Cirik らは，入力文の評価極性を 5 つのクラスに分類する際に，文長の短い事例から学習して徐々に長い事例を学習するカリキュ ラム学習を提案した [4]. その結果，精度が向上し，特に学習データ数が少ないときに効果があることを 示している.

難易度の定義の方法は他にもある．Guo らは，非自己回帰機械翻訳においてファインチューニングす る際にカリキュラム学習を導入した [5]. 非自己回帰機械翻訳モデルは自己回帰機械翻訳モデルと比較 して，トークンを並列に生成できるため推論の速度 は向上するが，精度は低下する. この問題に対処す るために，まず自己回帰訓練を行い，徐々に非自己回帰訓練に変更していくようなカリキュラム学習 を提案し，有効性を示している．Xu らは，GLUEべ ンチマークでカリキュラム学習する実験を行った [6]. まず，対象のデータセットを分割して交差検証 を行い，精度を難易度とみなす。次に，分割された データセットを難易度順に並び替え，簡単な事例か らファインチューニングする。結果としては GLUE における9つのタスクのうち8つでベースラインよ りも優れていた.

カリキュラム学習において，難易度順に並び替え るのではなく，学習するタスクの順序を入れ替え て他のタスクに与える効果を検証した実験がある。 Yogatama らは，あるタスクを BERT などで学習して 得られた知識を他のタスクを解く際に有効活用でき ないかを検証した [7]. どのようなカリキュラムで 学習をするのが最適で, 破滅的忘却を起こさないか を実験しており，学習の高速化を達成したタスクの 組合せやそのときの精度について述べている.

## 2.2 マルチタスク学習

マルチタスク学習に基づく方法は多数提案されて いる. Collobert らは, 品詞タグ付けやチャンキング など関連性のあるタスクを同時に学習するマルチタ
スク学習を提案し，有効性を示した [8]． Liu らは，映画のレビューについてのテキスト分類タスクを複数用意してマルチタスク学習を行った [9]. その結果，対象タスクの精度が他のタスクの助けを借りて 向上することを示した.

また，マルチタスク学習を BERT などの事前学習 モデルに適用した研究も行われている. 事前学習モ デルのファインチューニングの際にマルチタスク 学習を適用したモデルに MT-DNN がある [10]. こ のモデルは，GLUE ベンチマークにおける9つの夕 スクのうち8つのタスクと，自然言語推論のコーパ スである SNLI [14] や SciTail [15] で BERT の性能を 上回った. Zhou らは, 品詞タグ付け, 構文解析, 意味役割付与などの言語解析タスクを事前学習時に マルチタスクで行う LIMIT-BERT を提案した [11]. LIMIT-BERT は言語解析タスクの精度を向上させ， GLUE ベンチマークや SNLI において BERT ベース ラインよりも優れていることが報告されている.

## 2.3 本研究の位置づけ

上記の研究のように，これまでは英語での実験は 行われているが日本語における包括的な調査は行わ れていない. 本研究では，日本語のデータセットに おけるカリキュラム学習とマルチタスク学習の有効性を調査する。

## 3 対象タスクと学習方法

本節では，本研究において対象とするタスク，お よび，カリキュラム学習とマルチタスク学習の方法 について述べる。

## 3.1 対象タスク

対象のタスクとして，日本語言語理解ベンチマー クJGLUE に含まれる自然言語推論 (JNLI), 意味的類似度計算 (JSTS), 評価極性分類 (MARC-ja) の 3 種類の分類タスクを用いる. JNLI と JSTS は文ぺア分類タスクであり，MARC-ja は文章分類タスクであ る. 各タスクのデータセットの事例数，評価指標を 表 1 に示す. combined score は, Pearson と Spearman 相関係数の平均をとったスコアである．事前学習モ デルを train セットでファインチューイングし，valid セットで評価を行う.
表 1 データセットの事例数と評価指標

## 3.2 学習方法

## 3.2.1 カリキュラム学習

本研究では，3種類のタスクの組合せを変えて，2 段階のファインチューニングを行う. 具体的には， まず JNLI，JSTS，MARC-ja のぞれぞれについてファ インチューニングを行い，その結果得られたモデル を用いて再度ファインチューニングを行う。異な るタスクで再びファインチューニングを行うことの 有効性を調査するため，同じタスクで再びファイン チューニングした場合とも比較する。

事前学習モデルには東北大 BERT-base ${ }^{11}$ を用いる。 ファインチューニングの際，CLS トークンに対して JSTS は回帰問題，JNLI と MARC-ja は分類問題を解 く.いずれもエポック数は 4 で固定し，4 エポック 終了時点の評価値を比較する。 ハイパーパラメータ についてはいくつかの設定から最適な組合せを選 ぶ. ハイパーパラメータの詳細な設定は付録 A に 示す.

## 3.2.2 マルチタスク学習

ファインチューニングする際，JSTS，JNLI， MARC-ja の 3つのタスクの中から 2 つを選びマルチ タスク学習を行う. マルチタスク学習が終わった後 に，JSTS，JNLI，MARC-ja を別々に評価する。

事前学習モデルにはカリキュラム学習と同様に東北大 BERT-base を用い，マルチタスク学習のモデル に分類ヘッドを 2 つ用意する. その概要を図 1 に示 す.ハイパーパラメータについては最適な組合せを 選択する。

## 4 実験結果と議論

## 4.1 カリキュラム学習の実験結果

カリキュラム学習の結果を表 2 に示す。ここで， 1 段階目のタスクはファインチューニングの 1 段階目で使用したタスク，列名のタスクは 2 段階目の

図1 マルチタスク学習のモデル

表 2 カリキュラム学習の実験結果

ファインチューニングで使用したタスクを示す.ま た，評価は全て 2 段階目のファインチューニング後 の精度である。

JNLI における評価JNLI で評価したときの結果 を比較する. JSTS でファインチューニングして から，そのモデルを用いて JNLI で再びファイン チューニングをしたときに精度が最も高いことが確認できる。この結果は 2 段階とも JNLI でファイン チューニングしたときと比較して $1.0 \%$ 高い. 一方， MARC-ja でファインチューニングしてから JNLI で ファインチューニングすると精度が下がっている。

JSTS における評価 JSTS で評価したときの結果 を比較する. JNLI でファインチューニングしたモ デルを用いて JSTS をファインチューニングをす ると, JSTS で 1 回ファインチューニングしたとき より約 $0.3 \%$ 精度が上がっている. ただし，JSTS で ファインチューニングした後, さらにJSTS でファ インチューニングしたときと精度は同じであった。 MARC-ja でファインチューニングしてから JSTS で ファインチューニングすると精度は下がった.

MARC-ja における評価 MARC-ja で評価したと きの結果を比較する．MARC-ja を解く際は，事前 に JNLI，JSTS，MARC-ja でファインチューニング してから MARC-ja でファインチューニングしても， MARC-ja で 1 回ファインチューニングをしたときと 精度はほとんど変化がない。
表 3 カリキュラム学習による各ラベルの予測数

表 4 マルチタスク学習の実験結果

カリキュラム学習についての考察 以上の結果よ り，JNLI と JSTS は親和性が高いと言える. JNLI と JSTS はともに文ぺア分類タスクであり, 構成する文 ペアのほとんどが重複していることが 1 つの要因と 考えられる. 特に，JSTS でファインチューニング してから JNLIを解いたとき精度がかなり向上した。

JNLIをファインチューニングしたときと，1 段階目をJSTS，2 段階目を JNLI でファインチューニン グしたときの各ラベルの予測数について表 3 にまと める. ただし， 1 行目は JNLI の valid データにおけ る正解ラベルの分布を示す. 事前に JSTS でファイ ンチューニングすると，含意の予測数が減少し，矛盾の予測数が増加した. また，ラベルごとの正解数 については, 矛盾の正解数が他のラベルに比べて増 えていた. 特にカリキュラム学習を行うことで予測 ラベルが変化した文ぺアの中で，中立の予測が矛盾 に変化したときの正答率が高くなっていた. 含意,矛盾は中立と比較して類似度が高く, 先に JSTS で 学習することで類似度の弁別性能が上がり中立とそ れ以外のラベルの分類が得意になる可能性がある.

一方, MARC-ja の結果から MARC-ja と JSTS, MARC-ja と JNLI の親和性は高くないと言うことが できる。 MARC-ja は文章分類タスクであり，JNLI やJSTS とは異なるタスクであり，データセットの 構成も異なる.カリキュラム学習を行う際は, 事前 に親和性のないタスクでファインチューニングをす ると逆効果になる可能性を示唆している。

## 4.2 マルチタスク学習の実験結果

マルチタスク学習の結果を表 4 に示す。タスクの 列は，マルチタスク学習を行ったタスクのぺアを示 す. 1 行目はシングルタスク学習の精度を示す.各タスクペアにおける比較 1 行目のシングルタ スク学習の精度と比較すると，JNLI と JSTS のマル チタスク学習を行うとそれぞれ精度が $1.2 \% ， 0.8 \%$上がっている。一方，JNLI と MARC-ja のマルチタ スク学習をしたときは JNLI の精度が約 10\%下がっ ている.また，JSTS と MARC-ja のマルチタスク学習をしたときは，JSTS，MARC-ja それぞれ $0.9 \%$ ， $0.4 \%$ 精度が下がっている。

マルチタスク学習についての考察上記の結果か ら，親和性のあるタスク同士でマルチタスク学習す ると各タスクにおいて精度が上がると考えられる。一方，あまり親和性のないデータセット同士でマル チタスク学習すると両方の精度が落ちる，もしくは 片方のタスクの精度が下がる可能性があり，マルチ タスク学習の効果はほとんどないと考えられる。ま た，マルチタスク学習では，タスク同士の競合が発生する可能性がある [16]. MARC-ja と他のタスクが 競合し，学習データのサイズが大きい MARC-ja は あまり影響を受けず，学習データのサイズが小さい JNLI と JSTS は精度がかなり低下したといえる。

カリキュラム学習との比較上記の結果を比較す ると，JNLI で評価する際は事前に JSTS でファイン チューニングをするカリキュラム学習の方が適して いる。一方，JSTS で評価する際は，JNLI と同時に 学習するマルチタスクの方が適している. カリキュ ラム学習とマルチタスク学習についてはタスクに よって適している学習方法を採用する必要がある.

## 5 おわりに

本研究では，JGLUEベンチマークにおける JNLI, JSTS，MARC-ja の 3 つの分類タスクを組合せてカリ キュラム学習やマルチタスク学習を実行した。その 結果により，タスク同士の親和性やどの順序でファ インチューニングをすると精度が向上するのかを確 かめた. 本研究の結果は，学習する際に用意できる データセットが少ない場合でも，親和性のある他の データセットと組合せてカリキュラム学習やマルチ タスク学習を行うことで精度が改善する可能性があ ることを示している。

今後は，タスク間の親和性について，QA タスク など他のタスクを含めて調査したい。また，BERT 以外にも RoBERTa [17] など高性能な事前学習モデ ルでも実験して効果を確かめたい。また，カリキュ ラム学習とマルチタスク学習を組合せて学習するこ とで精度が向上するかを確認する予定である.

## 謝辞

本研究は JSPS 科研費 JP21H04901 の助成を受けて 実施した.

## 参考文献

[1] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. 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, Minneapolis, Minnesota, June 2019. Association for Computational Linguistics.

[2] Alex Wang, Amanpreet Singh, Julian Michael, Felix Hill, Omer Levy, and Samuel Bowman. GLUE: A multi-task benchmark and analysis platform for natural language understanding. In Proceedings of the 2018 EMNLP Workshop BlackboxNLP: Analyzing and Interpreting Neural Networks for NLP, pp. 353-355, Brussels, Belgium, November 2018. Association for Computational Linguistics.

[3] Yoshua Bengio, Jérôme Louradour, Ronan Collobert, and Jason Weston. Curriculum learning. In Proceedings of the 26th Annual International Conference on Machine Learning, ICML '09, p. 41-48, New York, NY, USA, 2009. Association for Computing Machinery.

[4] Volkan Cirik, Eduard H. Hovy, and Louis-Philippe Morency. Visualizing and understanding curriculum learning for long short-term memory networks. arXiv, 2016. abs/1611.06204.

[5] Junliang Guo, Xu Tan, Linli Xu, Tao Qin, Enhong Chen, and Tie-Yan Liu. Fine-tuning by curriculum learning for non-autoregressive neural machine translation. In Proceedings of the aaai conference on artificial intelligence, Vol. 34, pp. 7839-7846, 2020.

[6] Benfeng Xu, Licheng Zhang, Zhendong Mao, Quan Wang, Hongtao Xie, and Yongdong Zhang. Curriculum learning for natural language understanding. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pp. 6095-6104, Online, July 2020. Association for Computational Linguistics.

[7] Dani Yogatama, Cyprien de Masson d'Autume, Jerome Connor, Tomas Kocisky, Mike Chrzanowski, Lingpeng Kong, Angeliki Lazaridou, Wang Ling, Lei Yu, Chris Dyer, and Phil Blunsom. Learning and evaluating general linguistic intelligence. arXiv, 2019. abs/1901.11373.

[8] Ronan Collobert and Jason Weston. A unified architecture for natural language processing: Deep neural networks with multitask learning. In Proceedings of the 25th international conference on Machine learning, pp. 160-167, 2008.

[9] Pengfei Liu, Xipeng Qiu, and Xuanjing Huang. Recurrent neural network for text classification with multi-task learning. arXiv, 2016. abs/1605.05101.

[10] Xiaodong Liu, Pengcheng He, Weizhu Chen, and Jianfeng
Gao. Multi-task deep neural networks for natural language understanding. In Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics, pp. 4487-4496, Florence, Italy, July 2019. Association for Computational Linguistics.

[11] Junru Zhou, Zhuosheng Zhang, Hai Zhao, and Shuailiang Zhang. LIMIT-BERT : Linguistics informed multi-task BERT. In Findings of the Association for Computational Linguistics: EMNLP 2020, pp. 4450-4461, Online, November 2020. Association for Computational Linguistics.

[12] Michael Crawshaw. Multi-task learning with deep neural networks: A survey. arXiv, 2020. abs/2009.09796.

[13] Kentaro Kurihara, Daisuke Kawahara, and Tomohide Shibata. JGLUE: Japanese general language understanding evaluation. In Proceedings of the Thirteenth Language Resources and Evaluation Conference, pp. 2957-2966, Marseille, France, June 2022. European Language Resources Association.

[14] Samuel R. Bowman, Gabor Angeli, Christopher Potts, and Christopher D. Manning. A large annotated corpus for learning natural language inference. In Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing, pp. 632-642, Lisbon, Portugal, September 2015. Association for Computational Linguistics.

[15] Tushar Khot, Ashish Sabharwal, and Peter Clark. Scitail: A textual entailment dataset from science question answering. In Proceedings of the AAAI Conference on Artificial Intelligence, Vol. 32, 2018.

[16] Ozan Sener and Vladlen Koltun. Multi-task learning as multi-objective optimization. In S. Bengio, H. Wallach, H. Larochelle, K. Grauman, N. Cesa-Bianchi, and R. Garnett, editors, Advances in Neural Information Processing Systems 31, pp. 525-536. Curran Associates, Inc., 2018.

[17] Yinhan Liu, Myle Ott, Naman Goyal, Jingfei Du, Mandar Joshi, Danqi Chen, Omer Levy, Mike Lewis, Luke Zettlemoyer, and Veselin Stoyanov. Roberta: A robustly optimized bert pretraining approach. arXiv, 2019. abs/1907.11692.

## A 参考情報

## A. 1 実験時のハイパーパラメータ

実験を行う際のハイパーパラメータの一覧を表 5 にて示す.この中から最適なハイパーパラメータを 選ぶ.

表 5 ファインチューニングを行う際のハイパーパラ Name Value(s)

learning rate epoch 5e-5, 2e-5, 1e-5

warmup ratio 4

max seq lengt 0.1

batch size $8,16,32$


# 事前学習済み Transformer モデルのための 注意教師付き Few-shot データの蒸留

前川在 小林尚輝 船越孝太郎 奥村学
東京工業大学
\{maekawa, kobayasi, funakoshi, oku\}@lr.pi.titech.ac.jp

## 概要

本稿では，データセットに含まれる知識を蒸留す ることで，ニューラルネットワークを効率的に学習可能な少量の合成サンプルを構築するデータセット 蒸留に取り組む. 我々は，事前学習済み Transformer モデルを効果的にファインチューニング可能な Few-shot データの獲得のために，Transformer の注意機構における注意確率の教師ラベルを導入する．実験では，4つの異なる言語処理タスクのデータセッ トに対して，BERT を高い性能でファインチューニ ングする注意教師付き Few-shot データが構築可能で あることを示した.

## 1 はじめに

深層学習モデルは，大規模なニューラルネット ワークを大量のデータで学習することで, 自然言語処理を含む様々な分野で高い性能を達成している。 しかし, 深層学習モデルの学習には，学習時間，計算資源，消費エネルギーなどを含む膨大なコストが かかる．そこで，この学習コストを削減するため に，学習後のモデルの性能を維持したまま，学習用 データセットを縮小する試みが行われている.

それらの従来研究の多くは，データ選択に基づく 手法を用いている。データ選択では，クラスタ中心 [1], 多様性 [2]，モデルの尤度 [3] などのヒュー リスティックスに基づいて，学習効果の高いサンプ ルの部分集合を抽出する。データ選択は，効率的か つ安定した高い学習性能を実現しており，能動学習 [1] や継続学習 [2] などにも応用されている. し かし, データ選択による手法は, 元のデータセット に学習効果の高い代表的なサンプルが存在するとい う仮定に基づいているため，その性能は明らかに制限される。

近年，学習用データセットを縮小するための新し
いアプローチとして，データセット蒸留 [4] が提案 されている。データセット蒸留は，モデルを効率的 に学習するように最適化された合成サンプルからな る蒸留データの獲得を目的とする。データセット蒸留は，学習サンプルを直接最適化することで，デー タ選択よりもはるかに少量のデータに圧縮する。 データセット蒸留は，特に画像分野を中心に近年関心が高まっており $[4,5,6,7,8,9]$, それらは理論的な 興味からだけでなく，ニューラルアーキテクチャハハ イパーパラメータ探索 [10], 継続学習 [11,12], 連合学習 $[13,14]$, データのプライバシー保護 $[15,16]$ な ど，応用の観点でも注目されている。

一方で，データセット蒸留に関する既存研究のほ とんどが画像データセットを対象としており，言語処理タスクを扱った研究はごくわずかである. Sucholutsky ら [6] と Li ら [17] は，テキストの代わり に単語埋め込みのレベルで蒸留データを構築するこ とで，データセット蒸留を離散データであるテキス トデータセットに適用した。しかし，これらの研究 は， CNN $\mathrm{RNN}$ ベースのニューラルネットワーク を対象としており，近年の言語処理タスクにおいて 標準となっている事前学習済み Transformer モデル を対象とした研究は，我々が知る限りまだない。そ こで本稿では，言語処理タスクに対して，事前学習済み Transformer モデルを効果的にファインチュー ニング可能な Few-shot データの獲得に取り組む.

この目的のために，我々は Transformer の核であ る注意機構に着目する [18]. 従来研究 [19, 20, 21] で は，注意確率の教師を利用することで，モデルを効果的に学習する手法が提案されている。本稿では, これらの手法に着想を得て, 蒸留データの各サンプ ルに対して注意教師ラベルを付与することで，蒸留 データによる Transformer の学習効果の向上を図る.

実験では，AGNews，SST-2，QNLI，MRPCの $4 \supset$ のテキスト分類タスクに対して，BERT [22]をファ

インチューニングするための注意教師付き Few-shot データセットを構築した. その結果, 注意教師ラべ ルの利用による大幅な性能改善が見られ，BERTを 高い性能でファインチューニング可能であることを 示した. 具体例として，4クラスのニュース記事分類タスクである AGNews において，我々が構築した 各クラス 1 サンプルのみで構成される蒸留データ は，BERTを 1 回の勾配更新のみでファインチュー ニングし, 元の学習データセット全体で学習した場合の $98.5 \%$ の性能である最大 $93.2 \%$ の分類精度を達成した.

## 2 提案手法

## 2.1 データセット蒸留

データセット蒸留のアルゴリズムとして，Wang ら [4] が提案した最適化手法を適用する. この手法 は，メタ学習 [23] で用いられている手法と同様に， 2 次勾配を計算することで蒸留データを勾配法によ り直接最適化する。

元の学習データセットを $D=\left.\{\left(x_{i}, y_{i}\right)\right.\}_{i=1}^{N}$ とする. ただし $\left(x_{i}, y_{i}\right)$ は入力と出力ラベルのぺアである. このとき，データセット蒸留の目標は，はじめにラ ンダムに初期化される蒸留データ $\tilde{D}=\left.\{\left(\tilde{x}_{i}, \tilde{y}_{i}\right)\right.\}_{i=1}^{M}$ $(M \ll N)$ を最適化することである.

モデルパラメータ $\theta$ は，蒸留データのミニバッチ $\left(\tilde{x}_{t}, \tilde{y}_{t}\right)$ を用いて以下の式で更新される.

$
\begin{aligned}
& \theta_{t+1}=\theta_{t}-\tilde{\eta} \nabla_{\theta_{t}} L_{\mathrm{task}} \\
& \text { s.t. } \quad L_{\text {task }}=l\left(\tilde{\boldsymbol{x}}_{t}, \tilde{\boldsymbol{y}}_{t}, \theta_{t}\right)
\end{aligned}
$

ただし, $l()$ は二階微分可能な損失関数であり， $\tilde{\eta}$ は $\tilde{D}$ ともに最適化されるモデルの学習率である。 $\theta$ の初期値を $\theta_{0}$ とすると, 蒸留データによる学習後 のモデルは以下のように書ける.

$
\theta_{T}=F\left(\theta_{0} ; \tilde{D}, \tilde{\eta}, T\right)
$

ただし， $F($ ) は $T$ ステップの勾配更新 (式 1 ) からな るモデルの学習過程を表す。

データセット蒸留の目的は，蒸留データで学習し たこの $\theta_{T}$ が真のデータに対して高い性能を発揮す ることであると考えられるので, 蒸留データ $\tilde{D}$ の最適化における目的関数 $L_{\mathrm{distill}}$ は以下のように計算で きる.

$
\begin{aligned}
L_{\mathrm{distill}}\left(\tilde{D}, \tilde{\eta} ; \theta_{0}\right) & :=l\left(\boldsymbol{x}_{s}, \boldsymbol{y}_{s}, \theta_{T}\right) \\
& =l\left(\boldsymbol{x}_{s}, \boldsymbol{y}_{s}, F\left(\theta_{0} ; \tilde{D}, \tilde{\eta}, T\right)\right)
\end{aligned}
$

ただし,$\left(\boldsymbol{x}_{s}, \boldsymbol{y}_{s}\right)$ は元の学習データセットのミニバッ チである.

したがって，データセット蒸留における最適化は 以下のように定式化できる.

$
\tilde{D}^{*}, \tilde{\eta}^{*}=\underset{\tilde{D}, \tilde{\eta}}{\arg \min } \mathbb{E}_{\theta_{0} \sim p\left(\theta_{0}\right)}\left[L_{\text {distill }}\left(\tilde{D}, \tilde{\eta} ; \theta_{0}\right)\right]
$

ただし， $p\left(\theta_{0}\right)$ はモデルパラメータ $\theta$ の初期値の分布である.

この目的関数 $L_{\text {distill }}$ に対して，勾配降下法を用い て蒸留データ $\tilde{D}$ を最適化する。しかし，テキスト データは離散的であるため，勾配降下法による最適化アルゴリズムを直接適用することは困難である. そこで本研究では，従来研究 $[6,17]$ に着想を得て， テキストの代わりに，単語埋め込みべクトルの系列 を蒸留データの入力として利用する。単語埋め込み ベクトルを利用することで， $L_{\text {distill }}$ は蒸留データに 関して微分可能となり，勾配降下法を用いた最適化 が適用できる。

## 2.2 ソフトラベル

一般的に真のデータセットの出力ラベルには，単一クラスを示す one-hot ベクトルで表される，離散的なハードラベルが用いられる。 しかし，蒸留デー タでは，出力ラベルをソフトなラベルとして，入力 とともに最適化することが可能である.ソフトラべ ルを利用することで，ハードラベルを用いる場合よ りも，蒸留データの各サンプルに多くの情報を持た せることが可能となる。本研究では，従来研究 $[6,7]$ に従い，ソフトラベルを one-hot ベクトルの値で初期化し，任意の実数値を取れるようにすることで，入力の単語埋め込みベクトルとともに勾配法を用い て最適化する。

## 2.3 注意教師ラベル

蒸留データによる Transformer の効果的な学習 のために，本研究では，注意教師ラベルを導入す る. 注意教師ラベルは，データセットの知識を入力系列の各単語に対する注意確率として蒸留し, Transformer の自己注意機構を直接誘導することで効率的なモデルの学習を実現する。

従来研究 [21] に着想を得て, 蒸留データの各サ ンプルに対して，Transformer の各層の注意機構の各 ヘッドに対応する注意教師ラベルを付与し，モデル の注意確率との間の Kullback-Leibler (KL) ダイバー ジェンス $\left(D_{\mathrm{KL}}\right)$ を計算する。これより，注意確率に
表 1 データセットの概要. $C$ はクラス数を示す.

関する損失 $L_{\text {attn }}$ は次のように計算される.

$
L_{\mathrm{attn}}=\frac{1}{K} \sum_{k=1}^{K} \frac{1}{H} \sum_{h=1}^{H} D_{\mathrm{KL}}\left(\tilde{A}_{k, h} \| A_{k, h}(\theta)\right)
$

ただし， $\tilde{A}_{k, h}$ と $A_{k, h}(\theta)$ は $k$ 層目の注意機構の $h$ 番目のヘッドに対応する，注意教師ラベルとモデルの 注意確率をそれぞれ表す。本研究では，蒸留データ のデータサイズの観点から，注意教師ラベルを文頭 の [CLS]トークンにのみ適用した.

モデルは，タスクの損失 $L_{\mathrm{task}}$ と注意確率に関す る損失 $L_{\mathrm{attn}}$ を同時に最小化するように学習される。 これより，モデルパラメータ $\theta$ の勾配更新は, 式 1 から次のようになる。

$
\theta_{t+1}=\theta_{t}-\tilde{\eta} \nabla_{\theta_{t}}\left(L_{\text {task }}+\lambda L_{\text {attn }}\right)
$

パーパラメータである.

注意教師ラベル $\tilde{A}$ は，任意の実数値を取るべク トルとして，単語埋め込みベクトルとソフトラベル とともに最適化され，Softmax 関数を適用すること で確率分布に変換して KL ダイバージェンスを計算 する.

## 3 実験

## 3.1 実験設定

データセット データセット蒸留の性能を評価するために，ニュース記事分類タスクである AGNews [24] と, GLUE [25] から 3 つの多様な分類 タスク (SST-2，QNLI，MRPC)を用いた。各データ セットにおける評価指標については, AGNews は accuracy，その他のデータセットは GLUE の設定に 従った. GLUEのデータセットについては, test セッ トが利用できないため development セットで評価を 行った. 各データセットの概要は表 1 に示す.

モデル 各データセットに対して， BERT BASE $^{\text {[22] }}$ をファインチューニングするための蒸留データセッ トを構築した. [22] の設定に従い，文頭の [CLS] の 埋め込みに対して，埋め込み次元からクラス数次元表 2 1-shot / 1-step の設定における実験結果. 'HL', 'SL', 'AL'はそれぞれハードラベル，ソフトラベル，注意教師 ラベルを示す. 'Majority' は最頻クラスを予測するベース ラインである.*のついたデータセット全体で学習したモ デルの性能は， [22] から引用した.

に線形変換するための分類層と Softmax 関数を適用することで，各クラスの確率を計算する．Wang ら [4] に従い，蒸留データセットの学習時と評価時 の両方においてモデルの Dropout は無効化した. こ れはモデルの学習における不確実性を避けることで 学習の安定化を図るためである.

ハイパーパラメータ 全ての蒸留データセット を，学習率 $\alpha \in\left.\{1 e^{-3}, 1 e^{-2}, 1 e^{-1}\right.\}$ の Adam [26] を用 いて 30 epoch ずつ学習した. 蒸留データとともに最適化されるモデルの学習率 $\tilde{\eta}$ は $\left.\{1 e^{-2}, 1 e^{-1}\right.\}$ のいず れかの值で初期化した。 $\alpha$ と $\tilde{\eta}$ の組み合わせのうち 最も良い性能の結果を報告する。ただし，探索する $\alpha$ と $\tilde{\eta}$ の值の粒度は粗く, 評価データに対する過適合の心配はない，式 7 における $\lambda$ につては，事前実験により 1.0 に設定した.

評価方法 蒸留した Few-shot データセットを用い て，BERTを 100 回ファインチューニングし，その 性能の平均と標準偏差を報告する．ただし，追加し た最後の分類層の重みパラメータは毎回異なる值で 初期化した。

## 3.2 実験結果

## 3.2.1 1-shot / 1-step の実験結果

まず，各クラス 1 サンプルのみかつ 1 回の勾配更新のみで BERT をファインチューニングする設定に おいて，ハードラベルとソフトラベル，及び注意教師ラベルの有無について蒸留データセットの性能 を比較した結果を表 2 に示す。ハードラベルのみ， すなわち単語埋め込みべクトルのみを最適化した 蒸留データセットでも，AGNews，SST-2，QNLIに おいて，元のデータセット全体で学習した場合のそ れぞれ $92.4 \% ， 88.0 \% ， 74.7 \%$ の性能を達成した。ま

た，これらの性能はソフトラベルを利用することで さらに改善され，特に QNLI では 8 ポイント近い性能向上を示した。一方，MRPC については，ソフト ラベルの適用に関わらず，蒸留データセットは最頻 クラスを予測した場合と同等の性能しか得られな かった.

注意教師ラベルを適用した場合，蒸留データセッ トの性能は 4 つの全てのタスクにおいて大幅に 向上し, その効果はソフトラベルょりもはるかに 大きいことが確認された. 注意教師ラベルを適用 した我々の蒸留データセットは, AGNews, SST-2, QNLI，MRPC のそれぞれに対して，元の学習データ セット全体で学習した場合の最大 98.5, 97.2, 94.1, 88.9\%の性能を達成した. これより, 注意教師ラべ ルを用いて元のデータセットの知識を注意確率とし て抽出することで，それらを Transformer モデルに効率的に伝達させることが可能であると考えられる。

また，今回使用した 4 つのデータセット間で性能を比較すると, データセット蒸留は, AGNews や SST-2 のような比較的単純な分類タスクでは非常に 良好な性能を発揮する一方で，QNLI や MRPC のよ うな 2 文間の関係の理解を必要とするようなタスク では，性能がある程度制限された。特に MRPC で は，注意教師ラベルを適用することである程度性能改善が見られるものの, その他の 3 つのタスクと比較して, 元のデータセット全体で学習した場合との 性能差が見られた. この原因として, MRPC データ セットにおけるクラス間のサンプル数の不均衡が蒸留データセットの最適化を困難にしている可能性が 考えられる. 従って，アップサンプリングやダウン サンプリングなどにより, 元のデータの不均衡に対処することで，性能改善の余地があると考える。

## 3.2.2 Multiple-step の実験結果

次に，複数回の勾配更新を用いて BERTをファイ ンチューニングする設定において，蒸留データセッ トの性能を比較した. 我々は, 全ての勾配更新で同 じ蒸留データを使用する場合と，各勾配更新ごとに 異なる蒸留データを使用する場合のそれぞれの設定 について実験を行った. ただし，いずれの設定にお いても，各勾配更新には各クラス 1 サンプルずつの 蒸留データを用いる. 本実験では，全ての蒸留デー タセットにおいてソフトラベルと注意教師ラベルを 適用した。

実験結果を表 3 に示す。まず全ての勾配更新で同表 3 Multiple-step の実験結果. “\# shot” は蒸留データに含 まれる各クラスのサンプル数, “\# step” は勾配更新回数を 示す.ただし，すべての設定において，各勾配更新には 各クラス 1 サンプルずつの蒸留データが使用される.

じ蒸留データを用いた場合，勾配更新 1 回のみで ファインチューニングする場合よりも性能が劣化し た. 一方で，各勾配更新ごとに異なる蒸留データを 用いることでその性能は改善され，勾配更新 1 回の みの設定における性能も上回った. これは, 複数回 の勾配更新において，各勾配更新ごとに蒸留データ に求められる役割が異なっており，全ての勾配更新 に対して有効であるような汎用的なデータを獲得す ることが困難であることを示唆している.

本研究で利用したデータセット蒸留のための最適化手法では，全ての勾配更新を通した誤差逆伝播に よって 2 次勾配を計算する必要があるため, 勾配更新回数 $T$ に応じて必要となるメモリや計算コストが 線形に増加する. そのため, 我々の実験では勾配更新回数を 5 以上に増加させることが困難であった. これはデータセット蒸留における明らかな課題で あり，より複雑で困難なタスクのデータセットや， ファインチューニングではなくゼロからのモデルの 学習に対してデータセット蒸留を適用するためには 解決する必要がある.

## 4 おわりに

本稿では，事前学習済み Transformer モデルを効果的に学習するための, 言語処理タスクのデータ セットの蒸留に取り組んだ。我々は, Transformer の 注意機構における注意確率の教師ラベルを蒸留デー タに適用することで, Transformer モデルに対する蒸留データセットの性能向上を図った. 複数の言語処理タスクのデータセットを対象とした実験の結果,我々の蒸留データセットは各クラス 1 サンプルのみ でも良好な性能を達成した. さらに我々が提案した 注意教師ラベルを利用することで，その性能は全て のタスクにおいて大幅な性能改善を示した.

## 参考文献

[1] Ozan Sener and Silvio Savarese. Active learning for convolutional neural networks: A core-set approach. In 6th International Conference on Learning Representations, ICLR 2018, Vancouver, BC, Canada, April 30 - May 3, 2018, Conference Track Proceedings. OpenReview.net, 2018.

[2] Rahaf Aljundi, Min Lin, Baptiste Goujaud, and Yoshua Bengio. Gradient based sample selection for online continual learning. In H. Wallach, H. Larochelle, A. Beygelzimer, F. d'Alché-Buc, E. Fox, and R. Garnett, editors, Advances in Neural Information Processing Systems, Vol. 32. Curran Associates, Inc., 2019.

[3] Robert C. Moore and William Lewis. Intelligent selection of language model training data. In Proceedings of the ACL 2010 Conference Short Papers, pp. 220-224, Uppsala, Sweden, July 2010. Association for Computational Linguistics.

[4] Tongzhou Wang, Jun-Yan Zhu, Antonio Torralba, and Alexei A. Efros. Dataset distillation. CoRR, Vol. abs/1811.10959, , 2018.

[5] Bo Zhao, Konda Reddy Mopuri, and Hakan Bilen. Dataset condensation with gradient matching. In 9th International Conference on Learning Representations, ICLR 2021, Virtual Event, Austria, May 3-7, 2021. OpenReview.net, 2021.

[6] Ilia Sucholutsky and Matthias Schonlau. Soft-label dataset distillation and text dataset distillation. In 2021 International Joint Conference on Neural Networks (IJCNN), pp. 1-8, 2021.

[7] Ondrej Bohdal, Yongxin Yang, and Timothy M. Hospedales. Flexible dataset distillation: Learn labels instead of images. CoRR, Vol. abs/2006.08572, , 2020.

[8] Kai Wang, Bo Zhao, Xiangyu Peng, Zheng Zhu, Shuo Yang, Shuo Wang, Guan Huang, Hakan Bilen, Xinchao Wang, and Yang You. Cafe: Learning to condense dataset by aligning features. In 2022 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), pp. 12186-12195, 2022.

[9] George Cazenavette, Tongzhou Wang, Antonio Torralba, Alexei A. Efros, and Jun-Yan Zhu. Dataset distillation by matching training trajectories. In IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops, CVPR Workshops 2022, New Orleans, LA, USA, June 19-20, 2022, pp. 4749-4758. IEEE, 2022.

[10] Felipe Petroski Such, Aditya Rawal, Joel Lehman, Kenneth Stanley, and Jeffrey Clune. Generative teaching networks: Accelerating neural architecture search by learning to generate synthetic training data. In Hal Daumé III and Aarti Singh, editors, Proceedings of the 37th International Conference on Machine Learning, Vol. 119 of Proceedings of Machine Learning Research, pp. 9206-9216. PMLR, 13-18 Jul 2020.

[11] Wojciech Masarczyk and Ivona Tautkute. Reducing catastrophic forgetting with learning on synthetic data. In 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition, CVPR Workshops 2020, Seattle, WA, USA, June 14-19, 2020 , pp. 1019-1024. Computer Vision Foundation / IEEE, 2020.

[12] Andrea Rosasco, Antonio Carta, Andrea Cossu, Vincenzo Lomonaco, and Davide Bacciu. Distilled replay: Overcoming forgetting through synthetic samples. In Fabio Cuzzolin, Kevin Cannons, and Vincenzo Lomonaco, editors, Continual SemiSupervised Learning, pp. 104-117, Cham, 2022. Springer International Publishing.

[13] Jack Goetz and Ambuj Tewari. Federated learning via synthetic data. CoRR, Vol. abs/2008.04489, , 2020.

[14] Yanlin Zhou, George Pu, Xiyao Ma, Xiaolin Li, and Dapeng Wu. Distilled one-shot federated learning. CoRR, Vol. abs/2009.07999, , 2020.

[15] Guang Li, Ren Togo, Takahiro Ogawa, and Miki Haseyama. Softlabel anonymous gastric x-ray image distillation. In 2020 IEEE International Conference on Image Processing (ICIP), pp. 305309, 2020.
[16] Tian Dong, Bo Zhao, and Lingjuan Lyu. Privacy for free: How does dataset condensation help privacy? In Kamalika Chaudhuri, Stefanie Jegelka, Le Song, Csaba Szepesvari, Gang Niu, and Sivan Sabato, editors, Proceedings of the 39th International Conference on Machine Learning, Vol. 162 of Proceedings of Machine Learning Research, pp. 5378-5396. PMLR, 17-23 Jul 2022.

[17] Yongqi Li and Wenjie Li. Data distillation for text classification. CoRR, Vol. abs/2104.08448, , 2021.

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

[19] Lemao Liu, Masao Utiyama, Andrew Finch, and Eiichiro Sumita. Neural machine translation with supervised attention. In Proceedings of COLING 2016, the 26th International Conference on Computational Linguistics: Technical Papers, pp. 3093-3102, Osaka, Japan, December 2016. The COLING 2016 Organizing Committee.

[20] Haitao Mi, Zhiguo Wang, and Abe Ittycheriah. Supervised attentions for neural machine translation. In Proceedings of the 2016 Conference on Empirical Methods in Natural Language Processing, pp. 2283-2288, Austin, Texas, November 2016. Association for Computational Linguistics.

[21] Gustavo Aguilar, Yuan Ling, Yu Zhang, Benjamin Yao, Xing Fan, and Chenlei Guo. Knowledge distillation from internal representations. Proceedings of the AAAI Conference on Artificial Intelligence, Vol. 34, No. 05, pp. 7350-7357, Apr. 2020.

[22] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. 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, Minneapolis, Minnesota, June 2019. Association for Computational Linguistics.

[23] Chelsea Finn, Pieter Abbeel, and Sergey Levine. Model-agnostic meta-learning for fast adaptation of deep networks. In Doina Precup and Yee Whye Teh, editors, Proceedings of the 34th International Conference on Machine Learning, Vol. 70 of Proceedings of Machine Learning Research, pp. 1126-1135. PMLR, 06-11 Aug 2017.

[24] Xiang Zhang, Junbo Jake Zhao, and Yann LeCun. Characterlevel convolutional networks for text classification. In Corinna Cortes, Neil D. Lawrence, Daniel D. Lee, Masashi Sugiyama, and Roman Garnett, editors, Advances in Neural Information Processing Systems 28: Annual Conference on Neural Information Processing Systems 2015, December 7-12, 2015, Montreal, Quebec, Canada, pp. 649-657, 2015.

[25] Alex Wang, Amanpreet Singh, Julian Michael, Felix Hill, Omer Levy, and Samuel Bowman. GLUE: A multi-task benchmark and analysis platform for natural language understanding. In Proceedings of the 2018 EMNLP Workshop BlackboxNLP: Analyzing and Interpreting Neural Networks for NLP, pp. 353-355, Brussels, Belgium, November 2018. Association for Computational Linguistics.

[26] Diederik P. Kingma and Jimmy Ba. Adam: A method for stochastic optimization. In Yoshua Bengio and Yann LeCun, editors, 3rd International Conference on Learning Representations, ICLR 2015, San Diego, CA, USA, May 7-9, 2015, Conference Track Proceedings, 2015 .


# 敵対的学習を用いた知識蒸留への中間層蒸留と対照学習の導入

鈴木 偉士 山田寛章 徳永 健伸
東京工業大学 情報理工学院
\{suzuki.t.dp@m, yamada@c, take@c\}.titech.ac.jp

## 概要

知識蒸留 (KD) とは，大規模なニューラルネット ワークを圧縮する手法の一つである。言語モデル向 け KD の中で最高性能の手法は，敵対的学習に中間層出力と対照学習を導入した CILDA と呼ばれる手法である. CILDA の学習は最大化ステップと最小化ステップに分かれているが，中間層出力と対照学習は最大化ステップでのみ活用されている. 本研究 では，最小化ステップに中間層蒸留と対照学習を 導入し，性能を向上させることを目指した.しか し, 既存手法に対して有意な差は確認できなかった ため，原因分析のために CILDA 単体の再現実験を 行ったところ, 先行研究の主張とは異なり, GLUE における複数のタスクで CILDA がそれ以前の手法 の性能を上回らないという結果を得た。

## 1 はじめに

BERT[1] やRoBERTa[2] のような事前学習済み言語モデルは, 様々な言語処理タスクにおいて, 高 い性能を発揮しているが，近年では，GPT-3[3] や， PaLM[4] に見られるように， パラメータ数が大幅に 増加し，通常のデバイスでは扱えなくなっている。

知識蒸留 (KD)[5] は，ニューラルネットワークを 圧縮する手法の一つである。 パラメータ数の大きい 教師モデルの出力と, パラメータ数の小さい生徒モ デルの出力の KL ダイバージェンスを小さくする学習をすることで，生徒モデルが教師モデルと同様の 出力が出来るようにする. 先行研究により, 知識蒸留は, 教師モデルと生徒モデルの最終的な出力間だ けでなく, 中間層の出力間の誤差の利用 $[6,7,8]$, データ抳張と敵対的学習の導入 [9], 対照学習の導入 [10] により，性能が向上することが報告されて いる. Haidar ら [11] は知識蒸留に中間層の利用, 敵対的学習, 対照学習を導入した CILDA と呼ばれる 手法を提案し，GLUE タスクにおいて SOTAを達成 した.
しかし, Haidar らの研究 [11]では, データ拡張と 敵対的学習に用いられる Generator の学習にのみ中間層の利用と対照学習の導入を行っており, 生徒モ デルの学習については通常の KD から改良されてい ない. 本研究では CILDA の生徒モデルの学習時に 中間層の利用と対照学習を導入し，さらに性能を向上させることを目指す.

本研究のソースコードは $\mathrm{GitHub}^{11}$ にて公開して いる.

## 2 関連研究

## 2.1 知識蒸留 (Vanilla KD)

知識蒸留 [5] とは，モデル圧縮の手法の 1 つであ る.この手法では， パラメータ数が小さい生徒モ デルがタスクの正解ラベルとの誤差のほかに， パラ メータ数が大きく性能の高い教師モデルの出力との 誤差を用いて学習する。損失関数は以下のとおりで ある。

$
\begin{array}{r}
L=\lambda L_{C E}+(1-\lambda) L_{K D} \\
L_{K D}=K L(\text { Teacher }(X), \operatorname{Student}(X))
\end{array}
$

ただし， $L_{C E}$ は交差エントロピー誤差， $K L($,$) は$ KL ダイバージェンス, Teacher $(X)$, Student $(X)$ は それぞれ，教師モデル，生徒モデルにデータ $X$ を 入力した際の出力する確率分布とする。学習対象は 生徒モデルのみであり，教師モデルのパラメータは 固定される.

## 2.2 RAIL-KD

RAIL-KD[8] は通常の知識蒸留に加えて中間層 の出力の情報も用いる中間層蒸留の一種である. RAIL-KD では，各エポックごとに教師モデルから 生徒モデルの中間層の数だけ前から順にランダムに 中間層を選び，生徒モデルの中間層との誤差を計算

する．誤差の計算の方法には以下の 2 通りがある.

$
\begin{gathered}
L_{R A I L-K D^{l}}=\sum_{x \in X} \sum_{k=0}^{m}\left.\|\frac{\hat{h}_{a_{\kappa}, x}^{T}}{\left.\|\hat{h}_{x}^{T}\right.\|_{2}}-\frac{\hat{h}_{\kappa, x}^{S_{\theta}}}{\left.\|\hat{h}_{x}^{S_{\theta}}\right.\|_{2}}\right.\|_{2}^{2} \\
L_{R A I L-K D^{c}}=\sum_{x \in X}\left.\|\frac{\hat{h}_{x}^{T}}{\left.\|\hat{h}_{x}^{T}\right.\|_{2}}-\frac{\hat{h}_{x}^{S_{\theta}}}{\left.\|\hat{h}_{x}^{S_{\theta}}\right.\|_{2}}\right.\|_{2}^{2}
\end{gathered}
$

$\hat{h}_{*}^{*}, X, \kappa, a$ はそれぞれモデルの中間層の出力, 訓練 データ, 生徒モデルの中間層の数, 選択した中間層 のインデックスの配列である． $T$ は教師モデル， $S_{\theta}$ は生徒モデルを表す.

$L_{R A I L-K D^{l}}$ では, 1 層ずつの中間層同士の誤差の 和をとり， $L_{R A I L-K D^{c}}$ では，選択した層を連結して から誤差をとる．教師モデルと生徒モデルの中間層 の出力の次元数が異なる場合は損失関数の計算前に $h$ に対して線形変換を行い，次元数を揃える.

最終的な損失関数は以下のようになる.

$
L=\lambda_{1} L_{C E}+\lambda_{2} L_{K D}+\lambda_{3} L_{R A I L-K D}
$

## 2.3 MATE-KD

MATE-KD[9] は知識蒸留に敵対的学習を導入した 手法である. この手法では学習は最大化ステップと 最小化ステップの 2 つのステップに分かれている.

最大化ステップでは，まず訓練データに一定の確率でマスクをかける。 その後 Generator と呼ばれる 事前学習済みマスク型言語モデルを用いてマスクさ れた部分を埋めることでデータ拡張を行う. 拡張さ れたデータを用いて以下の損失関数を最大化するよ うに Generatorを学習する。

$
L_{A D V}=K L\left(\text { Teacher }\left(X^{\prime}\right), \text { Student }\left(X^{\prime}\right)\right)
$

ただし， $X^{\prime}$ は拡張されたデータである. 最大化ス テップでは生徒モデルのパラメータは固定される.

最小化ステップでは以下の損失関数を最小化する ように生徒モデルを学習する. 最小化ステップの間 は Generator のパラメータは固定される.

$
L=\lambda_{1} L_{C E}+\lambda_{2} L_{K D}+\lambda_{3} L_{A D V}
$

学習時は最大化ステップを $n_{G}$ ステップ行ってから 最小化ステップを $n_{S}$ ステップ行うことを繰り返す。

## 2.4 CILDA

CILDA[11] は知識蒸留に中間層出力の利用，敵対的学習, 対照学習を導入した手法である. MATE-KD と同様に最大化ステップと最小化ステップに分かれ ている.最大化ステップでは以下の損失関数を最大化 する。

$
\begin{array}{r}
L_{G}=\alpha_{1} L_{A D V}+\alpha_{2} L_{C R D} \\
L_{C R D}=-\log \frac{\exp \left(<\bar{h}_{k}^{T}, \bar{h}_{k}^{S_{\theta}}>/ \tau_{2}\right)}{\sum_{j=0}^{K} \exp \left(<\bar{h}_{j}^{T}, \bar{h}_{k}^{S_{\theta}}>/ \tau_{2}\right)}
\end{array}
$

ただし， $\bar{h}_{*}^{*}$ はデルの全ての中間層の出力を連結し 線形変換を施したもの， $k$ はミニバッチの中のデー タのインデックス，K はバッチサイズ，<，>はコ サイン類似度とする。

最小化ステップでは以下の損失関数に拡張された データと元データを入力して最小化する.

$
L=\lambda_{1} L_{C E}+\lambda_{2} L_{K D}
$

## 3 提案手法

提案手法を本論文では CILDA+minILD と呼ぶ. CILDA+minILDでは， CILDA の最小化ステップに中間層出力の利用と対照学習を導入する。そのために 損失関数に $L_{C R D}$ を追加する．損失関数は以下のよ うになる。

$
L=\lambda_{1} L_{C E}+\lambda_{2} L_{K D}+\lambda_{3} \frac{1}{\log K} L_{C R D}
$

$K$ はバッチサイズである. $L_{C R D}$ の値はバッチサイ ズの対数に依存し，バッチサイズが大きいほど值が 大きくなる.そのため $L_{C R D}$ の係数に $\frac{1}{\log K}$ をかけ る. 最大化ステップにおいても同様に $L_{C R D}$ の係数 に $\frac{1}{\log K}$ をいる。

## 4 実験

## 4.1 実験設定

## 4.1.1 データセット

蒸留対象のタスクは GLUE[12] の中から，学習に 要する時間の短い CoLA，MRPC，RTE，STS-B の 4 タスクを利用する。評価指標は先行研究 [11] に倣 い，それぞれマシューズ相関係数，f1 スコア，正解率，ピアソンの相関係数とする.

## 4.1.2 モデル

教師モデルには, RoBERTa-large[2] を元に, 各タ スク毎に教師モデルをファインチューニングし, dev set において各評価指標で最高性能を示したモ デルを用いた. ファインチューニングは，バッチ サイズ $128 ， 3$ エポックとして，異なる 4 つの学
習率 1e-05，2e-05，5e-05，1e-04 について各 5 回行った. 生徒モデルには DistilRoBERTa[13]を使用 した. MATE-KD, CILDA, CILDA+minILDで用いる Generator には RoBERTa-large[2]を用いた.

## 4.1.3 比較手法

提案手法と比較する手法は生徒モデルのみを用 いた学習 (w/o KD), 通常の知識蒸留 (Vanilla KD), RAIL-KD，MATE-KD，CILDAを用いた. RAIL-KD の $L_{R A I L-K D}$ には $L_{R A I L-K D^{c}}$ を用いた。

## 4.1.4 ハイパーパラメータ

学習率を 1e-05，2e-05，5e-05，1e-04 の 4 通りか らハイパーパラメータ探索で選択し，バッチサイズ はw/o KD，Vanilla KD，RAIL-KD，MATE-KDでは 128, CILDA, CILDA+minILDでは 64 とした. 損失関数の係数は, Vanilla KDでは $\lambda$ は $1 / 2$, RAIL-KD と MATE-KD の $\lambda_{1}, \lambda_{2}, \lambda_{3}$ はすべて $1 / 3$ とした. CILDA の $\lambda_{1}, \lambda_{2}$ は元データを入力する際にはともに $1 / 3$ とし，拡張されたデータに対してはそれぞれ $2 / 9$, $1 / 9$ とした. $\alpha_{1}, \alpha_{2}$ はともに $1 / 2, \tau_{2}$ は 2 とした. CILDA+minILD では元データに対しては $\lambda_{1}=2 / 9$ , $\lambda_{2}=2 / 9, \lambda_{3}=2 / 9$, 拡張されたデータに対して は $\lambda_{1}=1 / 6, \lambda_{2}=1 / 12, \lambda_{3}=1 / 12$ とした. RAIL-KD, CILDA，CILDA+minILDでの中間層の線形変換後の 次元数は 128 とした。 ハイパーパラメータ探索では 5 エポックの実験を 1 回行い，5 エポックの時点で dev set でもっとも性能の高いハイパーパラメータを 選択した. MATE-KD, CILDA, CILDA+minILD では $n_{G}=10, n_{S}=100$ とした.

## 4.1.5 動作環境

本研究では PyTorch フレームワークを使用し，モ デルは Huggingface Transformers のものを使用した. また，GPUには 4 枚の Nvidia 社製 RTX A6000を使用した。節 4.1.4 に記載したバッチサイズは 4 枚の GPU の合計であり, GPU1 枚あたりのバッチサイズ は上記の 4 分の 1 である.

## 4.1.6 本実験

本実験ではハイパーパラメータ探索で選んだ学習率を用いて 20 エポックの実験を 5 回行う. 1 エポッ クごとにチェックポイントを保存し, 各実験で最も 評価指標の高いモデルを使用する. その後, 有意水準を 0.05 として並べ替え検定を片側検定で行う.

## 4.2 結果

表 1 に各実験の GLUE の dev set における平均を 示す. 括弧内の数字は標準偏差である. タスクごと に最良のものを太字としており，下線が引かれてい るものよりも統計的に有意に評価指標が高い. 教師 モデルの行は, 平均的に最も性能が高い学習率にお ける結果である.

提案手法である CILDA+minILD は使用したタス クでは MRPC 以外で MATE-KDを超える結果にな らなかった. また，先行研究では MATE-KDを超え る結果を示した CILDA も MRPC 以外で MATE-KD を超えることはなかった。

## 5 CILDA の有効性の再検証

本研究では，CILDA のスコアが MATE-KDを超え ず先行研究とは異なる結果となった. そのことが CILDA+minILD が有効でなかった理由であるという 仮説をたて，CILDA の有効性を検証した。

CILDA のスコアが低かった原因としてハイパー パラメータが適切でなかったからである可能性があ る. 先行研究では，バッチサイズは $8,16,32$ か ら, 学習率は 1e-05, 2e-05, 4e-06 から選択しており 本研究で使用したハイパーパラメータとは異なる.

## 5.1 再検証の実験設定

この仮説を検証するため，CILDAを実験を先行研究のハイパーパラメータに合わせて実験を行っ た. $n_{G}$ は CoLA， MRPC，RTE では 20，STS-B では 10 とした. $n_{S}$ はすべてのタスクにおいて 100 と した. ハイパーパラメータ探索は 5 エポックの
表 2 RoBERTa の dev set における結果

表 3 BERT の dev set における結果

実験を 5 回行い，5 エポック時点での評価指標の 平均が最も高いバッチサイズ，学習率の組を探索する. その後本実験を行う. 本実験の手順は節 4.1.6 に示したものと同じである. 実験では GPU に RTX A6000を 1 枚使用した。追加検証のため RoBERTa，BERT[1], BART[14]の 3 通りのモデルを 用いて実験を行った. BERT の実験では教師モデ ルと Generator を BERT-large (cased), 生徒モデル を DistilBERT[13], BART の実験では教師モデルと Generator を BART-large, 生徒モデルを BART-base とした. BART の実験では教師モデルのファイン チューニングを 10 エポックとし，各エポックで チェックポイントを保存し, 最良のチェックポイン トを用いた。

## 5.2 再検証実験結果

表 2，3，4 亿結果を示す. RoBERTa の実験では，節 4.2 と比較して CILDA のスコアは向上したが,傾向は変わらず MARC のみ MATE-KD を上回る結果となった. BERT の実験でも RoBERTa の実験と表 4 BART の dev set における結果

同様の傾向となった. BART の実験では RoBERTa, BERT の場合と異なり，タスク毎に最高性能の手法 が異なっているため，知識蒸留に中間層蒸留，敵対的学習，対照学習を導入することが BARTにお いては有効であるとは確認できなかった. ただし， Vanilla KD は w/o KD と比較して高いスコアが得ら れた。そのため知識蒸留自体は BARTにおいても有効である可能性がある．表 4 には記載していないが CoLA，RTE，STS-B では w/o KD と Vanilla KD の間 に有意差は確認できず，MRPC のみ Vanila KD の方 が有意に高いという結果であった.

先行研究では CILDA が MATE-KD を超える性能 を示したと報告されているが，どのモデルを使った 実験でも，そのような結果を再現できなかった. そ のため, MATE-KD と CILDA の違いである $L_{C R D}$ の 利用は有効でなかったと考えられる。提案手法の CILDA+minILD は $L_{C R D}$ を CILDA の最小化ステッ プでも用いるという手法であるため， $L_{C R D}$ が有効 な損失関数でなかったことが CILDA+minILD の性能が低かった原因と考えられる。

## 6 終わりに

本研究では, CILDA の最小化ステップに中間層出力の利用と対照学習を適用した CILDA+minILDを 提案した.しかし, 従来の手法である MATE-KD よ りも低い性能となり，その原因が CILDA の性能が 低いことにあると結論づけた．今後は，本研究で扱 わなかった GLUE の他のタスクでも同様の結果が得 られるかの検証，CILDA の性能が MATE-KD よりも 低かった原因の究明，本研究で最も高い性能を発揮 した MATE-KD を改良することによる知識蒸留の性能の向上などを行っていきたい.

## 参考文献

[1] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. 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, Minneapolis, Minnesota, June 2019. Association for Computational Linguistics.

[2] Yinhan Liu, Myle Ott, Naman Goyal, Jingfei Du, Mandar Joshi, Danqi Chen, Omer Levy, Mike Lewis, Luke Zettlemoyer, and Veselin Stoyanov. Roberta: A robustly optimized BERT pretraining approach. arXiv, Vol. abs/1907.11692, , 2019.

[3] Tom B. Brown, Benjamin Mann, Nick Ryder, Melanie Subbiah, Jared Kaplan, Prafulla Dhariwal, Arvind Neelakantan, Pranav Shyam, Girish Sastry, Amanda Askell, Sandhini Agarwal, Ariel Herbert-Voss, Gretchen Krueger, Tom Henighan, Rewon Child, Aditya Ramesh, Daniel M. Ziegler, Jeffrey Wu, Clemens Winter, Christopher Hesse, Mark Chen, Eric Sigler, Mateusz Litwin, Scott Gray, Benjamin Chess, Jack Clark, Christopher Berner, Sam McCandlish, Alec Radford, Ilya Sutskever, and Dario Amodei. Language models are few-shot learners. arXiv, Vol. abs/2005.14165, , 2020.

[4] Aakanksha Chowdhery, Sharan Narang, Jacob Devlin, Maarten Bosma, Gaurav Mishra, Adam Roberts, Paul Barham, Hyung Won Chung, Charles Sutton, Sebastian Gehrmann, Parker Schuh, Kensen Shi, Sasha Tsvyashchenko, Joshua Maynez, Abhishek Rao, Parker Barnes, Yi Tay, Noam Shazeer, Vinodkumar Prabhakaran, Emily Reif, Nan Du, Ben Hutchinson, Reiner Pope, James Bradbury, Jacob Austin, Michael Isard, Guy Gur-Ari, Pengcheng Yin, Toju Duke, Anselm Levskaya, Sanjay Ghemawat, Sunipa Dev, Henryk Michalewski, Xavier Garcia, Vedant Misra, Kevin Robinson, Liam Fedus, Denny Zhou, Daphne Ippolito, David Luan, Hyeontaek Lim, Barret Zoph, Alexander Spiridonov, Ryan Sepassi, David Dohan, Shivani Agrawal, Mark Omernick, Andrew M. Dai, Thanumalayan Sankaranarayana Pillai, Marie Pellat, Aitor Lewkowycz, Erica Moreira, Rewon Child, Oleksandr Polozov, Katherine Lee, Zongwei Zhou, Xuezhi Wang, Brennan Saeta, Mark Diaz, Orhan Firat, Michele Catasta, Jason Wei, Kathy Meier-Hellstern, Douglas Eck, Jeff Dean, Slav Petrov, and Noah Fiedel. Palm: Scaling language modeling with pathways. arXiv, Vol. abs/2204.02311, , 2022.

[5] Geoffrey E. Hinton, Oriol Vinyals, and Jeffrey Dean. Distilling the knowledge in a neural network. arXiv, Vol. abs/1503.02531, , 2015 .

[6] Siqi Sun, Yu Cheng, Zhe Gan, and Jingjing Liu. Patient knowledge distillation for BERT model compression. 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. 4323-4332, Hong Kong, China, November 2019. Association for Com- putational Linguistics.

[7] Peyman Passban, Yimeng Wu, Mehdi Rezagholizadeh, and Qun Liu. Alp-kd: Attention-based layer projection for knowledge distillation. Proceedings of the AAAI Conference on Artificial Intelligence, Vol. 35, No. 15, pp. 13657-13665, May 2021.

[8] Md Akmal Haidar, Nithin Anchuri, Mehdi Rezagholizadeh, Abbas Ghaddar, Philippe Langlais, and Pascal Poupart. RAIL-KD: RAndom intermediate layer mapping for knowledge distillation. In Findings of the Association for Computational Linguistics: NAACL 2022, pp. 1389-1400, Seattle, United States, July 2022. Association for Computational Linguistics.

[9] Ahmad Rashid, Vasileios Lioutas, and Mehdi Rezagholizadeh. MATE-KD: Masked adversarial TExt, a companion to knowledge distillation. In Proceedings of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing (Volume 1: Long Papers), pp. 1062-1071, Online, August 2021. Association for Computational Linguistics.

[10] Siqi Sun, Zhe Gan, Yuwei Fang, Yu Cheng, Shuohang Wang, and Jingjing Liu. Contrastive distillation on intermediate representations for language model compression. In Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP), pp. 498-508, Online, November 2020. Association for Computational Linguistics.

[11] Md Akmal Haidar, Mehdi Rezagholizadeh, Abbas Ghaddar, Khalil Bibi, Phillippe Langlais, and Pascal Poupart. CILDA: Contrastive data augmentation using intermediate layer knowledge distillation. In Proceedings of the 29th International Conference on Computational Linguistics, pp. 4707-4713, Gyeongju, Republic of Korea, October 2022. International Committee on Computational Linguistics.

[12] Alex Wang, Amanpreet Singh, Julian Michael, Felix Hill, Omer Levy, and Samuel Bowman. GLUE: A multi-task benchmark and analysis platform for natural language understanding. In Proceedings of the 2018 EMNLP Workshop BlackboxNLP: Analyzing and Interpreting Neural Networks for NLP, pp. 353-355, Brussels, Belgium, November 2018. Association for Computational Linguistics.

[13] Victor Sanh, Lysandre Debut, Julien Chaumond, and Thomas Wolf. Distilbert, a distilled version of bert: smaller, faster, cheaper and lighter. arXiv, Vol. abs/1910.01108, , 2019.

[14] 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, Online, July 2020. Association for Computational Linguistics.

## A ハイパーパラメータ

ハイパーパラメータ探索の結果，採用したハイ パーパラメータを表 $5 ， 6 ， 7$ に示す. 数字が 1 つ の場合は学習率，2つある場合は上が学習率，下が バッチサイズである. CILDA 検証の行は 5 章の実験 のものを表す.

表 5 RoBERTa の実験

表 6 BERT の実験

表 7 BART の実験

## B 教師モデルの性能

RoBERTa，BERT，BART の実験において，実際 に使用した教師モデルの性能を表 8 に示す.

表 8 教師モデルの性能


# 入力の分割単位について頑健な言語モデルの構築

清野舜 高瀬翔 李聖哲 佐藤敏紀
LINE 株式会社
\{shun.kiyono, sho.takase, shengzhe.li, toshinori.sato\}@linecorp.com

## 概要

本研究では，事前訓練に必要な計算資源の削減を 目的として，文字とサブワード単位の両方を利用可能な言語モデルの構築に取り組む. 既存のサブワー ド正則化技術を応用することで，文字とサブワード を同時に用いた言語モデルの事前訓練を実現する。実験では，BERT の事前訓練を題材として手法の効果を検証する。

## 1 はじめに

事前訓練済み言語モデルは NLP の各種タスクに おいて大きな成功を収めている [1].これらのモデ ルにおいては，入力文をトークン列に分割する方法 （以降，分割方法と言及する）がモデルに紐付いた 形で規定されており，モデルのユーザは規定された 分割方法に従う必要がある.

しかし，あらかじめ規定された分割方法が，ユー ザが目的とするタスクの要求する分割方法と一致 しない場合がある. 例えば，サブワード単位で事前訓練されたモデルを，文字単位の分割を要求する夕 スクに適用する場合にこの問題は生じる。いま，日本語における句読点復元タスクを考える. 句読点復元タスクとは，書き起こし文の読みやすさを向上さ せることを目的として，音声認識システムにおける 後処理として用いられるタスクである [2]. ここで，句読点を挿大するべき箇所は，必ずしもサブワード 分割の単位と一致しないため，文字単位での分割が 必要となる.

分割方法の不一致を解決する方法として，単純に は，サブワード単位と文字単位のそれぞれについて 独立に事前訓練済み言語モデルを構築することが考 えられる. 実際，これは日本語の事前訓練済み言語 モデルにおける標準的な慣習である。例えば，日本語用 BERT において，サブワード単位のもの ${ }^{1)}$ と文

図 1 本研究の概要図：これまで，サブワード単位と文字単位の言語モデルが独立に作成されてきた (左). 本研究 ではサブワード正則化（BPE-dropout）を応用することで，各分割単位を同時に利用可能なモデルを構築する（右).

字単位のもの2) がそれぞれ配布され，活発に用いら れている. 同様に，著者らも社内向けにサブワード 単位・文字単位のモデルの訓練と配布を継続的にお こなってきた ${ }^{3)}$.しかし，事前訓練は大量の計算資源を必要とする. そのため我々は，サブワード単位 と文字単位の両方を利用可能な単一の言語モデルを 訓練するための方法論を構築し，事前訓練に必要な 計算資源を削減したい。

この目的を達成するために，本研究ではサブワー ド正則化 [3] を言語モデルの事前訓練に応用する (図 1).本来，サブワード正則化は，入力文から複数の分割候補を獲得し，モデルの頑健性と汎化性能 を向上させるための手法である．その代わり，本研究ではサブワード正則化をサブワード単位と文字単位を同時に言語モデルの事前訓練に取り入れる ための方法論として応用する. 手法そのものは非常 に単純で，追加のモデルパラメータを必要としな いほか，ファインチューニング時の計算コストに も全く影響しない. 我々の手法の効果を示すため, BERT の事前訓練を題材として実験をおこなう．実

2) https://huggingface.co/cl-tohoku/ bert-base-japanese-char-v2

3）時事情報を言語モデルに反映するため，クローリングで収集したテキストデータ等を用いた言語モデルの再学習が定期的记必要となる.
験では，サブワード正則化を用いて事前訓練された BERT は，サブワード単位や文字単位について独立 に訓練された BERT と同等の性能を示した。

## 2 背景

第 1 節で述べたように，我々の手法はサブワード 正則化技術に基づく. 本研究では, サブワード分割の手法としてバイト対符号化（Byte Pair Encoding; BPE）[4]，またサブワード正則化の手法として BPE-dropout[5] を用いる4). 本節では，これらの手法の詳細を述べる。

## 2.1 バイト対符号化（BPE）

BPE[4] はサブワード分割手法の一種であり，入力 された単語について, 結合規則を繰り返し適用する ことで，サブワード単位の分割をおこなう。まず，入力は文字単位の系列として表現される. 次に，隣接する 2 つのトークンは，結合規則表（図 2 左）に 定義された規則とその優先度に応じて繰り返し結合 される，例えば，図 2 において，結合規則（1）の 優先度が最も高いため, この規則が最初に適用され る. 適用可能な結合規則を全て適用した結果が，最終的なサブワード単位の分割に相当する.

BPE における結合規則表はコーパス中の頻度情報 を用いて構築される。具体的には，隣接するトーク ンのうち，最も頻度の大きいものが新しい結合規則 として追加されていく. 例えば，図 2 左の場合，表 の先頭に登場する結合規則ほど優先度が高い.この 過程は, 結合規則の総数があらかじめ指定した数に 達するまで繰り返される。

## 2.2 BPE-dropout

BPE-dropout[5] は BPE 用のサブワード正則化手法 である. サブワード正則化 [3] とは，入力文を複数 の候補に分割し，訓練に取り入れることで，モデル をノイズに対して頑健にするための技術である. 通常の BPE と BPE-dropout の比較を図 2 に示す.

BPE-dropout は, 結合規則の適用過程において, 結合規則を確率 $p$ で棄却する. そのため, 同じ入力単語であっても BPE-dropoutを適用するたびに異なる 分割結果が得られる. ここで, 確率 $p$ が高いほど結合規則は棄却されやすい. 例えば， $p=1.0$ のとき，

4）我々の手法はサブワード正則化を活用するものであ るため，同技術が利用可能であるような任意のサブワー ド分割手法が適用可能である. 例えば，BPE の他にも， WordPiece[6, 7, 8] やユニグラム言語モデル [3] が適用できる.
(1) $s t \rightarrow s t$

(2) e st $\rightarrow$ est

(3) $1 \circ \rightarrow 10$

(4) w est $\rightarrow$ west

(5) $\mathrm{ne} \rightarrow$ ne

(6) lo w $\rightarrow$ low

結合規則

(a) BPE

(b) BPE-dropout

図 2 バイト対符号化 (BPE) と BPE-dropout の比較：最初，トークン newest は文字単位の系列として表現され，結合規則表に従って結合が繰り返される. (a) BPE の場合，この処理は適用可能な結合が無くなるまで繰り返 される。一方で，(b) BPE-dropoutにおいては，結合規則 が確率 $p$ で棄却される. そのため, 最終的な分割結果 ne w e st (a) BPEから得られる分割結果 ne west と異 なる.

全ての結合規則が棄却されるため，分割結果は常に 文字単位の分割に一致する. 同様に $p=0.0$ のとき, BPE-dropout は通常の BPE に一致する.

## 3 手法

元々, BPE-dropout のようなサブワード正則化技術は，モデルの正則化を目的として提案されたもの である. 一方で本研究では, 同技術を応用し, サブ ワード単位と文字単位の両方を利用可能な言語モ デルの訓練に用いる.このアイデアは, BPE-dropout による分割結果の性質に基づいている. 具体的に は, 図 2 右において，分割結果は文字とサブワード を混合したものとなっている. このような分割を用 いて訓練された言語モデルは，サブワード単位と文字単位の両方を利用可能であることが期待される. このとき，サブワードと文字単位について独立に言語モデルを訓練する必要が無くなるため, 事前訓練 に必要な計算資源の削減が達成できる.

我々の手法は，言語モデルの事前訓練において入力文に既存の BPE-dropoutを適用するだけという非常に単純なものである. そのほか, 事前訓練の目的関数やモデルのアーキテクチャの変更，モデルパラ メータの追加等は一切おこなわない. 事前訓練後 は，所望の分割単位に合わせて BPE-dropout のパラ メータ（棄却確率 $p$ ）を設定し，ファインチューニ ングをおこなう．例えば，文字単位の分割を必要と するタスクについては， $p=1.0$ を用いる.

## 4 実験

実験では，我々の手法の効果を日本語の BERT[1] の訓練を通して検証する。具体的には，提案手法を 用いて訓練した BERTが，サブワード単位の BERT・文字単位の BERT のそれぞれとほぼ同等の性能を発揮することを示す.

## 4.1 データセット

事前訓練用データセット BERT の事前訓練に は，日本語 Wikipedia から作成したコーパズ年を用 いた. 前処理として，Unidic 辞書を用いて $\left.\mathrm{MeCab}^{6}\right)$ で分かち書きをした後，BPEを用いて分割をおこ なった.BPE の実装として sentencepiece[9]を用い た. 語彙の大きさと文字の被覆率はそれぞれ 32,000 と 0.9995 とした.

JGLUE データセット 事前訓練した BERT の性能評価を目的として，JGLUE データセット [10] 上 でファインチューニングを行う. JGLUE は英語圏 で広く用いられているべンチマークデータである GLUE[11]の日本語版である．JGLUEのうち，JNLI, MARC-ja と JSTS の性能を報告する. JGLUE は評価 セットを公開していないため，公開されている開発 セットを2つに等分割したものを開発セットと評価 セットとして用いた.

句読点復元データセット 文字単位での分割が必要となるタスク上での評価を目的として, 句読点復元タスクにも取り組む. 句読点復元タスクは, 入力文に対して句読点を付与するもので，音声認識シス テムの後処理として用いられる [2]. 本研究では,日本語の生コーパスを用いてデータセットの自動構築をおこなった。まず，CC-100コーパス $[12,13]$ の 日本語部分からランダムに 10 万文をサンプルし,句読点を除去した. 次に，文中の各文字について，句点挿入，読点挿入とそれ以外の 3 種類のラベルを 付与した. このタスクを系列ラベリング問題として 定式化し, 先行研究 [1] と同様に BERT のファイン チューニングをおこなった.

## 4.2 比較手法

実験には，以下の 3 つの分割手法を用いて BERT の事前訓練とファインチューニングをおこなった.

・Subword: 入力文をサブワード単位で分割する

5） 2020 年 10 月に取得したダンプデータより作成した.

6) https://taku910.github.io/mecab/手法
- Character: 入力文を文字単位で分割する手法

・BPE-dropout: 入力文を BPE-dropout を用いて分割する手法

そのほか，一般に公開されている BERTをファイ ンチューニングした結果も報告する．事前訓練に用 いるデータセット，実装やアーキテクチャの違い7) から，我々の BERT と一般の BERT の値の大小を直接比較することはできないが，我々の BERT の性能 が十分に高いことを確認する目的で用いる.

サブワード単位と文字単位の BERTとして，それ ぞれ東北大学の公開している bert-base-japanese-v2 $2^{8)}$ と bert-base-japanese-char-v2 $2^{9}$ を用いた。事前訓練中 の BPE-dropout $の$ 棄却確率 $p$ は先行研究 [5] に従っ て 0.1 とした. その他のハイパーパラメータの詳細 については付録 $\mathrm{A} を$ 参照されたい.

## 4.3 JGLUE での結果

BPE-dropout の効果について 実験結果を表 1 に 示した．まず，サブワード単位での性能を比較す る. 事前訓練に BPE-dropoutを用いたモデル (c) と サブワード単位だけで事前訓練したモデル (a) の評価セット上の性能を比較すると，JNLI においては 僅かに性能の劣化が見られたものの, MARC-ja と JSTS において両者はほとんど同等の性能を示した. また，文字単位での性能に着目すると，BPE-dropout を用いたモデル (d) が文字単位だけで事前訓練した モデル (b)をほぼ一貫して上回る結果となった.こ の結果から，BPE-dropout を BERT の事前訓練に活用することで，サブワード単位と文字単位のモデル を独立に訓練する必要がなくなるため，事前訓練に 必要な計算資源を半分にできることが示唆される.

サブワード単位を用いるモデルの性能が JNLI 上 で僅かに悪化した原因として，今回用いたモデル （BERT-base）が，サブワード単位と文字単位の両方 について汎化するだけの表現力を持っていない可能性が考えられる。そのため，今後はより表現力を高 めた大きなモデル（例：BERT-large）上での検証を

7）最も大きな違いは Layer Normalization の適用位置である. Google による BERT の元実装が Post Layer Normalization 構造 を用いているのに対して，我々の実装（Megatron-LM）はPre Layer Normazliation 構造を用いている. この差分がモデルに 及ぼす影響については Takase らの研究を参照されたい [14].

8) https://huggingface.co/cl-tohoku/ bert-base-japanese-v2

9) https://huggingface.co/cl-tohoku/ bert-base-japanese-char-v2
表 1 JGLUE データセット上での性能：JNLI と MARC-ja については正解率を報告する．また，JSTS についてはスピア マンの相関係数 $\rho$ を報告する．各値はそれぞれ 3 つの乱数シードの平均値である.

表 2 句読点復元タスク上での性能: マイクロ $F_{1}$ 值を 報告する．各値はそれぞれ 3 つの乱数シードの平均値で ある.

## おこなう予定である.

既存の BERT との比較 表 1 において，我々の BERT(a)・(b) と既存の BERT(f) ・(g) を比較すると,全体の傾向としてほとんど同等の性能が出せている ことがわかる. この結果は, 我々の訓練した BERT の性能が十分に高いこと，つまり，モデル (a)・(b) が我々の手法 (c)・(d) に対する強力なベースライン 手法とみなせることを示している.

## 4.4 句読点復元タスクでの結果

表 2 に句読点復元タスクの結果を示した. 表 1 と 同様に，BPE-dropoutを用いたモデル (d) が文字単位 のモデル (b) の性能を上回った. また，サブワード 単位で事前学習したモデルを文字単位でファイン チューニングしたモデル (e) の性能は, 最も低い結果となった. このことから, 文字単位のタスクで高 い性能を発揮するためには，サブワード単位のモデ ルを文字単位モデルとしてファインチューニング時 に転用するだけでは不十分であり，文字単位を含め た事前訓練が必要であることが示唆される.

## 5 分析

## BPE-dropout は事前訓練の時間を増加させるか第 2.2 節で述べた通り, BPE-dropout はモデルの正則化のための技術である．そのため，BPE-dropout を 用いることで，事前訓練におけるモデルの収束速度 が悪化し，事前訓練の時間が増加する懸念がある。 BPE-dropout を用いるねらいの一つは計算資源の節

図 3 訓練損失の変化の比較 : 事前訓練時，各モデルはほ ぼ同じ速度で収束するとわかる．ここで，訓練データの 分割方法が異なることから，損失の值の大小は直接比較 できないことに注意されたい.

約であるため，事前訓練の時間は増加しないことが 望ましい. 図 3 に更新回数に対する訓練損失の変化 を Subword モデルと BPE-dropout モデルのそれぞれ について示した. 図より, 収束速度はほぼ同じであ り，事前訓練に必要な時間に大きな悪影響はないと 考えられる。

## 6 おわりに

本研究では，サブワード単位と文字単位の両方を 利用可能な言語モデルの構築を目的として，サブ ワード正則化を事前訓練に取り入れる効果を検証し た. BERT 上での実験結果より，サブワード正則化 を既存の分割方法の代替として適用可能であるこ とが示された. そのため，サブワードと文字単位の BERT を独立に訓練する場合と比べて, 必要な計算資源を半分にできる．今後は，本手法を他の言語モ デル（エンコーダ・デコーダモデル [15] やデコーダ のみのモデル [16]）へ適用するための方法論の構築 に取り組む予定である。

## 参考文献

[1] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. 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, Minneapolis, Minnesota, June 2019. Association for Computational Linguistics.

[2] Ottokar Tilk and Tanel Alumäe. Bidirectional recurrent neural network with attention mechanism for punctuation restoration. In Interspeech, pp. 3047-3051, 2016.

[3] Taku Kudo. Subword regularization: Improving neural network translation models with multiple subword candidates. In Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 66-75, Melbourne, Australia, July 2018. Association for Computational Linguistics.

[4] Rico Sennrich, Barry Haddow, and Alexandra Birch. 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. 17151725, Berlin, Germany, August 2016. Association for Computational Linguistics.

[5] Ivan Provilkov, Dmitrii Emelianenko, and Elena Voita. BPEdropout: Simple and effective subword regularization. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pp. 1882-1892, Online, July 2020. Association for Computational Linguistics.

[6] Yonghui Wu, Mike Schuster, Zhifeng Chen, Quoc V Le, Mohammad Norouzi, Wolfgang Macherey, Maxim Krikun, Yuan Cao, Qin Gao, Klaus Macherey, et al. Google's neural machine translation system: Bridging the gap between human and machine translation. arXiv preprint arXiv:1609.08144, 2016.

[7] Xinying Song, Alex Salcianu, Yang Song, Dave Dopson, and Denny Zhou. Fast WordPiece tokenization. In Proceedings of the 2021 Conference on Empirical Methods in Natural Language Processing, pp. 2089-2103, Online and Punta Cana, Dominican Republic, November 2021. Association for Computational Linguistics.

[8] Tatsuya Hiraoka. MaxMatch-dropout: Subword regularization for WordPiece. In Proceedings of the 29th International Conference on Computational Linguistics, pp. 4864-4872, Gyeongju, Republic of Korea, October 2022. International Committee on Computational Linguistics.

[9] Taku Kudo and John Richardson. SentencePiece: A simple and language independent subword tokenizer and detokenizer for neural text processing. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing: System Demonstrations, pp. 66-71, Brussels, Belgium, November 2018. Association for Computational Linguistics.

[10] Kentaro Kurihara, Daisuke Kawahara, and Tomohide Shibata. JGLUE: Japanese general language understanding evaluation. In Proceedings of the Thirteenth Language Resources and Evaluation Conference, pp. 2957-2966, Marseille, France, June 2022. European Language Resources Association.

[11] Alex Wang, Amanpreet Singh, Julian Michael, Felix Hill, Omer Levy, and Samuel Bowman. GLUE: A multi-task benchmark and analysis platform for natural language understanding. In Proceedings of the 2018 EMNLP Workshop BlackboxNLP: Analyzing and Interpreting Neural Networks for NLP, pp. 353-355, Brussels, Belgium, November 2018. Association for Computational Linguistics.

[12] Guillaume Wenzek, Marie-Anne Lachaux, Alexis Conneau, Vishrav Chaudhary, Francisco Guzmán, Armand Joulin, and
Edouard Grave. CCNet: Extracting high quality monolingual datasets from web crawl data. In Proceedings of the Twelfth Language Resources and Evaluation Conference, pp. 40034012, Marseille, France, May 2020. European Language Resources Association.

[13] Alexis Conneau, Kartikay Khandelwal, Naman Goyal, Vishrav Chaudhary, Guillaume Wenzek, Francisco Guzmán, Edouard Grave, Myle Ott, Luke Zettlemoyer, and Veselin Stoyanov. Unsupervised cross-lingual representation learning at scale. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pp. 8440-8451, Online, July 2020. Association for Computational Linguistics.

[14] Sho Takase, Shun Kiyono, Sosuke Kobayashi, and Jun Suzuki. On layer normalizations and residual connections in transformers. arXiv preprint arXiv:2206.00330, 2022.

[15] 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.

[16] Alec Radford, Jeff Wu, Rewon Child, David Luan, Dario Amodei, and Ilya Sutskever. Language models are unsupervised multitask learners. 2019

[17] Yinhan Liu, Myle Ott, Naman Goyal, Jingfei Du, Mandar Joshi, Danqi Chen, Omer Levy, Mike Lewis, Luke Zettlemoyer, and Veselin Stoyanov. RoBERTa: A robustly optimized bert pretraining approach. arXiv preprint arXiv:1907.11692, 2019.

[18] Mohammad Shoeybi, Mostofa Patwary, Raul Puri, Patrick LeGresley, Jared Casper, and Bryan Catanzaro. Megatron-LM: Training multi-billion parameter language models using model parallelism. arXiv preprint arXiv:1909.08053, 2019.

[19] Marius Mosbach, Maksym Andriushchenko, and Dietrich Klakow. On the stability of fine-tuning BERT: misconceptions, explanations, and strong baselines. In 9th International Conference on Learning Representations, ICLR 2021, Virtual Event, Austria, May 3-7, 2021. OpenReview.net, 2021.

[20] Tianyi Zhang, Felix Wu, Arzoo Katiyar, Kilian Q. Weinberger, and Yoav Artzi. Revisiting few-sample BERT fine-tuning. In 9th International Conference on Learning Representations, ICLR 2021, Virtual Event, Austria, May 3-7, 2021. OpenReview.net, 2021 .

## A ハイパーパラメータ

実験（第 4 節）で用いたハイパーパラメータ の一覧を表 3 に示す. それぞれの值は先行研究 $[17,18,19,20]$ による推奨値を参考にして設定した.

表 3 ハイパーパラメータの一覧


# Learning Representations of Natural Language Edits via Levenshtein Prediction

Edison Marrese-Taylor ${ }^{1,3}$, Machel Reid ${ }^{2,3}$, Alfredo Solano ${ }^{3}$
${ }^{1}$ AIST, ${ }^{2}$ Google Research, ${ }^{3}$ The University of Tokyo
edison.marrese@aist.go.jp machelreid@google.com
asolano@weblab.t.u-tokyo.ac.jp

## 概要

In this paper, we propose a novel approach that employs token-level Levenshtein operations to learn a continuous latent space of vector representations to capture the underlying semantic information with regard to the document editing process. We find that, our proposed method trained on the adversarial paraphrase dataset, PAWS, outperforms a strong RoBERTa baseline, retaining the language understanding performance of its base model.

## 1 Introduction

Editing documents has become a pervasive component of many human activities [1]. This is, to some extent, explained by the advent of the electronic storage of documents, which has greatly increased the ease with which we can edit them.

From source code to text files, specially over an extended period of time, users often perform edits that reflect a similar underlying change. For example, software programmers often have to deal with the task of performing repetitive code edits to add new features, refactor, and fix bugs during development. On the other hand, right before a conference deadline technical papers worldwide are finalized and polished, often involving common fixes for grammar, clarity, and style [2]. In light of this, it is reasonable to wonder if it would be possible to automatically extract rules from these common edits. This has led researchers to recently propose the task of learning distributed representations of edits [2] using an auto-encoding approach.

Auto-encoding approaches have been used previously in the context of representation learning initially in the visual domain, but more recently have been extended to the natural language and video modalities. These approaches largely form the foundation of "self-supervised learning" which enables the learning of representations via objectives which solely require a source datum. An instance of this relevant to NLP is that of the pre-trained masked language model, BERT [3], in which a source text is initially corrupted with a mask token $[\mathrm{MASK}]$ and then reconstructed into the original form with a Transformer encoder.

As an alternative to this approach, other works have instead produced representations of edits in an indirect manner, by instead focusing directly on edit-centric downstream tasks such as edit-based article quality estimation on Wikipedia [4, 5], English grammatical error correction (GEC), and machine translation post-editing.

Machine translation post-editing, where humans amend machine-generated translations to achieve a better final product [6], has more directly addressed the problem of modelling different editing agents [7] Finally, edits are also relevant for GEC, which has attracted recent interest from the research community with several shared tasks being organized in the last years [8].

In this paper, differently from existing prior work, we propose a continued pre-training task, not based on autoencoding, which aims directly at learning distributed representations of natural language edits. In particular, we look at using the Levenshtein algorithm as a form of supervision to encourage a model to learn to convert a given input sequence into a desired output sequence, namely an edit. In particular, we look to answer the question of whether creating a "neural Levenshtein algorithm" is conducive to improved downstream performance on edit-based tasks, given the edit-centricity of the algorithm.

Our results show that our proposed pre-training technique leads to better performance on the adversarial para-
phrase dataset PAWS, outperforming a strong baseline based on RoBERTa [9] while also retaining the language understanding performance of its base model (RoBERTa).

## 2 Related Work

[2] was the seminal work in proposing to directly learn edit representations by means of a task specifically designed for this purpose, based on auto-encoding. While their ideas were tested on both source code and natural language edits, the work of [10] proposed a similar approach that is specifically tailored at source code. After that, [11] proposed a variation of this model where a latent variable is introduced as a means to capture properties of Natural Language Edits. Additionally, the authors used the obtained latent vectors to represent edits and tested on a selection or edit-centric tasks.

Different from the above, other works have instead produced representations of edits in an indirect manner, by directly focusing on specific edit-centric downstream tasks. For example, [4] proposed obtaining edit representations that are useful to predict changes in the quality of articles by tackling this task as an edit-level classification problem. Similarly, [5] proposed to improve quality assessment of Wikipedia articles by introducing a model that jointly predicts the quality of a given Wikipedia edit and generates a description of it in natural language. Another related task is machine translation post-editing, where humans amend machine-generated translations to achieve a better final product, where recent work has more directly addressed the problem of modelling different editing agents [7]. Finally, edits are also relevant for English grammatical error correction (GEC), which has attracted recent interest from the research community with several shared tasks being organized in the last years [8].

## 3 Proposed Approach

We propose a new pre-training task based on selfsupervision. In particular, we look at using the Levenshtein algorithm as a means of pushing a model to learn to convert a given input sequence into a desired output sequence.

The Levenshtein algorithm has been used in previous work on learning edit-based generative models [12,13] thanks to its objective of finding the shortest edit path from a given source sequence to a target sequence. However, instead of purposing the algorithm for generation, in this work we look to see if we can include this objective from a natural language understanding (NLU) perspective. In particular, we look to assess whether Transformer encoder representations can be trained to contain information relevant to an edit, which we hypothesize can be achieved by directly predicting relevant operations and their associated tokens - as produced by an oracle Levenshtein algorithm.

Let $x_{-}$be the original version of an object, and $x_{+}$its form after a change/edit has been applied. We assume that both $x_{-}$and $x_{+}$are sequences of tokens such that $x_{-}=\left[x_{-}^{1}, \ldots, x_{-}^{n}\right]$ and $x_{+}=\left[x_{+}^{1}, \ldots, x_{+}^{m}\right]$. We use a fast implementation of the Levenshtein algorithm to identify spans of tokens that have been replaced, inserted or deleted as a result of the edit, and define token-level edit operation labels to indicate how each token was changed.

Concretely, we first tokenize the pair $\left(x_{-}, x_{+}\right)$, then use the Levenshtein algorithm to identify the text spans that have changed, and finally further process this output to assign token-level labels capturing the transformations required to convert $x_{-}$into $x_{+}$. Let $x_{-}^{i: j}$ be the sub-span on $x_{-}$ that goes from positions $i$ to $j$, our post-processing works as follows.
- When a span has been inserted between positions $x_{-}^{i: j}$, such that it appears in $x_{-}^{k: j}$, we label the tokens in the latter as INSERTER, and also label token $x_{-}^{k-1}$, as INSERT. We do this to provide the model with context of where the insertion was performed, in terms of the $x_{-}$.
- Similarly, if the token $x_{-}^{i: j}$ has been replaced by the $\operatorname{span} x_{-}^{k: l}$, we label the tokens on the respective spans as REPLACE and REPLACER.
- If the span $x_{-}^{i: j}$ has been removed from the sequence as a result of the edit, we label each token as DELETE.
- Tokens that have not been directly involved in the edit are not labeled (we represent this using the empty label denoted as $\mathrm{O}$ ).

As a result of our post-processing, each token in both $x_{-}$ and $x_{+}$is mapped to a single Levenshtein operation label: REPLACE, REPLACER, INSERT or INSERTER, as shown in Figure 1. The end goal of our proposed pretraining task is to predict these token-level Levenshtein operations, which, as explained, encode the operations relevant to transform $x_{-}$into $x_{+}$.

The input to our model is constructed by first prepending
図 1 Example of model input-output for the edit defined by the sequences "My name is John" and " My last name is Wayne", where the label $\mathrm{O}$ denotes tokens that have not been directly involved in the edit.

the [CLS] token to $x_{-}$and $x_{+}$, which are separated using the [SEP] token, whose total length we denote as $l=m+n+2$. This input is embedded and then fed to an L-layer Transformer encoder, which can be initialized with a pre-trained model, that returns a sequence of hidden representations $\boldsymbol{h}_{0}, \ldots \boldsymbol{h}_{l}$. We add a classification head (a simple linear classifier) and require the model to predict the corresponding label for each token, ignoring tokens that have not been directly involved in the edit (label O), using a cross entropy loss $\left(\mathscr{L}_{\text {Lev }}\right)$.

We also consider an additional mechanism to enrich the quality of the learned representations, which is based on techniques that have proven useful in previous work [11]. Concretely, we note that the vector associated to the [CLS] token $\left(\boldsymbol{h}_{0}\right)$ is frequently used to represent the complete model input when using Transformer models such as ours. Since there is no specific token-level Levenshtein label associated to this token, we propose to encourage its representation to contain information about the overall edit. We do this by requiring our model to predict the set of tokens that have been changed in the edit in an unordered fashion, using a separate model head (again, simple linear projection) which receives this representation as input.

$
f=\operatorname{MLP}\left(\boldsymbol{h}_{0}\right) \in \mathbb{R}^{|\mathbb{V}|}
$

As shown in Equation 1 above, we use this additional head to project $\boldsymbol{h}_{0}$, the hidden representation for the [CLS] token, to $|\mathbb{V}|$, the vocabulary size. We then let our model minimize the loss function defined in Equation 2, where $x_{\Delta}$ is the set of tokens that has been changed (inserted, replaced or removed). Finally, the total loss used to train our model is the simple summation of the above introduced losses, $\mathscr{L}=\mathscr{L}_{\text {Lev }}+\mathscr{L}_{x_{\Delta}}$.

$
\mathscr{L}_{x_{\Delta}}:=\log p\left(x_{\Delta} \mid \boldsymbol{h}_{0}\right)=\log \prod_{t=1}^{\left|x_{\Delta}\right|} \frac{\exp \left(f_{x_{t}}\right)}{\sum_{j}^{V} \exp \left(f_{j}\right)}
$

## 4 Experimental Setup

Pre-training Datasets To pre-train our model, we utilize large available corpora containing natural language edits in a variety of topics and domains. We specifically rely on two datasets of edits extracted from Wikipedia,
WikiAtomicEdits [14] and WikiEditsMix [11]. As shown in Table 1, we specifically work with two sub-portions of the WikiAtomicEdits, WikiInsertions and WikiDeleTIONS, which respectively contain examples where only additions or deletions are present. These two portions are concatenated and used as a whole. Since pre-training is computationally very expensive, we first use WIKIEDITSMIX, which is much smaller, as a test-bed for ablation experiments regarding the $x_{\Delta}$ loss.

表 1 Details of the data utilized for pre-training.

Downstream Tasks Our pre-training approach aims at generating a generic edit encoder that is useful in a broad variety of situations involving edits. To that end, we select specific datasets to probe the ability of the model to solve edit-related tasks, and also to make sure that our training procedure does not lead to catastrophic forgetting, making the model lose the utility of the representations acquired during the original masked language model's pre-training. For the former, we propose to use PAWS [15], an adversarial dataset for paraphrasing detection, which is strongly correlated to edits, as paraphrases are defined as sentences that are semantically similar to each other. We test both fine-tuning and zero-shot abilities on this model. For the latter, we look at the widely-used GLUE benchmark [16] and select the MNLI dataset to test that language entailment capabilities remain.

Evaluation For evaluation of our pre-training phase, we utilize the per-token classification F1-Score, and also compute the overall F1-Score. Regarding the downstream tasks, we use accuracy, which is the de facto metric for both MNLI and PAWS.

Implementation Details Our model is initialized with RoBERTa [9], which we adopt as our baselines for all of our downstream experiments. We use fairseq [17] to implement our model and perform distributed pre-training
表 2 Performance of our model on our pre-training Levenshtein Prediction task.

using 16 NVIDIA V100-16G GPUs, and fine-tuning with a single GPU. We access these by means of nodes on a large cluster, where each node has four GPUs. We use the Adam optimizer with a learning rate of 1e-4 for pre-training, and 1e-3 for fine-tuning on the downstream tasks.

## 5 Experiments and Results

As can be seen in Table 2, all of our models attain an excellent performance on the pre-training task, with an overall F1-Score of more than $90 \%$ across edit labels. We believe this shows our the encoder is capable of successfully predicting the relevant operations generated by our oracle Levenshtein editor, suggesting that the learned representations may indeed contain information relevant to the changes that are introduced.

Regarding the impact of our proposed $x_{\Delta}$ loss during pre-training, as seen on our ablation results performance in Table 2, we see that $x_{\Delta}$ as a positive impact on the overall performance of the model in the WIKIEDITSMIX dataset increasing the F1-Score my more than 0.5 points. This result is consistent with previous work, validating the contribution of this loss applied to our setting. In light of this finding, our final model includes both of our proposed losses and is pre-trained on WIKIINSERTIONS.

Table 3 summarizes our results on the downstream tasks. As can be seen, when fine-tuned, our model is able to outperform our strong RoBERTa baseline in the adversarial paraphrase dataset, PAWS, suggesting that the representations induced by our Levenshtein prediction loss indeed help the model learn relevant information about edits. Moreover, we also observe that the model is able to attain such increased performance while still retaining the language understanding capabilities of its base model, as suggested by the performance on the MNLP dataset, which remains constant.表 3 Performance of our model and baseline based on RoBERTa on our selected fine-tuning tasks, where ZS stands for Zero Shot.

## 6 Conclusions and Future Work

This paper proposes a novel approach for training a general-purpose edit representation model, which is not based on auto-encoding. Concretely, we propose a predictive task based on token-level Levenshtein operations where the token-level labels encode the set of operations necessary to transform a given input sentence into an output sentence.

We find that a model initialized with RoBERTa and trained with our proposed loss, is able to outperform the baseline on the task of adversarial paraphrasing detection on PAWS, while retaining the language understanding performance of its base model. We think this evidence supports the idea that creating a neural model that implements the Levenshtein algorithm is conducive to improved downstream performance on edit-based tasks, suggesting a potential new path for the future of pre-training. For future work, we are interested in further testing our pre-trained model on more downstream tasks relevant to edits, and in combining our proposed loss with the masked language modelling task for more efficient and effective training.

## Acknowlegments

Computational resource of AI Bridging Cloud Infrastructure (ABCI) provided by National Institute of Advanced Industrial Science and Technology (AIST) was used for the experiments in this paper.

## 参考文献

[1] Anders Miltner, Sumit Gulwani, Vu Le, Alan Leung, Arjun Radhakrishna, Gustavo Soares, Ashish Tiwari, and Abhishek Udupa. On the fly synthesis of edit suggestions. Proceedings of the ACM on Programming Languages, Vol. 3, No. OOPSLA, pp. 143:1-143:29, October 2019.

[2] Pengcheng Yin, Graham Neubig, Miltiadis Allamanis, Marc Brockschmidt, and Alexander L. Gaunt. Learning to Represent Edits. In Proceedings of the 7th International Conference on Learning Representations, 2019.

[3] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. 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, Minneapolis, Minnesota, June 2019. Association for Computational Linguistics.

[4] Soumya Sarkar, Bhanu Prakash Reddy, Sandipan Sikdar, and Animesh Mukherjee. StRE: Self Attentive Edit Quality Prediction in Wikipedia. In Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics, pp. 3962-3972, Florence, Italy, July 2019. Association for Computational Linguistics.

[5] Edison Marrese-Taylor, Pablo Loyola, and Yutaka Matsuo. An Edit-centric Approach for Wikipedia Article Quality Assessment. In Proceedings of the 5th Workshop on Noisy User-generated Text (W-NUT 2019), pp. 381-386, Hong Kong, China, November 2019. Association for Computational Linguistics.

[6] L. Specia, K. Harris, A. Burchardt, M. Turchi, M. Negri, and I. Skadina. Translation Quality and Productivity: A Study on Rich Morphology Languages. pp. 55-71, 2017.

[7] António Góis and André F. T. Martins. Translator2Vec: Understanding and Representing Human Post-Editors. In Proceedings of Machine Translation Summit XVII Volume 1: Research Track, pp. 43-54, Dublin, Ireland, August 2019. European Association for Machine Translation.

[8] Christopher Bryant, Mariano Felice, Øistein E. Andersen, and Ted Briscoe. The BEA-2019 Shared Task on Grammatical Error Correction. In Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications, pp. 52-75, Florence, Italy, August 2019. Association for Computational Linguistics.
[9] Yinhan Liu, Myle Ott, Naman Goyal, Jingfei Du, Mandar Joshi, Danqi Chen, Omer Levy, Mike Lewis, Luke Zettlemoyer, and Veselin Stoyanov. RoBERTa: A Robustly Optimized BERT Pretraining Approach. arXiv:1907.11692 [cs], July 2019.

[10] Rui Zhao, David Bieber, Kevin Swersky, and Daniel Tarlow. Neural Networks for Modeling Source Code Edits. In Proceedings of the 7th International Conference on Learning Representations, 2019.

[11] Edison Marrese-Taylor, Machel Reid, and Yutaka Matsuo. Variational Inference for Learning Representations of Natural Language Edits. Proceedings of the AAAI Conference on Artificial Intelligence, Vol. 35, No. 15, pp. 13552-13560, May 2021.

[12] Machel Reid and Victor Zhong. LEWIS: Levenshtein Editing for Unsupervised Text Style Transfer. In Findings of the Association for Computational Linguistics: ACL-IJCNLP 2021, pp. 3932-3944, Online, August 2021. Association for Computational Linguistics.

[13] Nabil Hossain, Marjan Ghazvininejad, and Luke Zettlemoyer. Simple and Effective Retrieve-Edit-Rerank Text Generation. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pp. 2532-2538, Online, July 2020. Association for Computational Linguistics

[14] Manaal Faruqui, Ellie Pavlick, Ian Tenney, and Dipanjan Das. WikiAtomicEdits: A multilingual corpus of Wikipedia edits for modeling language and discourse. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing, pp. 305-315, Brussels, Belgium, October-November 2018. Association for Computational Linguistics.

[15] Yinfei Yang, Yuan Zhang, Chris Tar, and Jason Baldridge. PAWS-X: A cross-lingual adversarial dataset for paraphrase identification. In Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLPIJCNLP), pp. 3687-3692, Hong Kong, China, November 2019. Association for Computational Linguistics.

[16] Alex Wang, Amanpreet Singh, Julian Michael, Felix Hill, Omer Levy, and Samuel Bowman. GLUE: A Multi-Task Benchmark and Analysis Platform for Natural Language Understanding. In Proceedings of the 2018 EMNLP Workshop BlackboxNLP: Analyzing and Interpreting Neural Networks for NLP, pp. 353-355, Brussels, Belgium, November 2018. Association for Computational Linguistics.

[17] Myle Ott, Sergey Edunov, Alexei Baevski, Angela Fan, Sam Gross, Nathan Ng, David Grangier, and Michael Auli. Fairseq: A Fast, Extensible Toolkit for Sequence Modeling. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics (Demonstrations), pp. 48-53, Minneapolis, Minnesota, June 2019. Association for Computational Linguistics.


# ByT5 の Attention を用いたトークン結合

田中康紀 須藤克仁 中村哲
奈良先端科学技術大学院大学
\{tanaka.koki.tk9, sudoh, s-nakamura\}@is.naist.jp

## 概要

ニューラルネットを用いた自然言語処理では，事前学習済みモデルを fine-tuning することでタスクを 高精度に解ける. 自然言語の入力は多くのモデルに おいて単語やサブワード等トークンへの分割を前提 としている.この手法は誤分割や, 語彙の修正後に モデルの再学習が必要な欠点を持つ. これらは文字 レベルのトークン分割により緩和できるが, 長系列化と, トークンと意味の不一致を起こす. 本研究で は，バイトレベルに分割するモデル ByT5 を文字レ ベル分割とみなし, Attentionを元にトークンを結合 し，両者の解決を試みた。テキスト分類実験におい てランダムに結合する手法に比べ 1.8 ポイントの分類精度向上, ByT5 に比べ 1.78 倍の高速化を示した.

## 1 はじめに

ニューラルネットを用いた自然言語処理では，事前学習済みモデルを用いて下流タスクに fine-tuning させることで，生成タスクや分類タスクを高精度に 解くことができる. 現在ある多くのモデルは入力文字列を単語やサブワード等のトークンに分割する トークン化を行う手法が主流となっている. しか し，トークン化は語彙に無いトークンに対する過剩分割や，未知語に起因する精度低下，トークナイザ を更新するとモデルの再学習が必要であり技術的負債を生むという欠点を持つ. 文字列を全て文字に分解する文字レベルトークン化を用いると，これらの 問題を緩和できる。一方で，文字レベルトークン化 は文字トークンと意味が対応しない，シーケンス長 も単語やサブワードを用いた場合と比べて長くなる 問題が起こる. 本研究では，バイトレベルにトーク ン化する ByT5 のトークンを，英語データセットに 対して文字レベル分割とみなし, Attention 情報を利用しモデル内部でトークン結合を行う方法を提案す る.これにより, 処理速度の向上と意味のまとまり を持ったトークンの保持による精度の向上を目指
す. 英語のテキスト分類タスクでランダムに結合す る手法と比べ分類精度の向上, ByT5 と比べ単位時間あたりの処理数の向上を実験により確認した.

## 2 関連研究

Sutskever ら [1] はニューラルネットを用いた翻訳 で，文字レベル入力を導入した. Peter ら [2] は文字 レベルの入力を結合する $\mathrm{CNN}$ 層を導入したモデル を提案した. Radford ら [3] は，入力文字列をトーク ン化する際に，語彙にバイトレベルの文字を含めて 細分化するバイトレベル Byte Pair Encoding を導入 することでことで未知語を極めて少なくした．明示的にトークナイザを用いない Transformer ベースの アーキテクチャとして charfomer [4], CANINE [5], characterBERT [6] がある。これらは入力を文字レべ ルにし, 語彙用の層を事前学習で獲得する手法であ る. ByT5 [7] では，基本構成は $\mathrm{T} 5$ [8] と変えず，そ の層数を変えることで，語彙用の特別な層を持たず して，サブワードレベルのモデルである mT5 [9] と 一部タスクで近い性能を出すことを示した。一方 で，文字レベルのモデルとサブワードレベルのモデ ルが同程度の性能を達成した際の各々の獲得した隠 れ層や，位置埋め込み， Attention 行列の具体的な差異に関しては議論がまだ活発ではない。

Transformer モデルの長文入力への対応方法とし て, Zaheer ら [10] は, Attention を疎な行列計算とみ なし, 計算量を減らした. Kitaev ら [11] は近傍の トークンに注目することで Attention の計算量をシー ケンス長 $L$ に対して $O\left(L^{2}\right)$ から $O(L \log L)$ に削減し た. Beltagy ら [12] は複数サイズのウィンドウによ り Attention の見る位置を絞ることで，長文であっ ても Attention の計算量を減らすことを可能にした。 Goyal ら [13] は, BERT [14] の Attention が強いもの のみを抽出することで，トークンを削除し，処理 の高速化を実現した. ByT5 は計算量の削減をシー ケンス長を減らすのではなく, Deocderを浅くする ことで実現している. 本研究では, ByT5に対して，
語彙に依存しない点を残したまま，シーケンス長の 削減を導入する。

## 3 提案手法

本研究ではバイトレベルにトークン化するモデル である ByT5 のトークンをモデル内部で Attention に 基づいて結合する手法を提案する。提案手法の概要 を図 1 に示す. 英語のみ扱うタスクへ fine-tuning す ることから，ByT5 が取り扱う UTF-8 形式では，概 ね 1 文字 1 バイトに対応すると仮定できる.

長さ $L$ の文字列 $\boldsymbol{c}=\left(c_{1}, \ldots, c_{i}, \ldots, c_{L}\right)$ が与えられ，各 $c$ に対応する隠れ層出力を $\boldsymbol{v}$ とすると，以下のよ うな処理により新たなべクトル $v^{\prime} を$ 得る。

はじめに，局所的な Attention 情報を利用したい ことから，浅い層である Encoder ブロック 2 層目の Attention 行列を参照し, Head 方向へ平均をとる.

$
\bar{A}=\frac{1}{H} \sum_{h}^{H} A_{h}
$

次に, Attention 行列を query 方向へ平均をとり, これを Significance Score とする.

$
\operatorname{Sig}(c)=\frac{1}{L} \sum_{l}^{L} \bar{A}\left[c_{l}, c\right]
$

続いて，各文字ごとの Significance Score を並べ， その中から上位 $\mathrm{k}$ 個を抽出し， $\boldsymbol{c}^{\prime}$ とする.

$
\begin{aligned}
& \operatorname{Sig}(\boldsymbol{c})=\left(\operatorname{Sig}\left(c_{1}\right), \ldots, \operatorname{Sig}\left(c_{L}\right)\right) \\
& \boldsymbol{c}^{\prime}=\operatorname{topk}(\operatorname{Sig}(\boldsymbol{c}))=\left(c_{1}^{\prime}, \ldots, c_{k}^{\prime}\right)
\end{aligned}
$

$c_{i}^{\prime}$ から $c_{i+1}^{\prime}$ の一つ前までの $c$ に対応する文字列を segment と呼び， $s_{i}$ とおく. 各 $s_{i}$ の含む文字 $c$ に対応する隠れ層出力の平均をとり，新たに $\boldsymbol{v}_{i}$ とする。

$
v_{i}^{\prime}=\frac{1}{\left|s_{i}\right|} \sum_{c \in s_{i}} v_{c}
$

先頭文字トークン $c_{1}$ が上位 $\mathrm{k}$ 個に選択されな かった場合， $c_{1}$ から $c_{1}^{\prime}$ の前までの $c$ に対応する文字列を $s_{0}$ とし，その文字に対応するべクトルの平均を先頭に追加する。

$
v_{0}^{\prime}=\frac{1}{\left|s_{0}\right|} \sum_{c \in s_{0}} v_{c}
$

また，終端トークン</s> は special token であるこ とから，常に一つのトークンとして扱う．よって上

query方向に平均をとる(式(1))

$\mathbf{v}_{\text {Kubernetes }}^{\prime}=\frac{1}{\left|s_{1}\right|}\left(\mathbf{v}_{\mathrm{K}}+\mathbf{v}_{\mathrm{u}}+\mathbf{v}_{\mathrm{b}}+\cdots+\mathbf{v}_{\mathrm{t}}+\mathbf{v}_{\mathrm{e}}+\mathbf{v}_{\mathrm{s}}\right)$

各segmentに対して同様の操作を行う

$\begin{array}{lllll}\mathbf{v}_{\text {Kubernetes }}^{\prime} & \mathbf{v}_{\text {is }}^{\prime} & \mathbf{v}_{\text {abberviated }}^{\prime} & \mathbf{v}_{\text {as }}^{\prime} & \mathbf{v}_{\text {k8s. }}^{\prime} . \\ \text {. }\end{array}$

図 1 文字トークン結合の流れ

位 $\mathrm{k}$ 個に選択されなかった場合，以下のようにべク トルを追加する。

$
\boldsymbol{v}_{k+1}^{\prime}=\boldsymbol{v}_{</ \mathrm{s}>}
$

以上の操作で得られたべクトル $\boldsymbol{v}^{\prime}$ E Encoder ブ ロックの 3 層目に入力し, 以降の層へ伝播させる. パラメータは事前学習済みモデルから再利用し，下流タスクへ fine-tuningする。

## 4 実験

ByT5 の Attention 情報を利用したモデル内部での 文字トークン結合が，トークンの意味の獲得による 精度の向上と速度の改善に効果があるかを実験によ り検証した。提案手法は，"e"と"ee"といった連続文字列を式 (4) で平均化後に再度生成することは難し いことから，分類タスクで実験を行った。

## 4.1 実験タスク

英語のテキスト分類タスクとして SST-2 [15]を用 いた.これはテキストに含まれる感情を 2 値分類す るタスクである．実験はランダムに $k$ 個のトークン を指定して結合する手法をべースラインとし，強い Attention を先頭に結合する提案手法に意味があるの

かを調べた. 加えて, 空白で区切って結合する単語 レベルトークン化, Goyal ら [13] の手法に基づいて 実装した Attention の強いトークンのみを抽出する手法，ByT5の fine-tuning により実験した．ByT5では，全ての Encoder 層で文字トークンに対して同じ相対位置埋め込みのパラメータを共有している。一方提案手法では, 文字レベルの位置情報と, 結合後の トークン位置情報が異なると考えられることから， トークン獲得後の層である 3 層目以降の Attention で 1 層目とは異なる位置埋め込みのパラメータを用い た. なお，予備実験でこれらの手法で大きな差は確認できなかったため，その比較は省略する。

いずれの実験も、バッチサイズ 12, 学習率 4e-5 で 40 エポック学習させたのちに、validation データに 対して最も accurary が高いものを用いて、test デー タで accuracyを算出した. シーケンス長は、 $\mathrm{mT5}$ が ByT5 の平均トークン長の $1 / 4.1$ 倍であることから、 それよりも平均で短くなる $1 / 5$ 倍の長さになるよ うに式 (3) の $k$ を設定した. 実験は異なるランダム シードで 5 回行い，その平均により算出した.

処理速度は，testデータの単位時間あたりのイテ レーション数を比較した. 実験は CPU AMD EPYC 7742 64-Core, メモリ 1TB, GPU NVIDIA A100-SXM $40 \mathrm{~GB}$ ，バッチサイズ 12 で行った. なお，提案手法 は文字トークンの結合処理を CPU 上で行うことか ら，処理速度は GPU 以外の条件にも依存する。

## 4.2 実験結果

表 1 は，文字トークンの選択手法を変更した際の 実験結果である. 提案手法はベースラインであるラ ンダムに文字トークンを選択し結合した場合に比 ベ， 1.8 ポイント高い結果となった. また, Attention の強いトークンを抽出する手法に比べ， 3.2 ポイン ト高く, 空白で区切る単語レベルトークン化を行 う場合よりも 0.8 ポイント高くなった. 提案手法は ByT5-base と比較して 6\%ほど精度を落とすが，表 2 に示すように，単位時間あたり 1.78 倍のイテレー ションを実行する事が可能になった。

5 回の実験結果における混同行列の平均を表 4 に 示す. 学習データには Positive/Negative いずれも同数含まれている. ByT5-base では若干 Positive 判定 が大きかったが，提案手法では Positive と Negative いずれもほぼ同数の判定となった.表 1 SST-2 における $\operatorname{accuracy}(\%)$

ランダムに選択し結合 (ベースライン) 83.5

Attention から選択し結合 (提案手法) 85.3

空白を選択し結合

84.5

Attention から選択し抽出

82.1

ByT5-base

90.6

表 2 各モデルの処理速度の比較

## 5 考察

## 5.1 トークンの獲得

表 1 より，ランダムに文字トークンを結合する 手法と比較して, Attention の上位 $\mathrm{k}$ 個を用いて文字 トークンを結合する方法は accuracy が 1.8 ポイント 高い.これより Attentionのまとまりは，意味のまと まりを示す情報を持っていると考えられる。

また，表 1 より提案手法は accuracy では ByT5 に 及ばなかった. Transformerアーキテクチャは, 全体 から自身のべクトルを再構成しているため，周りの 文字トークンの結合による意味を持ったトークン 獲得は, Attention の計算で既に行われていたと考え られる. accuracy が ByT5 より下回った原因として，提案手法は式 (4) で文字トークンを平均化している ことから，分類タスクを選択したが，本手法は分類 タスクでも必要な情報が消えたと考えられる．表 3 は，結合する層を変更した際の実験結果である。よ り上位の層で結合するほど, accuracy は高い結果と なっており, 処理速度と精度はトレードオフの関係 にある。提案手法は低い層で結合したことから，事前学習と大きく異なる情報を結合以降の層に伝えた ことも精度低下の原因であると考えられる．より事前学習を再利用できるトークンの結合方法が存在す れば，この低下は緩和できると考えられる。

図 1 中のスペース区切りの実験結果と比較して,提案手法の方が精度が高い. ニューラルネットによ る自然言語処理では，単語モデルよりサブワード モデルの方がタスクを解くのに適していることは， Sennrich ら [16] や Kudo ら [17] も示しており, 本実験結果もニューラルネットワークで分類タスクを解
表 3 異なる層で結合した実験結果

2 層目 (提案手法) 85.2

6 層目 87.1

12 層目

89.6

表 45 回の実験における混同行列の平均 (a)ByT5

(b) 提案手法

Predicted

Predicted

く際には，必ずしも単語レベルのトークン化が適し ているわけではなく，単語とは異なるより適した最小単位が存在することを示しているとわかる.

## 5.2 トークンの文字列としての意味

validation データに対するトークン化の例を表 5 に 示す. 入力のプレフィックスである, "sst2 sentence:" がいずれのパターンも先頭トークンとして文字列に 結合されていることがわかる。これは， fine-tuning の際に全てのタスクに付属していることから，細分化の必要がないと学習したため獲得できたと考え られる。表 5 の 1 例目で” affecting”という単語が確認できるように，一部は単語としての意味を持った トークンの結合ができている。 一方で，サブワード にトークン化する際，一般的に 1 つのトークンとさ れる"and"や"ing"のような，複数文で共通の部分文字列が結合されている様子は確認できない. 本研究 では fine-tuning では，2 值分類タスクを行ったため， スペースを区切りとした簡易的な結合は獲得できた ものの，サブワードのように，共通部分の結合を獲得するにはタスクが簡素であったと考えられる。

## 5.3 Attention 行列の差異

表 2 は, validation データのうちの一つである, "sst2 sentence: i had to look away - this was god awful ."を ByT5-base と提案手法の両者に入力した画像である. それぞれ，2，3，12 層目の Attention 行列をそれぞ れ Head 方向に平均をとった. 提案手法の Attention 行列は，ByT5-base と同様に，Encoder 最終層では query 方向の強い値が連続していることが見てとれ る. 従って，文字トークン結合後も，各トークンに 対して Attention が機能していると考えられる。一方 で，ByT5 の Attention 行列の対角成分は，残差ネッ表 5 validation データに対する結合例

入力文

sst 2 sentence: it 's a charming and often affecting

journey .

結合結果

sst2_sentence:_it's_ / a_ / cha / r / ming_and_o / fte / n_ / affecting_ / jo / urne / y_ / . / <s>

入力文

sst2 sentence: unflinchingly bleak and desperate 結合結果

sst2_sentence:_ / unf / linc / hingly_ble / a / k_and_ /

/ des / pe / r / ate / <s>

トワークにより，自身を再構成が容易なことから，小さい值となっているが，提案手法である結合後の Attention 対角成分にそのような様子は見られない. これは，トークンの結合を残差ネットワークの後に 設定したため学習されなかったと考えられる.

図 2 Attention 行列の様子

## 6 おわりに

本研究では，バイトレベルにトークン化するモデ ルである ByT5 に，語彙に依存しない利点を維持し たままシーケンス長を削減する手法を提案した. テ キスト分類実験において，ランダムに文字トークン を選択し結合する手法と比較して精度の向上を確認 し，ByT5-base と比較して精度の下落を小さく抑え，処理速度の向上を確認できた。表現能力の担保を調 べるためには，今後生成タスクでも検証する必要が ある．文字トークン結合時に情報を脱落させないた めには，文字レベルのトークンがサブワードトーク ンと比較して，具体的にどのような情報を保持して いるかを解明し，それらを維持したまま事前学習済 みの層へ伝播させる方法の研究が必要である.

## 7 謝辞

本研究の一部は科研費 $21 \mathrm{H} 03500$ と $21 \mathrm{H} 05054$ の 助成を受けたものである.

## 参考文献

[1] Ilya Sutskever, James Martens, and Geoffrey Hinton. Generating text with recurrent neural networks. In Proceedings of the 28th International Conference on International Conference on Machine Learning, ICML'11, p. 1017-1024, Madison, WI, USA, 2011. Omnipress.

[2] Matthew E. Peters, Mark Neumann, Mohit Iyyer, Matt Gardner, Christopher Clark, Kenton Lee, and Luke Zettlemoyer. 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, New Orleans, Louisiana, June 2018. Association for Computational Linguistics.

[3] Alec Radford, Jeff Wu, Rewon Child, David Luan, Dario Amodei, and Ilya Sutskever. Language models are unsupervised multitask learners. 2019.

[4] Yi Tay, Vinh Q. Tran, Sebastian Ruder, Jai Gupta, Hyung Won Chung, Dara Bahri, Zhen Qin, Simon Baumgartner, Cong Yu, and Donald Metzler. Charformer: Fast character transformers via gradient-based subword tokenization, 2021.

[5] Jonathan H. Clark, Dan Garrette, Iulia Turc, and John Wieting. Canine: Pre-training an efficient tokenization-free encoder for language representation. Transactions of the Association for Computational Linguistics, Vol. 10, pp. 73-91, 2022.

[6] Hicham El Boukkouri, Olivier Ferret, Thomas Lavergne, Hiroshi Noji, Pierre Zweigenbaum, and Jun'ichi Tsujii. CharacterBERT: Reconciling ELMo and BERT for wordlevel open-vocabulary representations from characters. In Proceedings of the 28th International Conference on Computational Linguistics, pp. 6903-6915, Barcelona, Spain (Online), December 2020. International Committee on Computational Linguistics.

[7] Linting Xue, Aditya Barua, Noah Constant, Rami Al-Rfou, Sharan Narang, Mihir Kale, Adam Roberts, and Colin Raffel. ByT5: Towards a Token-Free future with pre-trained Byte-to-Byte models. Transactions of the Association for Computational Linguistics, Vol. 10, pp. 291-306, 2022.

[8] 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.

[9] Linting Xue, Noah Constant, Adam Roberts, Mihir Kale, Rami Al-Rfou, Aditya Siddhant, Aditya Barua, and Colin Raffel. mT5: A massively multilingual pre-trained textto-text transformer. In Proceedings of the 2021 Con- ference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pp. 483-498, Online, June 2021. Association for Computational Linguistics.

[10] Manzil Zaheer, Guru Guruganesh, Kumar Avinava Dubey, Joshua Ainslie, Chris Alberti, Santiago Ontanon, Philip Pham, Anirudh Ravula, Qifan Wang, Li Yang, et al. Big bird: Transformers for longer sequences. Advances in Neural Information Processing Systems, Vol. 33, , 2020.

[11] Nikita Kitaev, Lukasz Kaiser, and Anselm Levskaya. Reformer: The efficient transformer. January 2020.

[12] Iz Beltagy, Matthew E Peters, and Arman Cohan. Longformer: The Long-Document transformer. April 2020.

[13] Saurabh Goyal, Anamitra R Choudhury, Saurabh Raje, Venkatesan T Chakaravarthy, Yogish Sabharwal, and Ashish Verma. PoWER-BERT: Accelerating BERT inference via progressive word-vector elimination. In International Conference on Machine Learning. International Machine Learning Society (IMLS), February 2021.

[14] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. 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, Minneapolis, Minnesota, June 2019. Association for Computational Linguistics.

[15] Richard Socher, Alex Perelygin, Jean Y Wu, Jason Chuang, Christopher D Manning, Andrew Y Ng, and Christopher Potts. Recursive deep models for semantic compositionality over a sentiment treebank. https://nlp.stanford. edu/ socherr/EMNLP2013_RNTN. pdf. Accessed: 202212-12.

[16] Rico Sennrich, Barry Haddow, and Alexandra Birch. 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, August 2016. Association for Computational Linguistics.

[17] Taku Kudo and John Richardson. SentencePiece: A simple and language independent subword tokenizer and detokenizer for neural text processing. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing: System Demonstrations, pp. 66-71, Brussels, Belgium, November 2018. Association for Computational Linguistics.


# SentencePiece の重複語入れ替えによる 日本語 T5 への言語モデル追加

高野 志歩 1 相馬 菜生 ${ }^{2}$ 田村 みゆ ${ }^{1}$ 梶浦 照乃 ${ }^{1}$ 倉光 君郎 ${ }^{2}$
1 日本女子大学大学院 理学研究科 2 日本女子大学 理学部
m1816053ts@ug.jwu.ac.jp kuramitsuk@fc.jwu.ac.jp

## 概要

SentencePiece は、テキストから教師なし学習に よって語彙モデルを構築し、ニューラルネット ワークに適した字句解析を提供する。現在の多 くの大規模言語モデルの事前学習で採用され、 SentencePiece は標準のひとつとなっている。本研究 では、SentencePiece の語彙モデルから形態素に基づ いて重複語を抽出し、新しい語彙と入れ替えること による語彙の追加手法を提案する。これにより、大規模言語モデルに対して、数千語単位の語彙を追加 する余地ができ、事前に学習されていない言語やド メインの語彙を含めた追加学習が可能になる。本論文では、2つの日本語 $\mathrm{T} 5$ に対し、6000 語程度の Python 言語の語彙 (予約語/識別子)を追加した事前追加学習モデルを構築し、重複語入れ替えによる下流タスクの精度向上について論じる。

## 1 はじめに

大規模言語モデルは、事前に大量なテキストを学習することにより、機械翻訳や文書要約、感情分析 など様々な下流タスクに適用できるモデルである。近年は、基盤モデルとも呼ばれ、自然言語処理タス クのみならず、様々な分野のニューラルネットワー クに広く採用されている。

大規模言語モデルを下流タスクに適応させる際に は、適応させたい下流タスクの少量のデータをモデ ルに与える。しかし、事前学習時に用いたデータの ドメインと、下流タスクのドメインが大きく異なる とき、下流タスクにおいてモデルが十分な性能を発揮できない領域適応に課題がある。そこで、特定の ドメインに特化した語彙を追加することにより、特定ドメインにおける下流タスクの精度が向上すると 期待される。

しかし、大規模言語モデルは一般的に語彙数が固定である。そのため、語彙を追加するためには工夫 が必要となる。

本研究では、大規模言語モデルの語彙を構築する とき、標準的に採用されている SentencePiece[1] に 着目する。SentencePiece は、テキストから教師なし 学習によって語彙モデルを構築し、構築された語彙 が語彙数を減らし、学習時間を短縮する効果が知ら れている。一方、SentencePiece の語彙は、文字列の 出現頻度に基づいて字句の区切りが決まるため、形態素的に重複した語彙が含まれる。我々は、このよ うな重複語を新しい語彙と入れ替えることによる語彙の追加手法を提案する。

本論文では、提案手法を検証するため、SentencePiece の語彙モデルを採用した日本語 T5 に対し、 3000 語程度の Python 言語の語彙 (予約語/識別子)を 追加した。Python 言語の語彙は、日本語 T5には含 まれないため、このような語彙追加が可能になる。 さらに、重複語の語彙入れ替えの下流タスクへの影響を調べるため、コード翻訳、コード要約という 2 種類の下流タスクの精度を比較した。

本論文では、大規模言語モデルにおける語彙の追加手法を提案し、実験結果とともに報告する。本論文の残りの構成は以下の通りである。2 節では、本研究で着目した重複語の予備調査について述べる。 3 節では、提案する語彙の追加手法についてまとめ る。4節では、実験についてまとめる。5 節では、関連研究を概観し、6 節で本論文をまとめる。

## 2 SentencePiece と重複語

SentencePiece は、ニューラル言語処理向けのトー クナイザである。本節では、SentencePiece について 概説したのち、本研究で着目した SentencePiece の作成する語彙モデルに対し、どの程度重複語が含まれ ているか確認した予備調査の結果を述べる。

## 2.1 SentencePiece とは

SentencePiece は、言語モデルの学習データである 生のテキストから最適な分割点を学習する教師なし 単語分割システムである。 $\mathrm{MeCab}^{1)}$ や janome ${ }^{2)}$ のよ うな形態素に分割するトークナイザと異なり、サブ ワードを用いて分割を行う点が特徴的である。

サブワードは、その語が出現する頻度によって単語を分割する手法である。高頻度の単語は 1 単語と して扱われ、低頻度の単語はより短い文字や文字列 に分割される。日本語や中国語のように分かち書き をしない言語では、 1 文を 1 単語として学習が行わ れる。

## 2.2 重複語とは

SentencePiece では、出現頻度によって語彙が決ま るため、言語文法の語彙とは切れ目が異なることが 生じる。例えば、「日本語は」「日本語」「は」の 3 語 が語彙モデルに存在するとき、名詞の「日本語」と 助詞の「は」から構成される「日本語は」が重複し た存在だと捉えることができる。

このように、ある語を形態素に基づいて分割した とき、形態素が既に語彙モデルの中に存在し、重複 して存在すると捉えられる場合には、ある語を重複語と考える。

## 2.3 重複語の調査

我々は予備調査として、3つの大規模言語モデル における各語彙モデルの作成した語彙を分析した。調査したモデルは、mT5[2]と、2つの日本語 T5 で ある。まず、Google 社が公開する mT5 は、マルチ タスクモデル T5 がベースであり、日本語と英語を 含む 101 言語に対応する。次に、日本語 T5 の 1 つ は、Megagon Labs 社が公開する t5-base-japanese-web 3）（以下、日本語 $\mathrm{T} 5(\mathrm{Meg})$ ）である。日本語の Web テキストで事前学習された T5 モデルであり、日本語の語彙に特化している。最後に、日本語 $\mathrm{T} 5$ の 2 つ目は、園部勲氏が公開する t5-base-japanese-adapt 4) (以下、日本語 $\mathrm{T} 5(\mathrm{Sno})$ ) である。複数パターンから見た各モデルにおける語彙数

表 13 3つのモデルにおける各パターンの語彙数

 &  \\

漢字を含む & 21,485 & 21,587 & 20,007 \\
ひらがなを含む & 6,443 & 10,549 & 9,718 \\
カタカナを含む & 2,843 & 5,223 & 5,293 \\
数字を含む & 16,473 & 829 & 465 \\
記号を含む & 10,679 & 559 & 635 \\

図 1 記号として判定する字句

の違いを表 1 に示す。漢字を含む語、ひらがなを含 む語、カタカナを含む語の 3 パターンを日本語語彙 とし結果に着目すると、101 言語に対応するマルチ リンガルなモデルである mT5 よりも、2つの日本語 T5 のほうが多い語彙を持つことがわかる。また、日本語語彙以外の重複語として数字を含む語、記号 を含む語の各語彙数を確認した。このとき記号を含 む語には、図 1 に示すような約 70 種類の記号が該当する。例として、 $\mathrm{mT5}$ に含まれる日本語語彙と、数字を含む語、記号を含む語を表 2 に示す。

さらに、各語彙モデルの日本語語彙に対し、形態素解析器 janomeを用いた品詞パターンの分析を 行った。品詞パターンとは、その語を構成する品詞 の組み合わせを指し、1つの品詞から成る語と、2 つ以上の品詞から成る語の大きく 2 種類に分けられ る。このとき、1つの品詞パターンに含まれるのは、名詞や動詞といった基盤 10 個の品詞とフィラーを 含めた 11 個の品詞である。

本研究のアイディアは、予備調査の結果から考え られる重複語を削除し、代わりに別の語彙を追加す ることである。

## 3 重複語と語彙入れ替え

我々は、SentecePiece の作成した語彙モデルに含 まれる重複語を取り除いて、別の言語の語彙を追加 する。本節は、Python 語彙（予約語/識別子）などを 実例として述べるが、Python 語彙の依存する部分は

図 22 つ以上の品詞パターンのうち、重複語であって も語彙モデルに残す品詞パターン

ないため、置き換え対象の語彙は別言語の語彙に置 き換えて適用可能である。

## 3.1 重複語の判定

2.3 節の予備調査の結果をもとに、品詞パターン による重複語の判定を行った。本研究では、全て の重複語を削除するのではなく、品詞の構成から決定した語彙モデルに残す品詞パターン以外の重複語のみを削除する。

語彙モデルに残す品詞パターンは、計 23 個であ る。1つの品詞パターンに含まれるのは、名詞や動詞といった基盤 10 個の品詞とフィラーを含めた 11 個の品詞と、図 2 に示す 12 パターンである。 23 個 の品詞パターンに該当しない語のうち、形態素的に 重複した語彙が含まれるとき、該当の語を無意味な 文字列に置き換えた。

## 3.2 数字や記号の重複除去

SentencePiece の作成する語彙モデルには、2.3 節 の表 1 に示した通り、数字や記号を含む語彙が多く 含まれている。

我々は、日本語語彙の重複語とは別に数値や記号 の重複も取り除いた。例えば、数字は全て 1 文字を 字句の単位として、2021のような字句は、2021と いうように4つの字句からみなすようにした。記号も 1文字も字句の単位とした。

なお、数字の扱いに関しては、議論の余地がある が、最新の大規模言語モデル PaLM [3] の語彙構成 に準じている。

## 3.3 Python 語彙の追加

最後に、語彙モデルへの語彙追加について簡単に 述べる。

追加する語彙は、原理的には、ドメイン特化辞書 などの任意の語彙を追加することができる。ただ し、SentencePiece の語彙モデルは、出現頻度を持っ ているので、出現頻度に関する情報を持っているこ
とが望ましい。

我々は、Python 言語の語彙（予約語識別子）の 追加を行う際は、Pythonソースコードに対し、 SentencePiece を使って語彙モデルを構築し、そこか ら追加する語彙を選定した。追加の先語彙モデルと 新しい語彙の間では出現頻度の調整は行わず、それ ぞれの語彙が独立して出現すると仮定して、それぞ れの出現頻度順序だけが保証されるように追加を 行った。

## 4 実験

## 4.1 概要

我々は、重複語入れ替え手法の影響と効果を確か めるため、次の手順で実験を行う。

まず、異なる種類の SentencePiece の語彙モデルか ら構築された事前学習済み言語モデルを用意して ベースラインとする。用意した言語モデルは、以下 の通りである。

・Sno: 園部勲氏が公開する日本語 T5 モデル
- Meg: Megagon Lab 社が公開する日本語 T5 モ デル

・mT5: Google 社が公開する多言語 T5 モデル [2](small)

これらのモデルから前節で述べた手法で重複語 のみを削除したモデルを作る。続いて、重複語を削除して、その代わりにドメイン語彙を追加したモデ ルを作る。本実験では、前節で述べた通り、Python 語彙をドメイン語彙として追加した。最後に、下流 タスクのドメインに合わせた追加学習 [4] を行った モデルも用意した。追加学習で学習させたデータ は、CodeSearchNet などの公開データセットから収集した Python コード (1GB) である。学習時のハイ パーパラメータは、学習時のハイパーパラメータ は、ピーク学習率 3e-4、エポック数を 5 回とした。

以上、我々の用意したモデルは次の 4 モデルと なる。

・ベースライン
- 重複語削除

・ドメイン語彙追加

・ドメイン追加学習
表 3 各タスクごとの実験結果

## 4.2 下流タスクへの影響

我々は、下流タスクとして、Python コードのコー ド生成、コード修正、エラー診断を用意した。

・コード生成: プログラム意図を表す自然言語文 を入力として受け取り、対応するコードを生成 するタスク [5] である。

・コード修正: バグのあるコードを入力とし て、出力に正常なコードを生成するタスク [6] である。入出力はともにコードである。

・エラー診断: 英文のエラーメッセージとソース コードから日本語のエラー解決策 [7] を提示す るタスクである。

これらのタスクを用意したモデルにおいて、学習 させた結果を表 3 に示す。

## 5 関連研究

近年、Transformerをベースとした事前学習済みモ デルが数多く提案され，転移学習やファインチュー ニングによって下流タスクに応用したときに優れた 精度の向上を見せている。事前学習済みモデルは、大規模データセットを用いて事前学習され、下流タ スクを定めず汎用的なモデルとして構築されること が多い。しかし、下流タスクのドメインが事前学習 に用いたデータのドメインと大きく異なる場合、下流タスクでモデルが十分な性能を発揮できない領域適応の問題がある。

事前学習に用いるデータセットをドメインデータ に絞った、専門領域に特化した言語モデルが提案さ れ、汎用モデルと比較した時により高い精度でドメ
インタスクが解けることが確認された [8]。

Gururangan ら [9] は、事前学習済みモデルを特定 ドメインに適応させるために、下流タスクドメイン のデータで追加学習することで高い精度でドメイン タスクを解くDAPT 手法を提案している。ここで、事前学習済みモデルが保持する語彙の中に、専門用語などドメインの語彙が含まれないため、語彙を 拡張する必要がある。Yao ら [10] は、語彙を拡張し ながらドメイン特化モデルを構築する手法として Adapt-and-Distill 手法を提案している。

## 6 むすびに

本研究は、大規模言語モデルの語彙に含まれる重複語を新しい語彙と入れ替えることによる語彙の 追加を提案する。提案手法を検証するため、複数の モデルに対して (1) 不要語除去 (2) 不要語を Python 語彙に入れ替え (3)Python 語彙に入れ替え+追加学習 と、3つの条件を変えて比較による評価をおこなっ た。モデルに Python 語彙を追加することで、入出力 で Pythonを用いるコードタスクで精度が上がるの ではないかと考えていたが、実験結果として語彙の 追加による精度向上は見られなかった。

## 謝辞

本研究を進めるにあたり，有意義なコメントをい ただきました秋信有花氏 (NTT) と小原百々雅氏 (日本女子大学) と佐藤美唯氏 (日本女子大学) と高橋舞衣氏 (日本女子大学)に感謝いたします.

## 参考文献

[1] Taku Kudo and John Richardson. SentencePiece: A simple and language independent subword tokenizer and detokenizer for neural text processing. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing: System Demonstrations, pages 66-71, Brussels, Belgium, November 2018. Association for Computational Linguistics.

[2] Linting Xue, Noah Constant, Adam Roberts, Mihir Kale, Rami Al-Rfou, Aditya Siddhant, Aditya Barua, and Colin Raffel. mT5: A massively multilingual pre-trained textto-text transformer. In Proceedings of the 2021 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pages 483-498, Online, June 2021. Association for Computational Linguistics.

[3] Aakanksha Chowdhery et. al. Palm: Scaling language modeling with pathways. CoRR, abs/2204.02311, 2022.

[4] 梶浦照乃, 小原百々雅, 秋信有花, and 倉光君郎. 多言語 5 への追加事前学習による python 言語モデルの構築. In The 6th cross-disciplinary Workshop on Computing Systems, Infrastructures, and Programming (xSIG2022), 2022.

[5] Momoka Obara, Yuka Akinobu, Teruno Kajiura, Shiho Takano, and Kimio Kuramitsu. A preliminary report on novice programming with natural language translation. In IFIP WCCE 2022: World Conference on Computers in Education, 2022.

[6] 相馬 菜生, 梶浦照乃, 高橋 舞衣, and 倉光 君郎. 大規模言語モデルへの事前追加学習による誤り訂正モデ ルのコードへの適用. In 第 21 回日本データベース 学会年次大会 (DEIM2023), 2023.

[7] 高橋 舞衣, 小原 百々雅, 相馬 菜生, and 倉光 君郎. 大規模言語モデルを応用した初学者に親切なエラー メッセージの実現. In 第 21 回日本データベース学会年次大会（DEIM2023), 2023.

[8] Jinhyuk Lee, Wonjin Yoon, Sungdong Kim, Donghyeon Kim, Sunkyu Kim, Chan Ho So, and Jaewoo Kang. Biobert: a pre-trained biomedical language representation model for biomedical text mining. Bioinformatics, 36(4):1234-1240, 2020.

[9] Suchin Gururangan, Ana Marasović, Swabha Swayamdipta, Kyle Lo, Iz Beltagy, Doug Downey, and Noah A. Smith. Don't stop pretraining: Adapt language models to domains and tasks. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pages 8342-8360, Online, July 2020. Association for Computational Linguistics.

[10] Yunzhi Yao, Shaohan Huang, Wenhui Wang, Li Dong, and
Furu Wei. Adapt-and-distill: Developing small, fast and effective pretrained language models for domains. arXiv preprint arXiv:2106.13474, 2021.