Upgrade to Pro — share decks privately, control downloads, hide ads and more …

事前学習言語モデルの動向 / Survey of Pretrained Language Models

事前学習言語モデルの動向 / Survey of Pretrained Language Models

Kyosuke Nishida

November 02, 2019
Tweet

More Decks by Kyosuke Nishida

Other Decks in Research

Transcript

  1. 事前学習⾔語モデルの動向
    2019/11/02
    ⻄⽥京介
    1

    View Slide

  2. • BERTの概要
    • 事前学習⾔語モデルの研究の流れ
    – 2019/06まで(BERT, GPT-2, XLNet等)
    – 2019/07〜(RoBERTa, ALBERT, T5等)
    • 注⽬データセットの現状のスコア
    • 今後の展望
    2
    ⽬次

    View Slide

  3. • 24層の巨⼤モデルで⼤量のデータで事前学習して汎⽤なモ
    デルを獲得し、各応⽤タスクに適応させるアプローチ
    • 2018/10/11に発表、現在までに2000件近く被引⽤
    • 多数のNLPタスクで⾼い性能を実現して注⽬を浴びる
    3
    BERT [Devlin+ (Google), NAACLʼ19 Best Paper]

    View Slide

  4. • 質問に対してテキストを読み解いて回答するタスク
    4
    BERTが優れた性能を達成したタスクの例︓
    SQuAD 1.1 [Rajupurkar (Stanford)+, EMNLP16]
    ⼊⼒︓テキスト
    ⼊⼒︓質問
    出⼒︓回答
    Wikipediaの段落(平均140単語)
    無料で公開
    クラウドソーシングで作成した
    100,000件以上の質問・回答ペア
    テキスト中の任意の
    範囲を抽出して回答

    View Slide

  5. • このタスクに特化したニューラルネット構造を持たずに、
    ⼈間の質問応答スコアを⼤きく超える性能を達成
    5
    機械読解 (SQuAD 1.1) で⼈間超え
    完全⼀致 部分⼀致
    ⼈間のスコア
    82.304
    BERTのスコア
    87.433
    Jacob Devlin et al.: BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding.
    CoRR abs/1810.04805 (2018)
    https://rajpurkar.github.io/SQuAD-explorer/

    View Slide

  6. 6
    BERTが検索エンジンに導⼊ (New!)
    https://www.blog.google/products/search/search-language-understanding-bert/
    • 10⽉25⽇、Googleは検索エンジンのアルゴリズムをBERTベー
    スにアップデート(英語のみ)
    • ⾃然⽂でより詳細な検索意図を伝えられる

    View Slide

  7. 7
    ⾔語モデル研究の加速
    https://github.com/thunlp/PLMpapers に追加
    ALBERT
    ICLR 2020 (投稿中)
    ACL 2019
    NeurIPS 2019
    EMNLP 2019
    T5
    BART
    2019/10

    View Slide

  8. 時系列とモデルサイズ [Huggingface, 2019/08/28]
    https://medium.com/huggingface/distilbert-8cf3380435b5
    モデルのパラメータ数
    (x1M)
    340M=
    3.4億個のfloat値
    8300M=
    83億個のfloat値
    8

    View Slide

  9. • ERNIE: Enhanced Language Representation with Informative
    Entities. Zhengyan Zhang, Xu Han, Zhiyuan Liu, Xin Jiang, Maosong Sun and Qun
    Liu. ACL 2019. [pdf] [code & model]
    • Multi-Task Deep Neural Networks for Natural Language
    Understanding. Xiaodong Liu, Pengcheng He, Weizhu Chen, Jianfeng Gao. ACL
    2019. [pdf] [code & model]
    • BERT Rediscovers the Classical NLP Pipeline. Ian Tenney, Dipanjan Das, Ellie
    Pavlick. ACL 2019. [pdf]
    • How multilingual is Multilingual BERT?. Telmo Pires, Eva Schlinger, Dan Garrette.
    ACL 2019. [pdf]
    • What Does BERT Learn about the Structure of Language?. Ganesh Jawahar,
    Benoît Sagot, Djamé Seddah. ACL 2019. [pdf]
    • Probing Neural Network Comprehension of Natural Language
    Arguments. Timothy Niven, Hung-Yu Kao. ACL 2019. [pdf] [code]
    • ※ BERTを引⽤した論⽂はACL19で180本(全体の27%)程度︖
    「BERT devlin P19 site:aclweb.org filetype:pdf -Supplementary.pdf」 で検索
    9
    BERTの拡張/分析論⽂@ACL’19
    https://github.com/thunlp/PLMpapers

    View Slide

  10. • BERT: 論⽂がarXivに公開: 2018/10/11
    • BERT: コード&学習済みモデル公開: 2018/11/1
    • NAACL’19: 投稿〆切: 2018/12/10
    • ACL’19: 匿名期間開始: 2019/2/4
    • BERT: NAACL’19に採択判明: 2019/3/1
    • ACL’19: 投稿〆切: 2019/3/4
    • ACL’19: 採択通知: 2019/5/13
    • BERT: NAACL’19で発表&ベストペーパー: 2019/7/2
    • ACL’19: 本会議: 2019/07/29-31
    10
    ACL 2019とBERT関連のImportant Dates
    トップ会議における
    After BERTの世界はこれから本格的に始まる︕
    今回のACL’19論⽂の
    arxivは2018/12〜
    2019/02あたり

    View Slide

  11. • BERTの概要
    • 事前学習⾔語モデルの研究の流れ
    – 2019/06まで(BERT, GPT-2, XLNet等)
    – 2019/07〜(RoBERTa, ALBERT, T5等)
    • 注⽬データセットの現状のスコア
    • 今後の展望
    11
    ⽬次

    View Slide

  12. • ⽂字レベルの双⽅向(left-to-rightとright-to-left)・2層LSTM⾔
    語モデル
    • 1B Word Benchmark で学習
    • ELMoを特徴ベクトルとしてニューラルモデルで使いSQuAD等
    で⾼精度
    12
    ELMo [Peters(AI2)+, EMNLP’18, arxiv’18/02] 引⽤数1538
    https://www.aclweb.org/anthology/N18-1202.pdf ※図はBert論⽂から

    View Slide

  13. • 12層Transformerの⾃⼰回帰⾔語モデル (left-to-right)
    – LSTMからTransformerへ、ワードからサブワードへ
    • BookCorpus (5.5GB程度; 800M words)で学習
    13
    GPT [Radford(OpenAI)+, TechRep’18/06] 引⽤数382
    https://s3-us-west-2.amazonaws.com/openai-assets/research-covers/language-
    unsupervised/language_understanding_paper.pdf

    View Slide

  14. • ⾔語モデルが応⽤タスク(downstream tasks)をファイン
    チューニングする前の事前学習として有効であることを⽰す
    14
    GPT [Radford(OpenAI)+, TechRep’18/06] 引⽤数382
    https://s3-us-west-2.amazonaws.com/openai-assets/research-covers/language-
    unsupervised/language_understanding_paper.pdf

    View Slide

  15. • Transformerの24層双⽅向⾔語モデル
    • Wikipedia + BookCorpus (16GB, 3300M words) で学習
    – 巨⼤なモデル・多数のデータの流れができる
    • GLUE, SQuAD等の注⽬タスクで劇的な精度向上、⼀部⼈間超え
    15
    BERT [Devlin(Google)+, NAACL’19, arxiv’18/11] 引⽤数1997
    https://www.aclweb.org/anthology/N19-1423.pdf

    View Slide

  16. • ⽳埋め問題(Masked Language Model)
    • 次の⽂予測(Next Sentence Prediction)の2タスクで学習
    16
    BERT [Devlin(Google)+, NAACL’19, arxiv’18/11] 引⽤数1997
    [CLS] my dog is cute [SEP] he likes play [MASK] [SEP]
    2⽂⽬
    1⽂⽬
    IsNext my dog is cute [SEP] he likes play piano [SEP]
    分類 ⽳埋め
    双⽅向

    View Slide

  17. • BERTの上にマルチタスク層を追加してファインチューニング
    することでBERTがより良い表現を獲得
    • Scratchから作るのではなく、既存の⾔語モデルをベースにし
    た研究
    17
    MT-DNN [Liu(MS)+, ACL’19, arxiv’19/01] 引⽤数65
    https://www.aclweb.org/anthology/P19-1441.pdf
    単⽂の分類,
    2⽂の分類
    など

    View Slide

  18. • パラレル翻訳コーパスを⽤いて、クロスリンガルに⽳埋めを
    学習
    18
    XLM [Lample(Facebook)+, NeurIPS’19, arxiv’19/01] 引⽤数69
    https://arxiv.org/pdf/1901.07291.pdf
    英語 フランス語

    View Slide

  19. • 系列⻑に制限のあった既存モデルに対して、セグメントレベルの再帰を
    ⼊れることにより⻑い系列を扱えるように改善
    19
    Transformer XL [Dai(CMU) +,ACL’19, arxiv’19/01] 引⽤数112
    https://arxiv.org/pdf/1901.02860.pdf

    View Slide

  20. • 48層Transformerの⾃⼰回帰⾔語モデル(構造はGPTと同じ)
    • WebText (40GB程度)で学習
    • 特別な訓練なしに(zero-shot)翻訳,QAが可能
    20
    GPT-2 [Radford(OpenAI)+, TechRep’19/02] 引⽤数153
    https://d4mucfpksywv.cloudfront.net/better-language-
    models/language_models_are_unsupervised_multitask_learners.pdf

    View Slide

  21. • フェイクニュースを⽣成可能なレベルだと話題に
    21
    GPT-2 [Radford(OpenAI)+, TechRep’19/02] 引⽤数153
    https://twitter.com/OpenAI/status/1096092704709070851

    View Slide

  22. • エンティティとフレーズの外部知識を使ってマスクに利⽤
    • 中国語タスクで評価
    • Whole word masking [google 5/31 on github] に近いイメージ
    22
    ERNIE 1.0 (Baidu) [Sun+, arXiv’19/04] 引⽤数19
    https://arxiv.org/abs/1904.09223

    View Slide

  23. • 知識グラフ(エンティティ)の情報をfusionしたLM
    • GLUEではBERTと同程度だが,知識が必要となるタスクで
    SOTA
    23
    ERNIE (Tsinghua) [Zhang+, ACL’19, arxiv’19/05] 引⽤数17

    View Slide

  24. • ドメイン、⽇付、著者などを条件とした⽣成を可能にした
    GPT(トークンで条件付け)
    • Common Crawlから収集したRealNewsデータセット(120GB)
    で学習
    24
    Glover [Zellers(Washington U)+, NeurIPS’19, arxiv’19/05] 引⽤数10
    https://arxiv.org/pdf/1905.12616.pdf

    View Slide

  25. • フェイクニュース⽣成のデモ
    25
    Glover [Zellers(Washington U)+, NeurIPS’19, arxiv’19/05] 引⽤数10
    https://grover.allenai.org/

    View Slide

  26. • Encoder-Decoder型の⽣成モデルのための事前学習
    • ⼊⼒から1つの範囲をマスクして,decoder側ではマスクされ
    た部分を予測
    • 教師なし翻訳 newstest2014 En-FrなどでSOTA
    26
    MASS [Song(Microsoft)+, ICML’19, arXiv’19/05] 引⽤数26
    http://proceedings.mlr.press/v97/song19d/song19d.pdf

    View Slide

  27. • Sequence-to-sequenceを可能にした⾔語モデル
    • アテンションのマスクの⼊れ⽅で単⽅向・双⽅向・Seq2Seq
    を制御
    • CNN/DMなどでSOTA
    27
    UniLM [Dong(Microsoft)+, NeurIPS’19, arxiv’19/05] 引⽤数16
    https://arxiv.org/abs/1905.03197

    View Slide

  28. • ⾃⼰回帰(単⽅向)モデルと双⽅向の両⽅の利点を得ることを⽬指す
    • モデルに⼊⼒するトークンの順序を permutation する
    • GLUEなどでBERTを超える精度を達成
    28
    XLNet [Yang(CMU)+, NeurIPS’19, arxiv’19/06] 引⽤数112
    https://arxiv.org/pdf/1906.08237.pdf

    View Slide

  29. • BERTの概要
    • 事前学習⾔語モデルの研究の流れ
    – 2019/06まで(BERT, GPT-2, XLNet等)
    – 2019/07〜(RoBERTa, ALBERT, T5等)
    • 注⽬データセットの現状のスコア
    • 今後の展望
    29
    ⽬次

    View Slide

  30. • i.i.d.ではなく範囲でマスクし,同時に範囲の境界も予測する
    • 1セグメントにして次⽂予測(NSP)を廃⽌
    • 通常のBERTに⽐べて精度向上を確認
    30
    SpanBERT [Joshi(Washington U, Facebook)+, arXiv’19/07] 引⽤数11
    https://arxiv.org/abs/1907.10529

    View Slide

  31. • マルチタスク事前学習
    – 単語レベル(知識マスク,⼤⽂字,単語が他のセグメントで出るか)
    – 構造レベル(⽂の順序,出現場所)
    – 意味レベル(談話構造,検索)
    • GLUEでBERT、XLNetを超えてSOTA(リーダーボードには載ってない)
    31
    ERNIE 2.0 [Sun(Baidu)+, arxiv’19/07] 引⽤数5
    https://arxiv.org/abs/1907.12412

    View Slide

  32. • BERTと同じ構造で、いろいろな⼯夫を盛り込むことで⼤幅な精度向上
    – より⼤きなバッチサイズを使う(256から8192)
    – より多くのデータを使う(16GBから160GB)
    – より⻑いステップ数の学習をする(BERT換算で16倍程度)
    – 次⽂予測(NSP)は不要
    • GLUEでBERT、XLNetを超える精度
    32
    RoBERTa [Liu(Facebook)+, ICLR’20(投稿中), arxiv’19/07] 引⽤数22
    https://arxiv.org/abs/1907.11692

    View Slide

  33. • NSPに変わる学習の⽬的関数を⼯夫
    – マスクした上で単語の順番をシャッフルして元に戻す
    – ランダム・正順・逆順の3種類を分類
    • BERTと同サイズ、同データでGLUEでRoBERTa超え
    33
    StructBERT (ALICE) [Wang(Alibaba)+, arxiv’19/08] 引⽤数1
    https://arxiv.org/pdf/1908.04577.pdf

    View Slide

  34. • 蒸留により12層BERTを6層に⼩型化(40%減)
    – BERTの出⼒を教師として、⽣徒(⼩型モデル)が同じ出⼒を出すように学習
    – 幅(隠れ層)のサイズを減らすと、層数を減らすよりも悪化
    • 推論は60%⾼速化、精度は95%程度保持
    34
    DistilBERT [Sanh(Huggingface)+, NeurIPS WS’19, arxiv’19/10] 引⽤数2
    https://arxiv.org/pdf/1910.01108.pdf
    https://medium.com/huggingface/distilbert-8cf3380435b5

    View Slide

  35. • 精度を落とさずfine-tuning時にBERTを8bit整数に量⼦化
    – Embedding, FCは8bit化,softmax, Lnorm, GELUはFP32をキープ
    • モデルサイズ1/4, 速度 3.7x
    35
    Q8BERT [Zafrir(Intel)+, NeurIPS WS’19, arXiv’19/10] 引⽤数1
    https://arxiv.org/abs/1910.06188

    View Slide

  36. • 条件付⾔語モデル.条件となる制御テキストを本⽂の前に与
    えて学習.
    • 48層/1280次元Transformer(パラメータ数1.6B)
    36
    CTRL [Keskar(Salesforce)+, Tech.Rep’19/09] 引⽤数3
    https://einstein.ai/presentations/ctrl.pdf

    View Slide

  37. • 72層、隠れ状態サイズ3072、⻑さ1024(BERTの24倍のサイズ)
    • 174GBのテキストを512GPUで9.3⽇で学習
    • 数⾏のPyTorchコード追加で8モデル並列、64データ並列を実現
    37
    MegatronLM [Shoeybi(NVIDIA)+, arxiv’19/10] 引⽤数3
    https://arxiv.org/pdf/1909.08053.pdf

    View Slide

  38. • BERTの層のパラメータをすべて共有することで学習を⾼速化
    – Largeを超えたモデルは学習が難しいため、表現⼒は落ちるが学習し易くした
    • 単語埋め込みを低次元にすることでパラメータ削減
    • 次⽂予測を、⽂の順序⼊れ替え判定に変更
    • GLUE, RACE, SQuADでSOTAを更新
    38
    ALBERT [Lan(Google)+, ICLR’20(投稿中), arxiv’19/09/26] 引⽤数3
    https://arxiv.org/abs/1909.11942

    View Slide

  39. パラメータ共有
    • BERT base (110M) の場合,12層のパラメータ数は85M
    • 各層で共有すれば,7.08Mまで削減
    39
    ALBERT [Lan(Google)+, ICLR’20(投稿中), arxiv’19/09/26] 引⽤数3
    ALBERTでは
    各層でパラメータを
    共有する

    View Slide

  40. Embedding Factorization
    • BERT base (110M) の場合,単語埋込のパラメータ数は24.5M
    • ALBERTではBottleneck構造することで3.93Mまで削減
    40
    ALBERT [Lan(Google)+, ICLR’20(投稿中), arxiv’19/09/26] 引⽤数3
    V = 30000
    H=768
    E=128

    View Slide

  41. Sentence Order Prediction (SOP)
    • BERTの次⽂予測(NSP)は,他の⽂書から負例を持ってくる
    ので,トピック判定に近く,問題が簡単になっている
    • 同⽂書の中の連続するセグメントの順序の⼊替え判定をする
    41
    ALBERT [Lan(Google)+, ICLR’20(投稿中), arxiv’19/09/26] 引⽤数3
    [CLS] my dog is cute [SEP] he likes play [MASK] [SEP]
    2⽂⽬
    1⽂⽬
    正順? my dog is cute [SEP] he likes play piano [SEP]
    分類 ⽳埋め

    View Slide

  42. • NLPタスクを全てText-to-Textとして扱い,Enc-Dec Transformer
    を745GBのコーパスで事前学習して転移する(Text-To-Text
    Transfer Transformer)
    • モデルはEncoder-decoderのTransformer
    42
    T5 [Raffel(Google)+, arXiv’19/10/23]
    https://arxiv.org/abs/1910.10683

    View Slide

  43. • 学習タスクをエンコーダデコーダに合わせて変更
    • エンコーダ側で範囲を⽋落させて,デコーダ側で予測
    • GLUE, SuperGLUE, SQuAD 1.1, CNN/DMでSOTA更新
    43
    T5 [Raffel(Google)+, arXiv’19/10/23]
    https://arxiv.org/abs/1910.10683

    View Slide

  44. • Seq2Seq事前学習として,トークンマスク・削除,範囲マス
    ク,⽂の⼊替,⽂書の回転の複数タスクで学習.
    • CNN/DMでT5超え,WMT’16 RO-ENで逆翻訳を超えてSOTA
    44
    BART [Lewis(Facebook)+, arXiv’19/10/29]
    http://arxiv.org/abs/1910.13461

    View Slide

  45. • BERTの概要
    • 事前学習⾔語モデルの研究の流れ
    – 2019/06まで(BERT, GPT-2, XLNet等)
    – 2019/07〜(RoBERTa, ALBERT, T5等)
    • 注⽬データセットの動向
    • 研究の⽅向性と今後の展望
    45
    ⽬次

    View Slide

  46. 46
    GLUE (⾃然⾔語理解タスク群) ※11/1
    ⼈間
    T5(single): 89.7
    ⼈間: 87.1
    RoBERTa(ensemble): 88.5
    BERT(single): 80.5
    ALBERT(ensemble): 89.4
    XLNet (ensemble): 88.4

    View Slide

  47. 47
    SQuAD 2.0 (機械読解) ※ 11/1
    ⼈間
    ALBERT(ensemble): 89.731/92.215
    ⼈間: 86.831/89.452
    RoBERTa (single): 86.820/89.795
    XLNet (single): 86.346/89.133
    ALBERT(single): 88.107/90.902

    View Slide

  48. 48
    CNN/DM (要約) ※ 11/1
    T5 43.52 21.55 40.69

    View Slide

  49. • BERTの概要
    • 事前学習⾔語モデルの研究の流れ
    – 2019/06まで(BERT, GPT-2, XLNet等)
    – 2019/07〜(RoBERTa, ALBERT, T5等)
    • 注⽬データセットの現状のスコア
    • 研究の⽅向性と今後の展望
    49
    ⽬次

    View Slide

  50. 50
    ⾔語モデル研究の⽅向性
    • データを増やす,質を良くする
    • モデルサイズを⼤きくする
    • モデルサイズを⼩さくする / ⾼速化する
    • 内部分析をする(アテンションの可視化など)
    • マスクの⽅法を⼯夫する
    • 補助タスク(次⽂予測など)を⼯夫する
    • 最適化⼿法を改善する(optimizer, mixed precision, 分散学習, etc.)
    • 系列⻑の制約を無くす
    • 外部知識を利⽤する
    • よいサブワードを考える
    • マルチタスクにする
    • マルチリンガルにする
    • マルチモーダル(⾔語+画像,⾳声など)にする
    • ⽣成タスク(Sequence-to-sequence)に適⽤する(Hot!)

    View Slide

  51. • BERTの登場以降、⾃然⾔語理解タスクの全般に利⽤可能な技
    術への注⽬が⾼まる
    • ⾃然⾔語理解の共通的な⾔語モデルと知識ベースを基に、ど
    うやって応⽤タスクに少サンプルで適応するか︖
    • タスク間でも⾃然⾔語理解能⼒を共有できないか︖
    51
    個別のタスクから⾃然⾔語理解へ
    ⾔語モデル・知識ベース
    読解 含意 換⾔ 要約 翻訳
    対話

    View Slide

  52. • テキストの意味理解を超えたスキルを必要とする質問応答へ
    の展望
    – 数学・集計・論理などの演算能⼒
    – 図・表・データベースの理解
    52
    ⾃然⾔語理解を超えて
    ⾃然⾔語理解
    演算能⼒
    DB・表 図

    View Slide

  53. • 加算、減算、カウン
    ト、ソートなど演算
    能⼒が必要な読解
    データセット
    • 演算もニューラルに
    任せるべきなのか︖
    53
    DROP [Dua(UCI)+,NAACL’19]
    Dheeru Dua et al.: DROP: A Reading
    Comprehension Benchmark Requiring
    Discrete Reasoning Over Paragraphs,
    arXiv
    https://arxiv.org/pdf/1903.00161.pdf

    View Slide

  54. • 複雑なクエリを含む
    Text-to-SQL (Semantic
    Parsing)のデータセット
    • 機械読解の研究として、知
    識源がテキスト+データ
    ベースに拡張された設定に
    拡張できるか︖
    54
    Spider [Yu(Yale U)+,EMNLP18]
    https://arxiv.org/pdf/1809.08887
    Tao Yu et al.: Spider: A Large-Scale Human-Labeled
    Dataset for Complex and Cross-Domain Semantic Parsing
    and Text-to-SQL Task. EMNLP 2018: 3911-3921

    View Slide

  55. • ⾔語+常識+ビジョンの理解
    • ⾔語モデルと画像特徴量だけで
    ⽴ち向かえるのか︖
    55
    Visual Commonsense Reasoning
    [Zellers (U Washington)+, CVPR19]
    Rowan Zellers, Yonatan Bisk, Ali Farhadi, Yejin Choi:
    From Recognition to Cognition: Visual Commonsense Reasoning. CoRR abs/1811.10830 (2018)
    画像と質問に対して、
    回答と理由を選択

    View Slide

  56. 56
    おわりに
    BERT以降,⾔語モデル研究が加速
    ⾃然⾔語理解のレベルが⼤幅に上がる
    BERTがGoogle検索に導⼊されるなど実⽤化も加速
    ⽣成タスク(対話,要約,QA)などでも今後有望
    研究の⽅向性,残された課題は多数存在
    どこを狙って研究開発していくか

    View Slide