ALBERT④(Experimental Results&Discussion)|言語処理へのDeepLearningの導入の研究トレンドを俯瞰する #24

f:id:lib-arts:20191010182154p:plain

言語処理へのDeepLearningの導入をご紹介するにあたって、#3〜#8においては、Transformer[2017]やBERT[2018]について、#9~#10ではXLNet[2019]について、#11~#12ではTransformer-XL[2019]について、#13~#17ではRoBERTa[2019]について、#18~#20ではWord2Vec[2013]について取り扱ってきました。

Transformer-XL(論文のAbstractの確認)|言語処理へのDeepLearningの導入の研究トレンドを俯瞰する #12 - lib-arts’s diary

RoBERTa(論文の詳細④ RoBERTa、Related Work、Conclusion)|言語処理へのDeepLearningの導入の研究トレンドを俯瞰する #17 - lib-arts’s diary

Word2Vec②(Model Architectures&New Log-linear Models)|言語処理へのDeepLearningの導入の研究トレンドを俯瞰する #19 - lib-arts’s diary

#21以降ではGLUEベンチマークにおいてRoBERTa[2019]を上回ってSotAとなった2019年9月に発表されたALBERTについて確認していきます。

[1909.11942] ALBERT: A Lite BERT for Self-supervised Learning of Language Representations

#23ではSection3の"The Elements of ALBERT"について取り扱いました。

ALBERT③(Introduction&Related Work)|言語処理へのDeepLearningの導入の研究トレンドを俯瞰する #23 - lib-arts’s diary
#24ではSection4の"Experimental Results"とSection5の"Discussion"について取り扱っていきます。
以下目次になります。

1. Experimental Results(Section4)
1-1. Experimental Setup(Section4-1)
1-2. Evaluation Benchmarks(Section4-2)
1-3. Overall Comparison between BERT and ALBERT(Section4-3)
1-4. Factorized Embedding Parameterization(Section4-4)
1-5. Cross-layer Parameter Sharing(Section4-5)
1-6. Sentence Order Prediction(Section4-6)
1-7. Effect of Network Depth and Width(Section4-7)
1-8. What if We Train for the Same Amount of Time?(Section4-8)
1-9. Do Very Wide ALBERT Models Need to be Deep(er) too?(Section4-9)
1-10. Additional Training Data and Dropout Effects(Section4-10)
1-11. Current State-of-the-Art on NLU Tasks(Section4-11)
2. Discussion(Section5)
3. まとめ


1. Experimental Results(Section4)
1-1. Experimental Setup(Section4-1)
Section4-1の"Experimental Setup"では実験における設定についてまとめられています。

f:id:lib-arts:20191012181851p:plain

上記によると、まず有意義な比較を可能とするためにBERTとデータセットを揃え、BookCorpusやEnglish Wikipediaを含んだ16GBのテキストを使用したとされています。また、n-gramの最大の長さを"White House correspondents"のように3に設定し、バッチサイズを4096、学習率を0.00176にし、125,000ステップの学習を行なったとされています。


1-2. Evaluation Benchmarks(Section4-2)
Section4-2の"Evaluation Benchmarks"では評価に用いるベンチマークについて記載されています。

f:id:lib-arts:20191012182745p:plain

f:id:lib-arts:20191012182816p:plain

上記によると、Section4-2-1では固有の(intrinsic)評価、Section4-2-2ではDownstreamタスクにおける評価についてまとめられています。Downstreamタスクにおける評価においては同様の研究で評価にあたって広く用いられている、GLUE(The General Language Understanding Evaluation)ベンチマーク、SQuAD(Stanford Question Answering Dataset)データセット、RACE(ReAding Comprehension from Examinations)データセットが用いられているとされています。


1-3. Overall Comparison between BERT and ALBERT(Section4-3)
Section4-3の"Overall Comparison between BERT and ALBERT"ではBERTとALBERTの全体的な比較について記載されています。

f:id:lib-arts:20191012183359p:plain

上記のTable3ではそれぞれのモデルのパラメータ数とスコアについてまとめられています。ALBERTのxxlargeが一番高いパフォーマンスになっており、またスピードもBERTのxlargeに比べて高速になっていることが確認できます。


1-4. Factorized Embedding Parameterization(Section4-4)
Section4-4の"Factorized Embedding Parameterization"ではEmbedding Matrixの分解について記載されています。

f:id:lib-arts:20191012190827p:plain

上記のTable4においてnot-sharedはBERTのようにLayer間のパラメータシェアを行わなかった場合におけるパフォーマンス、all-sharedはLayer間のパラメータシェアを行なった場合とされています。この際に、all-sharedの状況においてEが128のところが良い結果となっていたので、ベースとしてはE=128で設定したとされています。


1-5. Cross-layer Parameter Sharing(Section4-5)
Section4-5の"Cross-layer Parameter Sharing"ではLayer間のパラメータのシェアについて記載されています。

f:id:lib-arts:20191012191902p:plain

上記のTable5において、パラメータシェアによるパフォーマンスの比較がされています。FFNのパラメータをシェアするとパフォーマンスが落ちる一方で、attentionのパラメータをシェアするとパフォーマンスが落ちなかった(表の数字を見る限りだと上がっている)とされています。


1-6. Sentence Order Prediction(Section4-6)
Section4-6の"Sentence Order Prediction"ではSOPを用いたlossについて検証されています。

f:id:lib-arts:20191012192511p:plain

上記のTable6ではMLM(Masked Language Modeling)に加えて何も用いない(None)、NSPloss(BERT-style)を用いる、SOPloss(ALBERT-style)を用いるで比較が行われています。結果として、SOPを用いた方が良い結果になったとされています。


1-7. Effect of Network Depth and Width(Section4-7)
Section4-7の"Effect of Network Depth and Width"ではネットワークの深さや幅の効果について検証されています。

f:id:lib-arts:20191012193532p:plain

f:id:lib-arts:20191012193522p:plain

上記のTable7ではHidden sizeを1024に統一した上で層の数を変えて実験を行なっています。結果として、24層が一番良い結果となったとされています。また、Table8では層の数を3層に統一した上でHidden sizeを変更して実験を行なっています。この実験においてはHidden sizeが4096が一番良い結果となっています。


1-8. What if We Train for the Same Amount of Time?(Section4-8)
Section4-8の"What if We Train for the Same Amount of Time?"では同じ学習時間で学習した際のパフォーマンスの比較について行なっています。

f:id:lib-arts:20191012194256p:plain

Table9ではBERT-largeとALBERT-xxlargeの同一時間の学習においてパフォーマンスの比較を行なっています。結果としてはALBERT-xxlargeの方が良い結果となったとされています。


1-9. Do Very Wide ALBERT Models Need to be Deep(er) too?(Section4-9)
Section4-9の"Do Very Wide ALBERT Models Need to be Deep(er) too?"では隠れ層の大きなモデルは深くする必要があるのかについて検証されています。

f:id:lib-arts:20191012194920p:plain

f:id:lib-arts:20191012194934p:plain

Table10ではH=4096の状況において、Layerの数を12と24にしてそれぞれ検証が行われています。Table10における比較ではパフォーマンスがさほど変わらないとされています。

 

1-10. Additional Training Data and Dropout Effects(Section4-10)
Section4-10の"Additional Training Data and Dropout Effects"では学習データの付加とDropoutの効果について検証が行われています。

f:id:lib-arts:20191012195537p:plain

Table11では、XLNetやRoBERTaの際に用いられた追加データを用いた検証について行われています。結果として、With additional dataの方が全体の平均が大きくなっています。

f:id:lib-arts:20191012195555p:plain

Table12では、ALBERT-xxlargeに置いてdropoutを用いなくなった場合について検証が行われています。大規模なTransformerを用いたモデルにおいてはdropoutを用いなかった方がパフォーマンスがよかったとされています(この辺はあくまで現段階の研究で、厳密な議論はもう少し後の研究を見てから判断する方が良さそうです)。


1-11. Current State-of-the-Art on NLU Tasks(Section4-11)
Section4-11の"Current State-of-the-Art on NLU Tasks"ではメジャーな自然言語理解(NLU; Natural Language Understanding)のタスクにおけるSotAについてまとめられています。

f:id:lib-arts:20191012200629p:plain

Table13では、GLUEベンチマークのSotAについてまとめられています。BERT、XLNet、RoBERTaなどと比較してALBERTのパフォーマンスが比較されています。single-taskにおいてもensemblesにおいてもALBERTが高いパフォーマンスを示していることがわかります。

f:id:lib-arts:20191012200646p:plain

Table14では、SQuADとRACEのSotAについてまとめられています。こちらでもALBERTが他のモデルに比較して良いパフォーマンスとなっていることがわかります。


2. Discussion(Section5)
2節ではSection5のDiscussionについて取り扱います。

f:id:lib-arts:20191012201626p:plain

上記では、ALBERT-xxlargeはBERT-largeを精度の面では上回ったが、重要な次のステップとしてはALBERTの学習や推論のスピードアップがあるとされています。また、今回はlossとしてsentence order predictionを用いたが、より良いlossがあるのではとされています(確かにsentence order predictionとMasked Language Modelingについてはそれぞれの役割分担など含め、まだ改善の余地はありそうな印象を受けます)。


3. まとめ
#24ではSection4の"Experimental Results"とSection5の"Discussion"について取り扱いました。論文全体を通してモデルの軽量化にあたっての様々なアプローチや検証が記載されており、非常に参考になる内容でした。
#25では#18~#20で取り扱ったWord2Vecの追加研究である、"Distributed Representations of Words and Phrases and their Compositionality"について取り扱えればと思います。