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

WikiText-JA 構築による BERT 事前学習の効率化
小川 晃 1,a)

友利 涼 1,a)

1. はじめに亀甲 博貴 2,b)

森 信介 2,b)を調査する。実際に作成した BERT によって、テキスト自然言語処理における様々なタスクにおいて、必要とな内における固有な表現を抽出するタスクである固有表現るデータセットの整備は容易ではない。例えば感情分析を認識（Named Entity Recognition; NER）を 2 種類のドメ行う際には、テキストごとに「肯定的」「否定的」といっイン（ゲーム解説、レシピ）に対して実施したところ、日たラベルが付与されたデータセットが必要となるが、その本語版 Wikipedia から無作為に抽出した記事で構成されデータセットは作成に多大なコストを要するため、用意がたデータセット、および日本語版 Wikipedia 全記事で新た難しいのが現状である。そうした問題を解決するために、に構築した BERT に基づく NER の精度と同等以上の性能

自然言語処理では入手が容易なラベル未付与のテキストを示す結果となった。

を生コーパスとして活用する方法が研究されている。具体的には、Wikipedia や SNS といったデータに含まれる知識を事前学習することで、データセットの不足を補うといっ た ア プ ロ ー チ で あ る 。 Bidirectional Encoder

2. 関連研究
2-1.

BERT

BERT は Transformer [5]をベースにしたモデルである。

Representations from Transformers (BERT) [1]はこうしTransformer は self-attention のみを利用したモデルであた事前学習の一つであり、自然言語処理の多くのタスクにり、長距離の依存関係を捉えることができるという特質をおいて精度向上に大きく寄与することが報告されている。

有する。この技術に基づく BERT は 2 つのステップ、具

一方で、BERT をベースとしたモデルはパラメータが非体的には大規模な生コーパスで事前学習を実施した後、各常に多く、学習に膨大な時間がかかることが知られている。

タスクで finetuning を行うことで構築される。

例えば、京都大学大学院の黒橋研究室で公開されている

BERT の事前学習は 2 つのタスクを学習する形で実施

BERT 日本語 pretrained モデルでは 1 GPU （GeForceされる。１つは文の一部の単語を[MASK]に置き換え、そGTX 1080 Ti を利用）で 30 epoch の学習に約 30 日を要

れ に 相 当 す る ト ー ク ン を 推 測 す る Masked Languageしたと報告されている[2]。そうした中、BERT の事前学

Model、もう 1 つは 50 %の文を実際の次文とつなげた正習において、finetuning するタスクに合わせたドメインの例と残りの 50 %の文を無作為に抽出した文とつなげた負コーパスを利用することでその性能が向上したという事

例を用意し、これらを識別する次文推定のタスク(Next例が報告されている[3][4]。

Sentence Prediction)である。この２つのタスクで事前学

そこで本研究では、汎用性のある小規模なコーパスであ習した BERT に基づき、その Transformer の上に各タスる WikiText-JA を用意する。その上で、そのコーパスに対クに応じた最終層を加えることで、学習結果を他の異なる象とするタスクのドメインに関わるコーパスを組み合わタスクに応用することが可能となる。その結果、文ペア分せたデータセットで BERT を事前学習することで、学習類問題、質問応答（SQuAD）、系列ラベリング問題など様々時間を削減しつつもモデルの性能を大規模コーパスで学なタスクにおけるモデルの性能を向上させられることが習した際のそれとほぼ同等に維持することができるのか報告されている[1]。

1 京都大学大学院情報学研究科
2 京都大学学術情報メディアセンターa){ogawa.akira.86c, tomori.suzushi.72e}@st.kyoto-u.ac.jpb){kameko, forest}@i.kyoto-u.ac.jp

こうした様々なタスクで効果を発揮している BERT は、非常に多くのパラメータを学習時に必要とするモデルとして知られている。パラメータが多いということは学習に― 1173 ―Copyright(C) 2020 The Association for Natural Language Processing.
All Rights Reserved.

多くのメモリと時間を要することに直結する。
こうした問題への対処の 1 つとして、A Lite BERT(ALBERT)というモデルが現在提案されている[6]。このモデルでは Attention を用いたレイヤーでパラメータを共有させる Cross-Layer Parameter Sharing、単語分散表現の埋め込みを分解する Factorized Embedding、そして正例として連続する二文、負例として正例の二文を入れ替えたものを用意し、それぞれの例で文の順序の正しさを評価する Sentence Order Prediction（SOP）が導入されている。

図 1 WikiText-JA の概要ALBERT はパラメータ数が圧倒的に少なく、結果、学習におけるメモリの利用効率の向上が示されている。一方で、WikiText-JA は、英語版 Wikipedia を活用した WikiText-

この手法は学習速度の向上にはあまり寄与しない。

103 [14]を参考に、日本語版 Wikipedia においてよくまとめられた記事として認定された秀逸な記事（85 記事）、お2-2.

固有表現認識

よび良質な記事（1,423 記事）を収集、後にクレンジング

固有表現認識（NER）は、テキスト内における固有な表処理を実施したコーパスである。具体的なクレンジング処現を抽出する技術である。一般的な NER タスクは新聞記理として、文書内に現れる半角文字を全角に変換、JIS X事を対象とし、人名クラス、地名クラス、組織名クラスな0208 の規格に沿わない文字や各種数式をアスタリスクやどの固有表現クラスを取得することを目的に実施される<math-element>でシンボル化などといった処理を行った。

[7][8]。近年では将棋解説文における戦型や盤上の配置な以上の過程を経たテキストデータをデータセットとしてどの認識を目的としたゲーム解説 NER [9]や料理レシピまとめ、研究室のホームページにて現在公開している 1。のテキストにおける食材名や道具名などの認識を目的とWikiText-JA は日本語版 Wikipedia の様々なジャンルのしたレシピ NER [10]など、分野特有の固有表現体系が定記事を含んでおり、汎用的なデータセットとして利用する義された NER が提案され、それぞれ自動解説文[9]や手順ことができる。加えて、文法的な正確さを保った長文を数書理解[11]などの基礎技術となっている。

多く含み、かつ文章間で表記のゆれが抑えられていること

こうした固有表現の認識器は一般に、対象とするタスクが期待される。したがって、正確な文法で記述された長文の単一データセットに基づいて学習が行われる。その一方を偏りなく学習するにあたって、本コーパスの利用は適当で、異なるソースからの追加データを活用することで分類であると考え、後述の BERT の事前学習に利用した。

精度を向上させられることが知られている[12]。この手法は一般に転移学習と呼ばれ、転移学習と約 6,000 文程度のラベル付きデータを用いてバイオ医療 NER の精度向上を4. 実験
4-1. 対象としたコーパス達成したことが報告されている[13]。

実験に用いたコーパスの諸元を表 1、2 に示す。本研究3. WikiText-JA

では BERT の構築において、汎用的なコーパスとして前事前学習に用いるコーパスとして本研究では述の WikiText-JA を、特定のドメインに関わるコーパスとWikiText-JA を新たに作成する。図 1 にその概要を示す。

してゲーム解説コーパス、およびレシピコーパスをそれぞ1

http://www.ar.media.kyoto-u.ac.jp/data/wikitext-ja/

れ用意した。ゲーム解説コーパス[9]は将棋の解説文から(最終閲覧日: 2019.12.30)

なり、分野特有の固有表現クラスとして人名クラスや戦型― 1174 ―Copyright(C) 2020 The Association for Natural Language Processing.
All Rights Reserved.

表 1 BERT の事前学習に用いたコーパス諸元
表 3 ゲーム解説 NER の実験結果（Precision Recall F-measure,
太字は最高精度の値を示す）

表 2 NER に用いたコーパス諸元クラス、プレイヤーの動作名クラスなど 21 種類が定義さ

表 4 レシピ NER の実験結果 （Precision Recall F-measure, 太

れている。レシピコーパス[10]は料理レシピのテキストで字は最高精度の値を示す）あり、分野特有の固有表現クラスとして食材名クラスや道そして文字数に関して WikiText-JA と同サイズとなるよ具名クラス、調理者の動作名クラスなど 8 種類が定義されうに、日本語版 Wikipedia から無作為に記事を抽出したている。これら 2 つのコーパスの NE は名詞句以外からもデータセット（以降、記事無作為抽出と呼称）でそれぞ構成されており、調理者の動作名クラスやプレイヤーの動れ事前学習した BERT を用意した。ただし、日本語版作名クラスなどは動詞で構成されている。

Wikipedia 全記事の BERT は KyTea で単語分割を行った

いずれのコーパスにおいても KyTea [15]2 を用いた単語分割を行い、さらに BPE [16]を適用してサブワードに分後に 30 epoch で事前学習されたモデルを使用した。このモデルの事前学習には約 38 日の期間を要した。

割、それを基本単位とした。また、WikiText-JA にレシピ

事前学習における語彙サイズ（サブワードを含む）はコーパス、またはゲーム解説コーパスを組み合わせて 2 種32,000 に設定し、入力の最大文長を 128 、バッチサイズ複合コーパスを作成、それらを BERT の事前学習に用いを 32 として、200,000 step で実施した。2 種複合コーパ

た。実験ではレシピコーパスとゲーム解説コーパスをそれスに基づく学習に要した時間は１GPU (GeForce GTX

ぞれ用いて、レシピ NER とゲーム解説 NER を実施した。

1080 Ti を利用)を用いた場合、約 32 時間だった。
NER タスクでは、対象データセットを訓練データ、開4-2. 実験設定

発データ、テストデータに分割し、それぞれ 8 : 1 : 1 の割

本 研 究 で は BERT の 事 前 学 習 に お い て 、 前 述 のWikiText-JA、ゲーム解説コーパス、およびレシピコーパ合になるようにした。その上で、そのタスクに対するfinetuning を 4 epoch で実施した。

スを利用した。その上で、WikiText-JA と 2 つのドメイン特有のコーパスをそれぞれ組み合わせて 2 種複合コーパ

4-3. 実験結果

スを作成、そのデータセットに基づいて BERT の事前学表 3、4 に各データセットに基づく事前学習による NER習を行った。また、ベースラインとして前述の 3 つのコータスクの精度を示す。訓練、評価にはゲーム解説コーパス

パス単体、日本語版 Wikipedia 全記事（約 1,800 万文）、とレシピコーパスの 2 種類のコーパスを用いた。訓練、評2価共にゲーム解説、レシピで個別に行った。

http://www.phontron.com/kytea/ (最終閲覧日: 2019.12.30)― 1175 ―Copyright(C) 2020 The Association for Natural Language Processing.
All Rights Reserved.

表 3、4 より、WikiText-JA とゲーム解説コーパス、もしくはレシピコーパスで事前学習した BERT は各コーパス単体、および記事無作為抽出と各ドメインのコーパスで事前学習した BERT のいずれよりも高い精度を示した。
加えて、ゲーム解説 NER、レシピ NER ともに、WikiTextJA と対象ドメインで事前学習した BERT は日本語版
Wikipedia 全体で構築した BERT のそれと同等以上の精[5] Ashish Vaswani, Noam Shazeer, Niki Parmar, JakobUszkoreit, Llion Jones, Aidan N Gomez, Ł ukaszKaiser, and Illia Polosukhin. Attention is all youneed. Neural Information Processing Systems(NIPS2017), pp. 5998-6008, 2017.
[6] Zhenzhong Lan, Mingda Chen, Sebastian Goodman,Kevin Gimpel, Piyush Sharma, Radu Soricut.
ALBERT: A Lite BERT for Self-supervised Learningof Language Representations. arXiv preprint
arXiv:1909.11942v3, 2019.
[7] Erik F. Tjong Kim Sang and Fine De Meulder.
Introduction to the CoNLL-2003 shared task:
Language-independent named entity recognition.

Proceedings of the Seventh Conference on NaturalLanguage Learning (CoNLL 2003), pp. 142-147,度を示していた。したがって、WikiText-JA とタスクのドメインに関わるコーパスを BERT の事前学習に利用することにより、小規模なコーパスサイズ、および短い事前学

2003.
[8] Lev Ratinov and Dan Roth. Design Challenges andMisconceptions in Named Entity Recognition.

Proceedings of the Thirteenth Conference on
Computational Natural Language Learning(CoNLL 2009), pp. 147-155, 2009.

習の時間で日本語版 Wikipedia 全体に基づくそれと同等以上の性能を得られることが示唆された。

[9] Shinsuke Mori, John Richardson, Atsushi Ushiku,
Tetsuro Sasada, Hirotaka Kameko, and Yoshimasa
Tsuruoka. A Japanese Chess Commentary Corpus.

5. おわりに

Proceedings of the Tenth International Conferenceon Language Resources and Evaluation
Conference (LREC 2016), pp.1415-1420, 2016.

本論文では汎用性のある小規模コーパスとしてWikiText-JA を構築し、そのコーパスとタスクで対象とするドメインに関わるコーパスを組み合わせることで、BERT の事前学習を効率化することを目指した。特定のドメインにおける NER を実施した結果、その２種複合コーパスに基づいて構築された BERT は日本語版 Wikipediaから無作為抽出した記事のデータセット、および日本語版
Wikipedia 全体で事前学習した BERT による精度と同等、もしくはそれを上回る結果であった。今後は、WikiTextJA とドメイン特有のコーパスで事前学習した BERT の学習効率をさらに検証するため、学習が進んでいった際の各時点における、提案手法で構築した BERT と日本語版
Wikipedia 全体で事前学習した BERT との性能比較を実施する予定である。

参考文献[1] Jacob Devlin, Ming-Wei Chang, Kenton Lee, andKristina Toutanova. BERT: 事 前 学 習 of deep
bidirectional transformers for language understanding. arXiv preprint arXiv:1810.04805, 2018.
[2] 柴田 友秀, 河原 大輔, 黒橋 禎夫 BERT による日本語構文解析の精度向上 言語処理学会, pp.205208, 2019.
[3] Iz Beltagy, Kyle Lo, Arman Cohan. SciBERT: A
Pretrained Language Model for Scientific Text.
arXiv preprint arXiv:1903.10676v3, 2019.
[4] Jinhyuk Lee, Wonjin Yoon, Sungdong Kim,Donghyeon Kim, Sunkyu Kim, Chan Ho So,
Jaewoo Kang. Bio-BERT: a pre-trained biomedical
language representation model for biomedical textmining. arXiv preprint arXiv:1901.08746, 2019.

[10] Shinsuke Mori, Hirokuni Maeta, Yoko Yamakata,and Tetsuro Sasada. Flow Graph Corpus fromRecipe Texts. Proceedings of the Ninth

International Conference on Language Resources
and Evaluation (LREC 2014), pp. 2370-2377,2014.
[11] Yoko Yamakata, Shinji Imahori, Hirokuni Maeta,
and Shinsuke Mori. A method for extracting
major workflow composed of ingredients, tools,
and actions from cooking procedural text. 2016

IEEE International Conference on Multimedia
Expo Workshops (ICMEW 2016), pp. 1-6, 2016.

[12] Mikhail Arkhipov, Maria Trofimova, Yuri Kuratov,and Alexey Sorokin. Tuning multilingual transformers for language-specific named entity
recognition. In Proceedings of the 7th Workshop on
Balto-Slavic Natural Language Processing, pp.
89–93, 2019.
[13] John M. Giorgi and Gary D. Bader. Transfer
learning for biomedical named entity recognition
with neural networks. Bioinformatics, 34, pp.
4087-4094, 2018.
[14] Stephen Merity, Caiming Xiong, James Bradbury,and Richard Socher. Pointer Sentinel Mixture
Models. arXiv preprint arXiv:1609.07843, 2016.
[15] Graham Neubig, Yosuke Nakata and Shinsuke
Mori. Pointwise Prediction for Robust, Adaptable
Japanese Morphological Analysis. Proceedings ofthe 49th Annual Meeting of the Association for
Computational Linguistics (ACL 2011), pp. 529-533, 2011.
[16] Rico Sennrich, Barry Haddow, and Alexandra Birch.
Neural machine translation of rare words with
sub-word units. Proceedings of the 54th Annual― 1176 ―Meeting of the Association for Computational
Linguistics (ACL 2016), pp. 1715-1725, 2016.

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