Slide 1

Slide 1 text

ELECTRA: Pre-training Text Encoders As Discriminators Rather Than Generators. In: ICLR 2020 Kevin Clark, Minh-Thang Luong, Quoc V. Le, Christopher D. Manning 第12回 最先端NLP勉強会 Titech Okazaki Lab/Hottolink: Sakae Mizuki 2020/09/26 ※ スライド中の図表・数式は,断りのないかぎり本論文からの引用です

Slide 2

Slide 2 text

Overview of the Research 2

Slide 3

Slide 3 text

背景・目的・仮説・提案手法 • 背景 • BERT等のMasked Language Modeling(=MLM)は有効だが,pre-trainingがしんどい. • 目的 • Masked Language Modeling(=MLM)の効率を改善したい. • つまり,MLMより少ない計算量で済むpre-training taskを考えたい. • ここでいう計算量とは,pre-training taskに消費するFLOPSのこと. • 仮説 • MLMでは,masked token(15%)のみに教師信号が付与される. • すべてのtokenに教師信号を付与できるtaskならば,学習効率が改善するのでは? • 提案手法 • pre-training taskとしてReplaced Token Detection(=RTD)を提案する. • corrupted sentenceを入力して,各tokenがoriginalかreplacedかを識別する. 3

Slide 4

Slide 4 text

結果 • BERTと同等の計算量で,downstream task(GLUE)を3~5ポイント改善(左図). • RoBERTaの約1/4の計算量で,同水準の性能を実現(右図). 4 計算量 性能

Slide 5

Slide 5 text

Methodology 5

Slide 6

Slide 6 text

Replaced Token Detectionの説明 • GeneratorおよびDiscriminatorを用意する. • Generatorの役割は masked token filling を用いて corrupted sentence を生成す ること.pre-trainingが終われば用済み. • Discriminatorの役割は corrupted sentence のtokenがoriginalかreplacedかを識 別すること.pre-trainingのあとでdownstream taskに転移学習する. • Next sentence predictionは行わない. 6 Generator (small MLM) Discriminator (ELECTRA) the artist sold the car original original original original replaced [mask] artist sold the [mask] the artist sold the painting original sentence corrupted sentence original / replaced detection sample sample

Slide 7

Slide 7 text

Replaced Token Detectionの説明 • GeneratorはDiscriminatorと同時並行で学習する. • Generatorの学習には,masked token predictionを使う.Discriminatorから誤差逆 伝播するわけではない. • つまりGeneratorは,small MLMを学習している. • Generatorの学習が進捗するにつれて本物らしいcorrupted sentenceが生成される. Generator (small MLM) the car [mask] artist sold the [mask] the artist sold the painting 7

Slide 8

Slide 8 text

類似手法との区別 • GANではない. • Generatorを敵対的学習するわけではない. • そもそも,Discriminator lossからGeneratorに誤差逆伝播しない. • Denoising AutoEncoder(=DAE)とは,ちょっと違う. • original OR replaced を識別するだけなので,original inputを再構成しない. • むしろContinuous Bag-of-Words(=CBOW)に似ている. • Transformerによってtarget vectorとcontext vectorを計算していると考える. • Generatorをproposal distribution,original tokenを正例,replaced tokenを負例とみ なすと,CBOWの枠組みに一致する. 8

Slide 9

Slide 9 text

うまくいかなかった派生手法 • GeneratorとDiscriminatorの訓練方法を変えることにより,いろいろな派生 手法を作り出すことができる. • たとえば,Generatorの敵対的学習も原理的には可能.どうなるか気になりますよね? • しかし以下に挙げる派生手法は,提案手法ほどの性能が出なかった. • Simpler “unigram” generator • unigram確率分布を使ってcorrupted sentenceを生成. • Adversarial ELECTRA • Generatorを敵対的学習(=Discriminatorを騙すように学習). • Two-Stage ELECTRA • Generatorを先に学習.パラメータを固定してから,Discriminatorを学習. 9

Slide 10

Slide 10 text

うまくいかなかった派生手法:実験結果 “unigram” generator Two-Stage ELECTRA(右図・緑実線)は伸びしろがありそう,ちょっと諦めるのが早いかも. 10

Slide 11

Slide 11 text

Experiments 11

Slide 12

Slide 12 text

検証仮説および実験設定 • 実験で検証したい仮説は,以下の通り. • ELECTRAの学習効率が,既存手法よりも高いこと. • 具体的には,pre-trainingに要するFLOPS(compute budget)が少ないこと. • 訓練データ量や最適化手法をできるだけ揃えた上で,複数のモデルサイズで Baselinesと比較する. • 実験設定は以下の通り. • モデルサイズ:ELECTRA-{Small, Base, Large} • Baselines:BERT-{Small, Base, Large}, RoBERTa(Large), XLNet(Large) • Downstream tasks:GLUE, SQuAD 1.1/2.0(スライドは省略) 12

Slide 13

Slide 13 text

主要な実験結果 • BERTと同等の計算量で,GLUEを3~5ポイント改善(左図). • 特に,モデルサイズが小さいときの改善幅が大きい. • RoBERTaの約1/4の計算量で,同水準の性能を実現(右図). 13 約1/4の計算量 3~5ポイント改善

Slide 14

Slide 14 text

詳細な実験結果(の一部) • RoBERTaの約1/4の計算量で,同水準の性能を実現(緑強調). • XLNet・BERTと同程度の計算量で,GLUEを1ポイント強改善(赤強調) 14

Slide 15

Slide 15 text

Analysis 15

Slide 16

Slide 16 text

効率的な学習の要因 • ELECTRAの学習効率が,既存手法よりも高い理由を分析する. • そこで,Discriminatorの訓練方法を変更して性能を比較してみる. 1. ELECTRA 15% • masked tokenのみに対して,Replaced Token Detectionを学習. • ELECTRAとの相違点は,masked token(全体の15%)のみに教師信号が付与されること. 2. Replace MLM • Corrupted sentenceを入力して,masked token predictionを学習. • BERTとの相違点は [mask] tokenが,replaced tokenになること.つまりpre-train/fine-tune discrepancy[Devlin+, 2018]が解消されること. 3. All-Tokens MLM • Corrupted sentenceを入力して,token predictionを学習. • ELECTRAとの相違点は,original/replaced detectionではなくtoken predictionになること. 16

Slide 17

Slide 17 text

効率的な学習の要因 • ELECTRA vs ELECTRA 15%の性能差がもっとも大きい(85.0 vs 82.4). • したがってELECTRAの学習効率が高い理由は,すべてのtokenに教師信号を付与 しているためだと示唆される. 17

Slide 18

Slide 18 text

Conclusion 18

Slide 19

Slide 19 text

論文のまとめ • Masked Language Modelingより少ない計算量で済むpre-training taskを考えたい. • 「すべてのtokenに教師信号を付与するとよい」という仮説に基づき, Replaced Token Detection taskを提案.本taskでは,smaller MLM をcorrupted sentence generatorとして使用する. • BERT, XLNet, RoBERTaと比較して,学習効率が高い・性能が高いこ とを実証. • Discriminatorの訓練方法を通じた考察により,すべてのtokenに教師 信号を付与することが高効率な学習の源泉らしいことを確認. 19

Slide 20

Slide 20 text

発表者の所感 • とてもおもしろい論文である. • Masked Language Modelingの次は何なんだ,を妄想できる. • Negative resultsも報告されているので,とてもありがたい. • (お手軽な)発展研究の余地がある. • DiscriminatorからGeneratorに誤差逆伝播してみる. • Masking strategy(e.g. SpanBERT)と併用してみる. • Generatorも転移学習に使用する.など • 一方で Scaling Laws の餌食になる可能性もある. • 訓練データ・計算量の大規模化により,RoBERTaがXLNetを上回った. • Language modelingでは,モデルの大規模化により学習効率が上がるという報告があ る[Kaplan+, 2020]. • ELECTRAもモデルが大規模化するとgainが小さくなる傾向がある(本論文Figure.4). 20 [Kaplan+, 2020] KAPLAN, Jared, et al. Scaling laws for neural language models. arXiv preprint arXiv:2001.08361, 2020.

Slide 21

Slide 21 text

Appendix 21

Slide 22

Slide 22 text

Stepsおよび最適化について • Figure.1では,RoBERTa-100kのFLOPSがELECTRA-100kの約4倍になっています.これ は誤りでは?と思う方のために補足説明しておきます. • stepsは,モデルパラメータの更新回数(=mini batchの個数)を表しています. • RoBERTaのbatch sizeは,ELECTRAの4倍です.このためFLOPSも約4倍になっています. (ちょうど4倍にならないのは,GeneratorのFLOPSが加算されるため) • 参考までに,各モデルの主な最適化設定を一覧にしておきます. 22 モデル batch size max steps. optimizer trainset XLNet 2,048 500K Adam [Yang+, 2019] RoBERTa 8,192 500K Adam [Liu+, 2019] BERT 256 1,000K Adam [Devlin+, 2018] BERT(ours)(※) 2,048 500K LAMB [Yang+, 2019] ELECTRA 2,048 500K LAMB [Yang+, 2019] ※ 本論文Table.2

Slide 23

Slide 23 text

ELECTRAの実装・学習済みモデル • ELECTRAの著者実装はgithubに公開されています. • https://github.com/google-research/electra • ELECTRAの実装・学習済みモデル(English)は,transformersからも配布されています. • 実装:https://huggingface.co/transformers/model_doc/electra.html • 学習済みモデル:https://huggingface.co/google/electra-large-discriminator 23