TECHNOLOGY NLP AI

【日本語訳】BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding【グーグル】

2023年4月19日

悩んでいる人
悩んでいる人

BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingの日本語訳を教えて!

こういった悩みにお答えします.

本記事の信頼性

  • リアルタイムシステムの研究歴12年.
  • 東大教員の時に,英語でOS(Linuxカーネル)の授業.
  • 2012年9月~2013年8月にアメリカのノースカロライナ大学チャペルヒル校(UNC)コンピュータサイエンス学部で客員研究員として勤務.C言語でリアルタイムLinuxの研究開発.
  • プログラミング歴15年以上,習得している言語: C/C++PythonSolidity/Vyper,Java,Ruby,Go,Rust,D,HTML/CSS/JS/PHP,MATLAB,Verse(UEFN), Assembler (x64,ARM).
  • 東大教員の時に,C++言語で開発した「LLVMコンパイラの拡張」,C言語で開発した独自のリアルタイムOS「Mcube Kernel」GitHubにオープンソースとして公開
  • 2020年1月~現在はアメリカのノースカロライナ州チャペルヒルにあるGuarantee Happiness LLCのCTOとしてECサイト開発やWeb/SNSマーケティングの業務.2022年6月~現在はアメリカのノースカロライナ州チャペルヒルにあるJapanese Tar Heel, Inc.のCEO兼CTO.
  • 最近は自然言語処理AIイーサリアムに関する有益な情報発信に従事.
    • (AI全般を含む)自然言語処理AIの論文の日本語訳や,AIチャットボット(ChatGPT,Auto-GPT,Gemini(旧Bard)など)の記事を50本以上執筆.アメリカのサンフランシスコ(広義のシリコンバレー)の会社でプロンプトエンジニア・マネージャー・Quality Assurance(QA)の業務委託の経験あり.
    • (スマートコントラクトのプログラミングを含む)イーサリアムや仮想通貨全般の記事を200本以上執筆.イギリスのロンドンの会社で仮想通貨の英語の記事を日本語に翻訳する業務委託の経験あり.

こういった私から学べます.

AIのプログラミング言語「C++/Python言語」を学べるおすすめのWebサイトを知りたいあなたはこちらからどうぞ.

独学が難しいあなたは,AIを学べるオンラインプログラミングスクール3社で自分に合うスクールを見つけましょう.後悔はさせません!

国内・海外のAIエンジニアのおすすめ求人サイトを知りたいあなたはこちらからどうぞ.

国内・海外のプロンプトエンジニアのおすすめ求人サイトを知りたいあなたはこちらからどうぞ.

BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingの日本語訳を紹介します.

引用数89,000以上のスター論文です!

グーグルの自然言語処理モデル「BERT」がわかります.

※図表を含む論文の著作権はBERT: Pre-training of Deep Bidirectional Transformers for Language Understandingの著者に帰属します.

BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingの目次は以下になります.

  • Abstract
  • 1章:Introduction
  • 2章:Related work
  • 3章:BERT
  • 4章:Experiments
  • 5章:Ablation Studies
  • 6章:Conclusion
  • References
  • 付録:Appendix for “BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding”
  • 付録A:Additional Details for BERT
  • 付録B:Detailed Experimental Setup
  • 付録C:Additional Ablation Studies

BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingを解説しつつ,私の考えも語ります.

BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingの概要と私の日本語訳は以下になります.

We introduce a new language representation model called BERT, which stands for Bidirectional Encoder Representations from Transformers.
我々は,BERT(Bidirectional Encoder Representations from Transformersの略)と呼ばれる新しい言語表現モデルを紹介する.

Unlike recent language representation models, BERT is designed to pre-train deep bidirectional representations from unlabeled text by jointly conditioning on both left and right context in all layers.
最近の言語表現モデルとは異なり,BERTは,全層で左右両方の文脈を共同で条件付けることにより,ラベルのないテキストから深い双方向表現を事前訓練するように設計されている.

As a result, the pre-trained BERT model can be fine-tuned with just one additional output layer to create state-of-the-art models for a wide range of tasks, such as question answering and language inference, without substantial task-specific architecture modifications.
その結果,事前訓練されたBERTモデルは,タスク固有のアーキテクチャを大幅に変更することなく,質問応答や言語推論などの幅広いタスクのための最先端モデルを作成するために,1つの追加出力層だけでファインチューニングできる.

BERT is conceptually simple and empirically powerful.
BERTは,概念的にシンプルで,経験的に強力である.

It obtains new state-of-the-art results on eleven natural language processing tasks, including pushing the GLUE score to 80.5% (7.7% point absolute improvement), MultiNLI accuracy to 86.7% (4.6% absolute improvement), SQuAD v1.1 question answering Test F1 to 93.2 (1.5 point absolute improvement) and SQuAD v2.0 Test F1 to 83.1 (5.1 point absolute improvement).
BERTは,11の自然言語処理タスクにおいて,GLUEスコアを80.5%(7.7%ポイント絶対向上),MultiNLI精度を86.7%(4.6%絶対向上),SQuAD v1.1質問応答テストF1を93.2(1.5ポイント絶対向上),SQuAD v2.0テストF1を83.1(5.1 ポイント絶対向上)と向上するなど最先端の結果を得ることができる.

https://arxiv.org/abs/1810.04805

私の日本語訳の注意点は以下になります.

  • 概要は英語と日本語を両方掲載しましたが,本文は私の日本語訳のみを掲載していること(英語で読みたいあなたは原文を読みましょう!)
  • 基本的には原文の直訳ですが,わかりにくい箇所は意訳や説明を追加している箇所があること
  • 本文中に登場する表記「(Dai and Le, 2015; Peters et al., 2018a; Radford et al., 2018; Howard and Ruder, 2018)」などは参考文献ですので,興味がある方は本記事の参考文献を参照されたいこと

それでは,BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingの本文を読みすすめましょう!

目次

1章:Introduction(はじめに)

言語モデルの事前訓練は,多くの自然言語処理タスクの改善に有効であることが示されている(Dai and Le, 2015; Peters et al., 2018a; Radford et al., 2018; Howard and Ruder, 2018).

これらの研究には,文章を全体的に分析することで文章間の関係を予測することを目的とした自然言語推論(Bowman et al., 2015; Williams et al., 2018)や言い換え(Dolan and Brockett, 2005)などの文章レベルのタスクが含まれる.

また,モデルがトークンレベルできめ細かい出力を出すことが求められる,名前付きエンティティ認識や質問応答などのトークンレベルのタスク(Tjong Kim Sang and De Meulder, 2003; Rajpurkar et al., 2016)などがある.

事前訓練された言語表現を下流のタスクに適用するための既存の戦略には,特徴量ベースとファインチューニングの2つがある.

ELMo(Peters et al., 2018a)のような特徴量ベースのアプローチは,事前訓練された表現を追加の特徴量として含むタスク固有のアーキテクチャを使用する.

Generative Pre-trained Transformer(OpenAI GPT) (Radford et al., 2018)のようなファインチューニングアプローチは,最小限のタスク固有のパラメータを導入し,すべての事前訓練済みパラメータを単にファインチューニングすることによって下流タスクで訓練される.

2つのアプローチは,事前訓練中に同じ目的関数を共有し,一般的な言語表現を学習するために一方向の言語モデルを使用する.

我々は,現在の技術では,特にファインチューニングのアプローチにおいて,事前訓練された表現の力が制限されることを主張する.

主な制限は,標準的な言語モデルが単方向であることで,事前訓練時に使用できるアーキテクチャの選択が制限されることである.

例えば,OpenAI GPTでは,著者らはleft-to-rightアーキテクチャを使用しており,すべてのトークンはTransformerのSelf-Attention層で前のトークンにしか注意できない(Vaswani et al., 2017).

このような制限は,文レベルのタスクには最適ではなく,質問応答のような,両方向からのコンテキストを取り込むことが重要であるトークンレベルのタスクにファインチューニングベースのアプローチを適用する場合には,非常に有害な可能性がある.

本論文では,BERT: Bidirectional Encoder Representations from Transformersを提案することで,ファインチューニングに基づくアプローチを改善する.

BERTは,Clozeタスク(Taylor, 1953)に着想を得た「Masked Language Model」(MLM)の事前訓練目的を用いることで,先に述べた単方向性の制約を緩和する.

マスク言語モデルは,入力からランダムにいくつかのトークンをマスクし,その文脈のみに基づいてマスクされた単語の元の語彙IDを予測することを目的とする.

left-to-right言語モデルの事前訓練とは異なり,MLMの目的は,左右の文脈を融合する表現を可能にし,深い双方向Transformerを事前訓練できることである.

MLMに加え,テキストペア表現を共同で事前訓練する「次文予測」タスクも使用する.

本論文の貢献は以下の通りである.

  • 言語表現に対する双方向の事前訓練の重要性を実証する.事前訓練に単方向の言語モデルを使用する(Radford et al., 2018)とは異なり,BERTはMLMを使用して,深い双方向表現の事前訓練を可能にする.これは,独立して訓練されたleft-to-right,right-to-leftのLMsの浅い連結を使用する(Peters et al., 2018a)とも対照的である.
  • 我々は,事前訓練された表現が,多くの重く設計されたタスク固有のアーキテクチャの必要性を低減することを示す.BERTは,文レベルおよびトークンレベルのタスクの大規模なスイートで最先端の性能を達成し,多くのタスク固有のアーキテクチャを凌駕する,最初のファインチューニングに基づく表現モデルである.
  • BERTは,11のNLPタスクの技術水準を向上させるものである.コードと事前訓練済みモデルは,https://github.com/google-research/bertで入手できる.

2章:Related Work(関連研究)

一般的な言語表現の事前訓練には長い歴史があり,本章では最も広く使われているアプローチを簡単に紹介する.

2.1節:Unsupervised Feature-based Approaches(教師なし特徴量ベースのアプローチ)

非ニューラル(Brown et al., 1992; Ando and Zhang, 2005; Blitzer et al., 2006),ニューラル(Mikolov et al., 2013; Pennington et al., 2014)の方法を含め,広く適用できる単語の表現を学ぶことは,数十年にわたる活発な研究分野である.

事前訓練された単語埋め込みは,現代のNLPシステムに不可欠な要素であり,ゼロから学習した埋め込みよりも大きな改善をもたらす(Turian et al., 2010).

単語埋め込みベクトルの事前訓練には,left-to-rightの言語モデリング目標(Mnih and Hinton, 2009)や,左右の文脈で正しい単語と間違った単語を識別する目標(Mikolov et al., 2013)が用いられてきた.

これらのアプローチは,文埋め込み(Kiros et al., 2015; Logeswaran and Lee, 2018)やパラグラフ埋め込み(Le and Mikolov, 2014)など,より粗い粒度に汎化されている.

文の表現を訓練するために,先行研究では,次の文の候補をランク付けする目的(Jernite et al., 2017; Logeswaran and Lee, 2018),前の文の表現を与えられた次の文の単語のleft-to-rightの生成(Kiros et al., 2015),またはノイズ除去オートエンコーダ由来の目的(Hill et al., 2016)が用いられてきた.

ELMoとその前身(Peters et al., 2017, 2018a)は,従来の単語埋め込み研究を異なる次元に沿って汎化している.

彼らは,left-to-right,right-to-leftの言語モデルから文脈に応じた特徴量を抽出する.

各トークンの文脈表現は,left-to-rightの表現とright-to-leftの表現を連結したものである.

文脈的な単語埋め込みを既存のタスク固有のアーキテクチャと統合する場合,ELMoは,質問応答(Rajpurkar et al., 2016),感情分析(Socher et al., 2013),名前付きエンティティ認識(Tjong Kim Sang and De Meulder, 2003)などのいくつかの主要NLPベンチマーク(Peters et al., 2018a)の最先端を前進させる.

(Melamud et al., 2016)は,LSTMを用いて左右両方の文脈から1つの単語を予測するタスクを通じて,文脈表現を学習することを提案した.

ELMoと同様に,彼らのモデルは特徴量ベースであり,深い双方向性ではない.

(Fedus et al., 2018)は,clozeタスクがテキスト生成モデルの頑健性を向上させるために利用できることを示す.

2.2節:Unsupervised Fine-tuning Approaches(教師なしファインチューニングのアプローチ)

特徴量ベースのアプローチと同様に,この方向での最初の研究は,ラベルのないテキストから単語埋め込みパラメータを事前訓練させただけである(Collobert and Weston, 2008).

最近では,文脈に沿ったトークン表現を生成する文または文書エンコーダが,ラベルのないテキストから事前訓練され,教師ありの下流タスクのためにファインチューニングされている(Dai and Le, 2015; Howard and Ruder, 2018; Radford et al., 2018).

これらのアプローチの利点は,ゼロから学習する必要のあるパラメータが少ないことである.

少なくとも部分的にはこの利点により,OpenAI GPT(Radford et al., 2018)は,GLUEベンチマーク(Wang et al., 2018a)の多くの文レベルタスクで,以前は最先端だった結果を達成した.

left-to-rightの言語モデリングとオートエンコーダの目標は,このようなモデルの事前訓練に使用されてきた(Howard and Ruder, 2018; Radford et al., 2018; Dai and Le, 2015).

2.3節:Transfer Learning from Supervised Data(教師ありデータからの転移学習)

また,自然言語推論(Conneau et al., 2017)や機械翻訳(McCann et al., 2017)のように,大規模なデータセットを持つ教師ありタスクからの効果的な転移を示す研究もある.

コンピュータビジョンの研究でも,大規模な事前訓練済みモデルからの転移学習の重要性が示されており,効果的なレシピは,ImageNetで事前訓練したモデルをファインチューニングすることである(Deng et al., 2009; Yosinski et al., 2014).

3章:BERT

BERT Figure1
図1:BERTの全体的な事前訓練とファインチューニングの手順.出力層を除けば,事前訓練とファインチューニングの両方で同じアーキテクチャが使用されている.同じ事前訓練済みモデルパラメータは,異なる下流タスクのモデルを初期化するために使用される.ファインチューニングでは,すべてのパラメータがファインチューニングされる.[CLS]はすべての入力例の前に追加される特別な記号で,[SEP]は特別なセパレータトークン(例:質問と回答の分離)である.

本章では,BERTとその詳細な実装を紹介する.

我々のフレームワークには,事前訓練とファインチューニングの2つのステップがある.

事前訓練では,モデルは,異なる事前訓練タスクのラベルのないデータで訓練される.

ファインチューニングのために,BERTモデルは,最初に事前訓練されたパラメータで初期化される.

すべてのパラメータは,下流タスクからのラベル付きデータを使用してファインチューニングされる.

各下流タスクは,同じ事前訓練済みパラメータで初期化されているにもかかわらず,別々のファインチューニングされたモデルを持つ.

図1の質問応答の例が本章の実行例である.

BERTの特徴は,異なるタスク間で統一されたアーキテクチャである.

事前訓練されたアーキテクチャと最終的な下流のアーキテクチャとの間には,最小限の差異しかない.

モデルアーキテクチャ:

BERTのモデルアーキテクチャは,(Vaswani et al., 2017)に記載され,tensor2tensorライブラリで公開されたオリジナルの実装に基づく多層双方向Transformerエンコーダである.

Transformerの使用は一般的になっており,我々の実装はオリジナルとほぼ同じであるため,モデルアーキテクチャの網羅的なバックグラウンドの説明は省略し,(Vaswani et al., 2017)のほか,「The Annotated Transformer」などの優れたガイドを読者に紹介することにする.

本研究では,層数(Transformerブロック)をL,隠れサイズをH,Self-Attention Headsの数をAと表記している.

※すべてのケースで,フィードフォワード/フィルタのサイズを4H,すなわちH=768の場合は3072,H=1024の場合は4096に設定した.

主に2つのモデルサイズでの結果を報告する.

  • \(BERT_{BASE}\)(L=12,H=768,A=12,Total Parameters=110M)
  • \(BERT_{LARGE}\)(L=24,H=1024,A=16,Total Parameters=340M)

\(BERT_{BASE}\)は,比較のためにOpenAI GPTと同じモデルサイズにした.

しかし,BERT Transformerは双方向のSelf-Attentionを使用し,GPT Transformerは,すべてのトークンがその左側の文脈にしかAttentionできない制約されたSelf-Attentionを使用していることが決定的である.

※なお文献では,双方向のTransformerは「Transformerエンコーダ」と呼ばれることが多く,左文脈のみのバージョンはテキスト生成に使用できるため「Transformerデコーダ」と呼ばれることが多い.

入出力表現:

BERTが様々な下流タスクに対応できるように,我々の入力表現は,単一の文と文のペア(例えば,<Question, Answer>)の両方を1つのトークン列で明確に表現することができるようになっている.

この作業を通じて,「文」は,実際の言語文ではなく,連続したテキストの任意のスパンになる.

「シーケンス」とは,BERTへの入力トークン列のことであり,1つの文の場合もあれば,2つの文が一緒になっている場合もある.

30,000トークンの語彙を持つWordPiece embeddings(Wu et al., 2016)を使用する.

すべてのシーケンスの最初のトークンは,常に特別な分類トークン([CLS])である.

このトークンに対応する最終的な隠れ状態は,分類タスクのための集合的なシーケンス表現として使用される.

文のペアは1つのシーケンスにまとめられる.

文は2つの方法で区別される.

まず,特別なトークン([SEP])で文を区切る.

次に,すべてのトークンに,それが文Aに属するか文Bに属するかを示す学習済み埋め込みを追加する.

図1に示すように,入力埋め込みをE,特別な[CLS]トークンの最終隠れベクトルを\(C \in \mathbb{R}^H\),i番目の入力トークンの最終隠れベクトルを\(T_i \in \mathbb{R}^H\)と表記する.

BERT Figure2
図2:BERTの入力表現.入力埋め込みは,トークン埋め込み,セグメンテーション埋め込み,位置埋め込みを合計したものである.

与えられたトークンに対して,対応するトークン,セグメント,位置の埋め込みを合計して,その入力表現を構築する.

この構築の視覚化は,図2に示すとおりである.

3.1節:Pre-training BERT(事前訓練BERT)

(Peters et al., 2018a)および(Radford et al., 2018)とは異なり,BERTを事前訓練するために従来のleft-to-rightまたはright-to-leftの言語モデルは使用しない.

その代わりに,本章で説明する2つの教師なしタスクを使ってBERTを事前訓練する.

このステップは,図1の左側部分に示されている.

タスク#1:Masked LM

直感的には,深い双方向モデルは,left-to-rightモデルや,left-to-rightとright-to-leftモデルの浅い連結のいずれよりも厳密に強力であると信じることは妥当である.

残念ながら,標準的な条件付き言語モデルは,left-to-rightかright-to-leftしか学習できない.

双方向の条件付けは,各単語が間接的に「自分自身を見る」ことを可能にし,モデルは,多層的な文脈の中で,ターゲット単語を些細に予測できるからである.

深い双方向表現を訓練するためには,入力トークンの何割かをランダムにマスクし,そのマスクされたトークンを予測すればよい.

この手順を「Masked LM」(MLM)と呼ぶが,文献ではClozeタスクと呼ばれることが多い(Taylor, 1953).

この場合,マスクトークンに対応する最終的な隠れベクトルは,標準的なLMと同様に,語彙に対する出力softmaxに供給される.

全ての実験において,各シーケンスに含まれる全てのWordPieceトークンの15%をランダムにマスクする.

ノイズ除去オートエンコーダ(Vincent et al., 2008)とは対照的に,入力全体を再構築するのではなく,マスクされた単語のみを予測する.

これにより,双方向の事前訓練モデルを得ることができるが,ファインチューニングの際に[MASK]トークンが出現しないため,事前訓練とファインチューニングの間にミスマッチが生じるという欠点がある.

これを軽減するために,「マスク」された単語を実際の[MASK]トークンに置き換えるとは限らない.

訓練データ作成者は,予測のためにトークンの位置の15%をランダムに選択する.

i番目のトークンが選ばれた場合,i番目のトークンを(1)80%の確率で[MASK]トークンに置き換える,(2)10%の確率でランダムなトークンに置き換える,(3)10%の確率で変更しないi番目のトークンに置き換える.

そして,\(T_i\)はクロスエントロピー損失で元のトークンを予測するために使用される.

付録C.2において,この手順のバリエーションを比較する.

タスク#2:Next Sentence Prediction(NSP)

質問応答(QA:Question Answering)や自然言語推論(NLI:Natural Language Inference)などの多くの重要な下流タスクは,言語モデリングでは直接捉えられない2文の関係を理解することに基づいている.

文の関係を理解するモデルを学習するために,任意の単言語コーパスから些細なことで生成できる二値化された次文予測タスクに対して事前訓練を行う.

具体的には,各予習例で文AとBを選択する際,50%はBがAに続く実際の次文(IsNextとラベル付け),50%はコーパスからのランダム文(NotNextとラベル付け)である.

図1に示すように,Cは次文予測(NSP:Next Sentence Prediction)のために使用される.

※最終モデルは,NSPで97%~98%の精度を達成.

シンプルであるが,このタスクに向けた事前訓練がQAとNLIの双方にとって非常に有益であることを5.1節で実証している.

※ベクトルCは,NSPで学習したものなので,ファインチューニングをしないと意味のない文表現になってしまう.

NSPタスクは,(Jernite et al., 2017)および(Logeswaran and Lee, 2018)で使用される表現学習目的に密接に関連している.

しかし,先行研究では,文埋め込みのみが下流タスクに転移され,BERTはエンドタスクモデルパラメータを初期化するためにすべてのパラメータを転移している.

事前訓練データ

事前訓練手順は,言語モデルの事前訓練に関する既存の文献にほぼ従っている.

事前訓練コーパスには,BooksCorpus(800M words)(Zhu et al., 2015)とEnglish Wikipedia(2,500M words)を使用する.

Wikipediaでは,テキストパッセージのみを抽出し,リスト,テーブル,ヘッダは無視する.

長い連続したシーケンスを抽出するためには,Billion Word Benchmark(Chelba et al., 2013)のようなシャッフルされた文レベルのコーパスではなく,文書レベルのコーパスを使用することが重要である.

3.2節:Fine-tuning BERT(ファインチューニングBERT)

TransformerのSelf-Attention機構により,BERTは,適切な入力と出力を交換することによって,単一のテキストまたはテキストペアを含むかどうかにかかわらず,多くの下流タスクをモデル化することができるので,ファインチューニングは簡単である.

テキストペアを含むアプリケーションの場合,一般的なパターンは,(Parikh et al., 2016; Seo et al., 2017)のように,双方向のCross Attentionを適用する前にテキストペアを独立してエンコードすることである.

BERTは,Self-Attentionを用いて連結されたテキストペアをエンコードすると,2つの文の間の双方向Cross Attentionが効果的に含まれるため,代わりにSelf-Attention機構を用いてこれらの2つの段階を統一する.

各タスクでは,タスク固有の入力と出力をBERTにプラグインするだけで,すべてのパラメータをEnd-to-Endでファインチューニングする.

入力では,事前訓練の文Aと文Bが,(1)言い換えにおける文のペア,(2)エンテイルメントにおける仮説と前提のペア,(3)質問応答における質問とパッセージのペア,(4)テキスト分類やシーケンスタグ付けにおける退化したtext-\(\phi\)(空集合)ペアに相当する.

出力では,トークン表現はシーケンスタギングや質問応答などのトークンレベルのタスクのための出力層に供給され,[CLS]表現はエンテイルメントや感情分析などの分類のための出力層に供給される.

事前訓練に比べ,ファインチューニングは比較的安価である.

本論文の結果はすべて,全く同じ事前訓練済みモデルから始めて,単一のCloud TPUで最大1時間,GPUで数時間で再現することができる

※例えば,BERT SQuADモデルは,1つのCloud TPUで約30分で学習させることができ,91.0%のDev F1スコアを達成することができる.

タスク固有の詳細については,4章の対応するサブセクションで説明する.

より詳細な情報は付録A.5で確認できる.

4章:Experiments(実験)

本章では,11のNLPタスクにおけるBERTのファインチューニングの結果を紹介する.

4.1節:GLUE

General Language Understanding Evaluation(GLUE)ベンチマーク(Wang et al., 2018a)は,多様な自然言語理解タスクのコレクションである.

GLUEデータセットの詳細な説明は,付録B.1に含まれている.

GLUEでファインチューニングを行うために,3章で説明したように入力シーケンス(単文または文のペアの場合)を表現し,最初の入力トークン([CLS])に対応する最終隠れベクトル\(C \in \mathbb{R}^H\)を集約表現として使用する.

ファインチューニングの際に導入される唯一の新しいパラメータは,分類層の重み\(W \in \mathbb{R}^{K \times H}\)であり,ここでKはラベルの数である.

CとWを用いた標準的な分類損失,すなわち\(log(softmax(CW^T))\)を計算する.

バッチサイズ32を使用し,すべてのGLUEタスクについて,データ上で3エポック分のファインチューニングを行った.

各タスクについて,Devセットで最適なファインチューニング学習率(5e-5,4e-5,3e-5,2e-5の中から)を選択した.

さらに,\(BERT_{LARGE}\)では,小さなデータセットではファインチューニングが不安定になることがあることがわかったので,ランダム再スタートを何度か行い,Devセットで最適なモデルを選択した.

ランダム再スタートでは,同じ事前訓練済みのチェックポイントを使用するが,ファインチューニングのデータシャッフリングと分類器層の初期化を異なる方法で実行する.

※GLUEのデータセット分布にはTestラベルが含まれておらず,\(BERT_{BASE}\)と\(BERT_{LARGE}\)のそれぞれについて,GLUE評価サーバの提出は1回のみとした.

BERT Table1
表1:GLUEテストの結果(評価サーバ(https://gluebenchmark.com/leaderboard)による採点).各タスクの下にある数字は,訓練例の数を表している.「平均」(Average)欄は,問題のあるWNLIセットを除外しているため,GLUEの公式スコアとは若干異なっている(https://gluebenchmark.com/faqの(10)参照).BERTとOpenAI GPTはシングルモデル,シングルタスクである.QQPとMRPCはF1スコア,STS-Bはスピアマンの順位相関係数,その他のタスクは精度スコアが報告されている.BERTを構成要素の1つとして使用しているエントリーは除外している.

結果を表1に示す.

\(BERT_{BASE}\)と\(BERT_{LARGE}\)は,すべてのタスクですべてのシステムを大幅に上回り,従来の最先端技術の手法と比べてそれぞれ4.5%と7.0%の平均精度向上を達成した.

\(BERT_{BASE}\)とOpenAI GPTは,Attentionマスキングを除けば,モデルアーキテクチャの点でほぼ同じであることに注意されたい.

最大かつ最も広く報告されているGLUEタスクであるMNLIでは,BERTは4.6%の絶対精度向上を達成している.

公式GLUEリーダーボードでは,BERTLARGEは80.5のスコアを獲得し,OpenAI GPTは執筆日現在で72.8を獲得している.

\(BERT_{LARGE}\)は,すべてのタスク,特に訓練データが非常に少ないタスクにおいて,\(BERT_{BASE}\)を大幅に上回ることがわかった.

モデルサイズの効果については,5.2節でより詳細に検討する.

4.2節:SQuAD v1.1

Stanford Question Answering Dataset (SQuAD v1.1)は,100kのクラウドソーシングによる質問回答のペアのコレクションである(Rajpurkar et al., 2016).

質問と回答を含むWikipediaの一節が与えられた場合,タスクは一節の中の答えのテキストスパンを予測することである.

図1に示すように,質問回答タスクでは,入力された質問と文章を1つのパックシーケンスとして表現し,質問はA埋め込み,文章はB埋め込みを使用する.

開始ベクトル\(S \in \mathbb{R}^H\)と終了ベクトル\(E \in \mathbb{R}^H\)は,ファインチューニングの際にのみ導入する.

単語iが回答スパンの開始である確率は,\(T_i\)とSの間のドット積と,段落内のすべての単語に対するsoftmaxとして計算される.

$$P_i = \frac{e^{S \cdot T_i}}{\sum_j e^{S \cdot T_j}}$$

回答スパンの終点については,類似の式を用いる.

位置iから位置jまでの候補スパンのスコアは\(S \cdot T_i + E \cdot T_j\)と定義され,\(j \geq i\)が予測として使用される最大スコアのスパンが使用される.

訓練目標は,正しい開始位置と終了位置の対数尤度の合計である.

学習率5e-5,バッチサイズ32で,3エポック分のファインチューニングをする.

BERT Table2
表2:SQuAD 1.1の結果.BERTアンサンブルは,異なる事前訓練チェックポイントとファインチューニングの種を使用する7倍のシステムである.

表2は,リーダーボードの上位エントリーと,公開された上位システムの結果(Seo et al., 2017; Clark and Gardner, 2018; Peters et al., 2018a; Hu et al., 2018)を示す.

SQuADリーダーボードの上位結果は,最新の公開システムの説明が利用できず,システムを訓練する際に任意の公開データを使用することが許可されている.

※QANetは(Yu et al., 2018)に記載されているが,掲載後にシステムが大幅に改善されている.

そこで,SQuADでファインチューニングを行う前に,まずTriviaQA(Joshi et al., 2017)でファインチューニングを行うことで,我々のシステムで適度なデータ拡張を行う.

※訳注:原文のbeforはbeforeの間違い.

当社の最高性能のシステムは,アンサンブルでは+1.5 F1,単一システムとしては+1.3 F1,トップリーダーボードシステムを上回った.

実際,我々の単一のBERTモデルは,F1スコアの点でトップのアンサンブルシステムを凌駕している.

TriviaQAのファインチューニングデータがない場合,0.1~0.4 F1の損失しかなく,依然としてすべての既存システムを大差で上回っている.

※TriviaQAデータは,TriviaQA-Wikiから,文書中の最初の400個のトークンのうち,提供された可能な回答のうち少なくとも1つを含む段落から構成されている.

4.3節:SQuAD v2.0

SQuAD 2.0タスクは,SQuAD 1.1の問題定義を拡張し,提供されたパラグラフに短い答えが存在しない可能性を許容して,問題をより現実的にしている.

このタスクのために,SQuAD v1.1 BERTモデルを拡張する簡単なアプローチを使用する.

答えを持たない質問を,[CLS]トークンを開始と終了とする回答スパンを持つものとして扱う.

回答スパンの開始と終了の位置の確率空間は,[CLS]トークンの位置を含むように拡張される.

予測では,無回答スパン\(s_{null} = S \cdot C + E \cdot C\)のスコアと最良のnon-nullスパン\(s_{\hat{i},j} = max_{j \geq i} S \cdot T_i + E \cdot T_j\)のスコアを比較する.

\(s_{\hat{i},j} > s_{null} + \tau\)のとき,non-null回答を予測する.

閾値\(\tau\)は,F1を最大化するためにdevセットで選択される.

このモデルにはTriviaQAのデータは使用しなかった.

学習率5e-5,バッチサイズ48で,2エポックファインチューニングを行った.

BERT Table3
表3:SQuAD 2.0の結果.BERTを構成要素の1つとして使用しているエントリーは除外している.

BERTをコンポーネントの1つとして使用するシステムを除いて,先行するリーダーボードエントリーおよびトップ公開研究(Sun et al., 2018; Wang et al., 2018b)と比較した結果は,表3に示されている.

前回のベストシステムと比較して,+5.1 F1向上が確認された.

4.4節:SWAG

Situations With Adversarial Generations(SWAG)データセットには,根拠あるコモンセンス推論を評価する113kセンテンスペアの補完例が含まれている(Zellers et al., 2018).

文が与えられたとき,4つの選択肢の中から最も妥当な続きを選ぶというタスクである.

SWAGデータセットでファインチューニングを行う場合,与えられた文(文A)と可能性のある続き(文B)の連結を含む4つの入力シーケンスをそれぞれ構築する.

タスク固有のパラメータは,[CLS]トークン表現Cとのドット積が各選択肢のスコアを示すベクトルのみで,softmax層で正規化される.

BERT Table4
表4:SWAGのDevとTestの正確さ.人間の性能は,SWAGの論文で報告されているように,100サンプルで測定されている.

学習率2e-5,バッチサイズ16で,3エポック分のモデルのファインチューニングを行った.

結果は表4に示す.

\(BERT_{LARGE}\)は,著者のベースラインESIM+ELMoシステムを+27.1%,OpenAI GPTを8.3%上回った.

5章:Ablation Studies(アブレーション実験)

本章では,BERTの多くの側面について,その相対的な重要性をよりよく理解するために,アブレーション実験を実施する.

その他のアブレーション実験については,付録Cに記載する.

5.1節:Effect of Pre-training Tasks(事前訓練タスクの効果)

\(BERT_{BASE}\)と全く同じ事前訓練データ,ファインチューニングスキーム,ハイパーパラメータを用いて2つの事前訓練目標を評価することで,BERTの深い双方向性の重要性を実証している.

NSPなし(No NSP):

「Masked LM」(MLM)を用いて学習するが,「次文予測」(NSP:Next Sentence Prediction)のタスクがない双方向モデルである.

LTR&NSPなし(LTR&No NSP):

MLMではなく,標準的なLeft-to-Right(LTR)LMを用いて学習させた左文脈のみのモデル.

左限定制約を外すと,事前訓練とファインチューニングのミスマッチが生じ,下流の性能が低下するため,ファインチューニングの際にも左限定制約を適用した.

さらに,このモデルはNSPタスクなしで事前訓練された.

これはOpenAI GPTと直接比較することができるが,より大きな訓練データセット,入力表現,およびファインチューニングスキームを使用している.

BERT Table5
表5:\(BERT_{BASE}\)アーキテクチャを用いた事前訓練タスクに対するアブレーション.「No NSP」は,次の文の予測タスクを行わずに訓練したものである.「LTR&No NSP」は,OpenAI GPTのように,次の文の予測を行わず,left-to-right LMとして学習させる.「+ BiLSTM」は,ファインチューニングの際に「LTR + No NSP」モデルの上にランダムに初期化されたBiLSTMを追加する.

まず,NSPタスクがもたらす影響について検証する.

表5では,QNLI,MNLI,SQuAD 1.1において,NSPを削除すると性能が大きく低下することが示されている.

次に,「NSPなし」と「LTR&NSPなし」を比較することで,双方向表現の学習による影響を評価する.

LTRモデルはすべてのタスクでMLMモデルより性能が悪く,MRPCとSQuADで大きく低下した.

SQuADの場合,トークンレベルの隠れ状態には右側の文脈がないため,LTRモデルがトークン予測に劣ることは直感的に明らかである.

LTRシステムの強化に誠実に取り組むため,ランダムに初期化されたBiLSTMを上乗せした.

この結果,SQuADの結果は大幅に改善されたが,それでも訓練済みの双方向モデルよりはるかに悪い結果となっている.

BiLSTMはGLUEタスクの性能を低下させている.

ELMoのように,LTRモデルとRTLモデルを別々に訓練し,各トークンを2つのモデルの連結として表現することも可能であることは認識している.

しかし,(a)これは単一の双方向モデルの2倍のコストがかかる.(b)RTLモデルは質問に対する答えを条件付けることができないため,QAのようなタスクでは直感的でない.(c)これは,すべての層で左右両方のコンテキストを使用できるため,深い双方向モデルよりも厳密に性能が劣ることになる.

5.2節:Effect of Model Size(モデルサイズの効果)

本節では,ファインチューニングタスクの精度に対するモデルサイズの影響を調査する.

我々は,層数,隠れユニット数,およびAttetion Headsの数が異なる複数のBERTモデルを訓練したが,それ以外は前述のように同じハイパーパラメータと訓練手順を使用した.

BERT Table6
表6:BERTモデルサイズに対するアブレーション.#L=層数,#H=隠れサイズ,#A=Attention Heads数.「LM (ppl)」は,保持された訓練データのマスクされたLMのパープレキシティである.

選択したGLUEタスクの結果を表6に示す.

この表では,5回のランダムなファインチューニングの再スタートによる平均Dev Set精度を報告している.

より大きなモデルは,4つのデータセットすべてにおいて厳密な精度向上につながることがわかる.

たとえMRPCが3,600のラベル付き訓練例しかなく,事前訓練タスクと大きく異なる場合でもである.

また,既存の文献と比較して,すでに非常に大きなモデルの上に,このような大きな改善を達成することができたことは,おそらく驚くべきことである.

例えば,(Vaswani et al., 2017)で探索された最大のTransformerは,エンコーダのパラメータが100Mの(L=6,H=1024,A=16)であり,我々が文献で見つけた最大のTransformerは,パラメータ235Mの(L=64,H=512,A=2)である(Al-Rfou et al., 2018).

これに対して,\(BERT_{BASE}\)は110Mのパラメータを含み,\(BERT_{LARGE}\)は340Mのパラメータを含んでいる.

機械翻訳や言語モデリングのような大規模なタスクでは,モデルサイズを大きくすることで継続的な改善につながることは以前から知られており,表6に示すホールドアウトした訓練データのLMパープレキシティによって実証されている.

しかし,我々は,モデルが十分に事前訓練されていることを条件に,極端なモデルサイズへのスケーリングが非常に小規模なタスクでも大きな改善につながることを説得的に示した最初の研究であると考えている.

(Peters et al., 2018b)は,事前訓練したbi-LMのサイズを2層から4層に増やすことによる下流タスクへの影響について,さまざまな結果を提示した.

(Melamud et al., 2016)は,隠れ次元サイズを200から600に増やすと効果があるが,さらに1,000に増やすとさらなる改善はもたらさなかったと一応言及している.

これらの先行研究はどちらも特徴量ベースのアプローチを使用していた.

我々は,モデルが下流のタスク上で直接ファインチューニングされ,非常に少数のランダムに初期化された追加パラメータのみを使用する場合,タスク固有のモデルは,下流のタスクデータが非常に小さい場合でも,より大きく,より表現力の高い事前訓練された表現から利益を得られるという仮説を立てている.

5.3節:Feature-based Approach with BERT(BERTを用いた特徴量ベースのアプローチ)

これまで発表されたBERTの成果は,事前訓練したモデルに簡単な分類層を追加し,下流タスクで全パラメータを共同でファインチューニングするファインチューニングアプローチが用いられている.

しかし,事前訓練済みモデルから固定的な特徴を抽出する特徴量ベースアプローチには,ある利点がある.

第1に,すべてのタスクがTransformerエンコーダアーキテクチャで簡単に表現できるわけではないため,タスクに特化したモデルアーキテクチャを追加する必要がある.

第2に,訓練データの高価な表現を一度事前計算し,この表現の上に安価なモデルで多くの実験を行うことには,大きな計算上の利点がある.

本章では,BERTをCoNLL-2003 Named Entity Recognition(NER)task(Tjong Kim Sang and De Meulder, 2003)に適用して,2つのアプローチを比較する.

BERTの入力には,case-preserving WordPieceモデルを使用し,データによって提供される最大限の文書コンテキストを含める.

※訳注:case preserving(ケースプリザービング)とは,コンピュータのプログラムやシステムが,テキストデータ内の大文字と小文字を区別せずに保存することを意味します.つまり,テキスト内の大文字と小文字の区別は保持されますが,保存された形式は大文字と小文字が混在した状態で保存されます.

標準的な手法に従って,これをタグ付けタスクとして定式化するが,出力にはCRFレイヤを使用しない.

最初のサブトークンの表現を,NERラベルセットに対するトークンレベルの分類器への入力として使用する.

ファインチューニングアプローチをアブレーションするために,BERTのパラメータをファインチューニングすることなく,1つ以上の層から活性度を抽出することで,特徴量ベースのアプローチを適用する.

これらの文脈埋め込みは,分類層の前にランダムに初期化された2層の768次元BiLSTMへの入力として使用される.

結果は表7に示すとおりである.

\(BERT_{LARGE}\)は最先端の手法と競争力のある性能を発揮している.

最も性能の高い方法は,事前訓練されたTransformerの上位4つの隠れ層からのトークン表現を連結するもので,モデル全体をファインチューニングするのとわずか0.3 F1差である.

これは,BERTが,ファインチューニングと特徴量ベースのアプローチの両方に有効であることを実証している.

6章:Conclusion(結論)

言語モデルを用いた転移学習による最近の経験的な改善により,豊富な教師なし事前訓練が多くの言語理解システムに不可欠であることが示された.

特に,これらの結果は,低リソースタスクであっても,深い一方向アーキテクチャの恩恵を受けることを可能にする.

我々の大きな貢献は,これらの知見をさらに深層双方向アーキテクチャに汎化し,同じ事前訓練済みモデルで幅広いNLPタスクに取り組むことを可能にすることである.

References(参考文献)

  1. (Akbik et al., 2018) Alan Akbik, Duncan Blythe, and Roland Vollgraf. 2018. Contextual string embeddings for sequence labeling. In Proceedings of the 27th International Conference on Computational Linguistics, pages 1638–1649.
  2. (Al-Rfou et al., 2018) Rami Al-Rfou, Dokook Choe, Noah Constant, Mandy Guo, and Llion Jones. 2018. Character-level language modeling with deeper self-attention. arXiv preprint arXiv:1808.04444.
  3. (Ando and Zhang, 2005) Rie Kubota Ando and Tong Zhang. 2005. A framework for learning predictive structures from multiple tasks and unlabeled data. Journal of Machine Learning Research, 6(Nov):1817–1853.
  4. (Bentivogli et al., 2009) Luisa Bentivogli, Bernardo Magnini, Ido Dagan, Hoa Trang Dang, and Danilo Giampiccolo. 2009. The fifth PASCAL recognizing textual entailment challenge. In TAC. NIST.
  5. (Blitzer et al., 2006) John Blitzer, Ryan McDonald, and Fernando Pereira. 2006. Domain adaptation with structural correspondence learning. In Proceedings of the 2006 conference on empirical methods in natural language processing, pages 120–128. Association for Computational Linguistics.
  6. (Bowman et al., 2015) Samuel R. Bowman, Gabor Angeli, Christopher Potts, and Christopher D. Manning. 2015. A large annotated corpus for learning natural language inference. In EMNLP. Association for Computational Linguistics.
  7. (Brown et al., 1992) Peter F Brown, Peter V Desouza, Robert L Mercer, Vincent J Della Pietra, and Jenifer C Lai. 1992. Class-based n-gram models of natural language. Computational linguistics, 18(4):467–479.
  8. (Cer et al., 2017) Daniel Cer, Mona Diab, Eneko Agirre, Inigo Lopez-Gazpio, and Lucia Specia. 2017. Semeval-2017 task 1: Semantic textual similarity multilingual and crosslingual focused evaluation. In Proceedings of the 11th International Workshop on Semantic Evaluation (SemEval-2017), pages 1–14, Vancouver, Canada. Association for Computational Linguistics.
  9. (Chelba et al., 2013) Ciprian Chelba, Tomas Mikolov, Mike Schuster, Qi Ge, Thorsten Brants, Phillipp Koehn, and Tony Robinson. 2013. One billion word benchmark for measuring progress in statistical language modeling. arXiv preprint arXiv:1312.3005.
  10. (Chen et al., 2018) Z. Chen, H. Zhang, X. Zhang, and L. Zhao. 2018. Quora question pairs.
  11. (Clark and Gardner, 2018) Christopher Clark and Matt Gardner. 2018. Simple and effective multi-paragraph reading comprehension. In ACL.
  12. (Clark et al., 2018) Kevin Clark, Minh-Thang Luong, Christopher D Manning, and Quoc Le. 2018. Semi-supervised sequence modeling with cross-view training. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing, pages 1914–1925.
  13. (Collobert and Weston, 2008) Ronan Collobert and Jason Weston. 2008. A unified architecture for natural language processing: Deep neural networks with multitask learning. In Proceedings of the 25th international conference on Machine learning, pages 160–167. ACM.
  14. (Conneau et al., 2017) Alexis Conneau, Douwe Kiela, Holger Schwenk, Lo¨ıc Barrault, and Antoine Bordes. 2017. Supervised learning of universal sentence representations from natural language inference data. In Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing, pages 670–680, Copenhagen, Denmark. Association for Computational Linguistics.
  15. (Dai and Le, 2015) Andrew M Dai and Quoc V Le. 2015. Semi-supervised sequence learning. In Advances in neural information processing systems, pages 3079–3087.
  16. (Deng et al., 2009) J. Deng,W. Dong, R. Socher, L.-J. Li, K. Li, and L. Fei- Fei. 2009. ImageNet: A Large-Scale Hierarchical Image Database. In CVPR09.
  17. (Dolan and Brockett, 2005) William B Dolan and Chris Brockett. 2005. Automatically constructing a corpus of sentential paraphrases. In Proceedings of the Third International Workshop on Paraphrasing (IWP2005).
  18. (Fedus et al., 2018) William Fedus, Ian Goodfellow, and Andrew M Dai. 2018. Maskgan: Better text generation via filling in the . arXiv preprint arXiv:1801.07736.
  19. (Hendrycks and Gimpel, 2016) Dan Hendrycks and Kevin Gimpel. 2016. Bridging nonlinearities and stochastic regularizers with gaussian error linear units. CoRR, abs/1606.08415.
  20. (Hill et al., 2016) Felix Hill, Kyunghyun Cho, and Anna Korhonen. 2016. Learning distributed representations of sentences from unlabelled data. In Proceedings of the 2016 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. Association for Computational Linguistics.
  21. (Howard and Ruder, 2018) Jeremy Howard and Sebastian Ruder. 2018. Universal language model fine-tuning for text classification. In ACL. Association for Computational Linguistics.
  22. (Hu et al., 2018) Minghao Hu, Yuxing Peng, Zhen Huang, Xipeng Qiu, Furu Wei, and Ming Zhou. 2018. Reinforced mnemonic reader for machine reading comprehension. In IJCAI.
  23. (Jernite et al., 2017) Yacine Jernite, Samuel R. Bowman, and David Sontag. 2017. Discourse-based objectives for fast unsupervised sentence representation learning. CoRR, abs/1705.00557.
  24. (Joshi et al., 2017) Mandar Joshi, Eunsol Choi, Daniel S Weld, and Luke Zettlemoyer. 2017. Triviaqa: A large scale distantly supervised challenge dataset for reading comprehension. In ACL.
  25. (Kiros et al., 2015) Ryan Kiros, Yukun Zhu, Ruslan R Salakhutdinov, Richard Zemel, Raquel Urtasun, Antonio Torralba, and Sanja Fidler. 2015. Skip-thought vectors. In Advances in neural information processing systems, pages 3294–3302.
  26. (Le and Mikolov, 2014) Quoc Le and Tomas Mikolov. 2014. Distributed representations of sentences and documents. In International Conference on Machine Learning, pages 1188–1196.
  27. (Levesque et al., 2011) Hector J Levesque, Ernest Davis, and Leora Morgenstern. 2011. The winograd schema challenge. In Aaai spring symposium: Logical formalizations of commonsense reasoning, volume 46, page 47.
  28. (Logeswaran and Lee, 2018) Lajanugen Logeswaran and Honglak Lee. 2018. An efficient framework for learning sentence representations. In International Conference on Learning Representations.
  29. (McCann et al., 2017) Bryan McCann, James Bradbury, Caiming Xiong, and Richard Socher. 2017. Learned in translation: Contextualized word vectors. In NIPS.
  30. (Melamud et al., 2016) Oren Melamud, Jacob Goldberger, and Ido Dagan. 2016. context2vec: Learning generic context embedding with bidirectional LSTM. In CoNLL.
  31. (Mikolov et al., 2013) Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg S Corrado, and Jeff Dean. 2013. Distributed representations of words and phrases and their compositionality. In Advances in Neural Information Processing Systems 26, pages 3111–3119. Curran Associates, Inc.
  32. (Mnih and Hinton, 2009) Andriy Mnih and Geoffrey E Hinton. 2009. A scalable hierarchical distributed language model. In D. Koller, D. Schuurmans, Y. Bengio, and L. Bottou, editors, Advances in Neural Information Processing Systems 21, pages 1081–1088. Curran Associates, Inc.
  33. (Parikh et al., 2016) Ankur P Parikh, Oscar T¨ackstr¨om, Dipanjan Das, and Jakob Uszkoreit. 2016. A decomposable attention model for natural language inference. In EMNLP.
  34. (Pennington et al., 2014) Jeffrey Pennington, Richard Socher, and Christopher D. Manning. 2014. Glove: Global vectors for word representation. In Empirical Methods in Natural Language Processing (EMNLP), pages 1532–1543.
  35. (Peters et al., 2017) Matthew Peters, Waleed Ammar, Chandra Bhagavatula, and Russell Power. 2017. Semi-supervised sequence tagging with bidirectional language models. In ACL.
  36. (Peters et al., 2018a) Matthew Peters, Mark Neumann, Mohit Iyyer, Matt Gardner, Christopher Clark, Kenton Lee, and Luke Zettlemoyer. 2018a. Deep contextualized word representations. In NAACL.
  37. (Peters et al., 2018b) Matthew Peters, Mark Neumann, Luke Zettlemoyer, and Wen-tau Yih. 2018b. Dissecting contextual word embeddings: Architecture and representation. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing, pages 1499–1509.
  38. (Radford et al., 2018) Alec Radford, Karthik Narasimhan, Tim Salimans, and Ilya Sutskever. 2018. Improving language understanding with unsupervised learning. Technical report, OpenAI.
  39. (Rajpurkar et al., 2016) Pranav Rajpurkar, Jian Zhang, Konstantin Lopyrev, and Percy Liang. 2016. Squad: 100,000+ questions for machine comprehension of text. In Proceedings of the 2016 Conference on Empirical Methods in Natural Language Processing, pages 2383–2392.
  40. (Seo et al., 2017) Minjoon Seo, Aniruddha Kembhavi, Ali Farhadi, and Hannaneh Hajishirzi. 2017. Bidirectional attention flow for machine comprehension. In ICLR.
  41. (Socher et al., 2013) Richard Socher, Alex Perelygin, Jean Wu, Jason Chuang, Christopher D Manning, Andrew Ng, and Christopher Potts. 2013. Recursive deep models for semantic compositionality over a sentiment treebank. In Proceedings of the 2013 conference on empirical methods in natural language processing, pages 1631–1642.
  42. (Sun et al., 2018) Fu Sun, Linyang Li, Xipeng Qiu, and Yang Liu. 2018. U-net: Machine reading comprehension with unanswerable questions. arXiv preprint arXiv:1810.06638.
  43. (Taylor, 1953) Wilson L Taylor. 1953. Cloze procedure: A new tool for measuring readability. Journalism Bulletin, 30(4):415–433.
  44. (Tjong Kim Sang and De Meulder, 2003) Erik F Tjong Kim Sang and Fien De Meulder. 2003. Introduction to the conll-2003 shared task: Language-independent named entity recognition. In CoNLL.
  45. (Turian et al., 2010) Joseph Turian, Lev Ratinov, and Yoshua Bengio. 2010. Word representations: A simple and general method for semi-supervised learning. In Proceedings of the 48th Annual Meeting of the Association for Computational Linguistics, ACL ’10, pages 384–394.
  46. (Vaswani et al., 2017) Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N Gomez, Lukasz Kaiser, and Illia Polosukhin. 2017. Attention is all you need. In Advances in Neural Information Processing Systems, pages 6000–6010.
  47. (Vincent et al., 2008) Pascal Vincent, Hugo Larochelle, Yoshua Bengio, and Pierre-Antoine Manzagol. 2008. Extracting and composing robust features with denoising autoencoders. In Proceedings of the 25th international conference on Machine learning, pages 1096–1103. ACM.
  48. (Wang et al., 2018a) Alex Wang, Amanpreet Singh, Julian Michael, Felix Hill, Omer Levy, and Samuel Bowman. 2018a. 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, pages 353–355.
  49. (Wang et al., 2018b) Wei Wang, Ming Yan, and Chen Wu. 2018b. Multigranularity hierarchical attention fusion networks for reading comprehension and question answering. In Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers). Association for Computational Linguistics.
  50. (Warstadt et al., 2018) Alex Warstadt, Amanpreet Singh, and Samuel R Bowman. 2018. Neural network acceptability judgments. arXiv preprint arXiv:1805.12471.
  51. (Williams et al., 2018) Adina Williams, Nikita Nangia, and Samuel R Bowman. 2018. A broad-coverage challenge corpus for sentence understanding through inference. In NAACL.
  52. (Wu et al., 2016) Yonghui Wu, Mike Schuster, Zhifeng Chen, Quoc V Le, Mohammad Norouzi, Wolfgang Macherey, Maxim Krikun, Yuan Cao, Qin Gao, Klaus Macherey, et al. 2016. Google’s neural machine translation system: Bridging the gap between human and machine translation. arXiv preprint arXiv:1609.08144.
  53. (Yosinski et al., 2014) Jason Yosinski, Jeff Clune, Yoshua Bengio, and Hod Lipson. 2014. How transferable are features in deep neural networks? In Advances in neural information processing systems, pages 3320–3328.
  54. (Yu et al., 2018) AdamsWei Yu, David Dohan, Minh-Thang Luong, Rui Zhao, Kai Chen, Mohammad Norouzi, and Quoc V Le. 2018. QANet: Combining local convolution with global self-attention for reading comprehension. In ICLR.
  55. (Zellers et al., 2018) Rowan Zellers, Yonatan Bisk, Roy Schwartz, and Yejin Choi. 2018. Swag: A large-scale adversarial dataset for grounded commonsense inference. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing (EMNLP).
  56. (Zhu et al., 2015) Yukun Zhu, Ryan Kiros, Rich Zemel, Ruslan Salakhutdinov, Raquel Urtasun, Antonio Torralba, and Sanja Fidler. 2015. Aligning books and movies: Towards story-like visual explanations by watching movies and reading books. In Proceedings of the IEEE international conference on computer vision, pages 19–27.

付録:Appendix for "BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding"("BERT:言語理解のための深層双方向Transformerの事前訓練"の付録)

付録を以下の3つのセクションに整理する.

  • BERTに関する追加の実装の詳細は,付録Aに示されている.
  • 実験の詳細については,付録Bに記載されている.
  • その他のアブレーション実験については,付録Cに記載されている.
    BERTのアブレーション実験として,以下のような追加研究を紹介する.
    • 訓練ステップ数の効果
    • 異なるマスキング手順でのアブレーション

付録A:Additional Details for BERT(BERTの追加詳細)

付録A.1:Illustration of the Pre-training Tasks(事前訓練タスクの説明)

以下,事前訓練タスクの例を示す.

Masked LM(MLM)とマスキング手順:

ラベルのない文がmy dog is hairyで,ランダムマスキングで4番目のトークン(hairyに対応)を選んだとすると,マスキング手順は次のようになる.

  • 80%の確率:単語を[MASK]トークンに置き換える.例えば,my dog is hairy -> my dog is [MASK].
  • 10%の確率:その単語をランダムな単語に置き換える.例:my dog is hairy -> my dog is apple.
  • 10%の確率:例えば,my dog is hairy -> my dog is hairy のように単語を変更しない.この目的は,実際に観測された単語に表現を偏らせることである.

この手順の利点は,Transformerエンコーダが,どの単語を予測するよう求められるか,またはどの単語がランダムな単語に置き換えられたかを知らないので,すべての入力トークンの分布的な文脈表現を保持せざるを得ないことである.

さらに,ランダムな置換は全トークンの1.5%(すなわち15%の10%)にしか起こらないため,モデルの言語理解能力を損なうことはないようである.

付録C.2では,この手順が与える影響を評価する.

標準的な言語モデルの学習と比較すると,Masked LM(MLM)は各バッチのトークンの15%しか予測しないため,モデルが収束するためにはより多くの事前訓練ステップが必要であることが示唆される.

付録C.1では,MLMはleft-to-rightモデル(すべてのトークンを予測する)よりも収束がわずかに遅いことを示したが,MLMモデルの経験的な改良は学習コストの増加をはるかに上回るものである.

次の文章の予測:

次の文の予測タスクは,以下の例で説明することができる.

付録A.2:Pre-training Procedure(事前訓練の手順)

各訓練入力シーケンスを生成するために,コーパスから2つのテキストスパンをサンプリングする.

これは,通常,単文よりもはるかに長い(しかし,より短い場合もある)にもかかわらず,「文」と呼ぶ.

最初の文にはA埋め込みが,2番目の文にはB埋め込みが適用される.

Bは,50%はAに続く実際の次の文であり,50%はランダムな文であり,これは「次の文の予測」タスクのために行われる.

これらは,合計の長さが512トークン以下になるようにサンプリングされる.

LMマスキングはWordPieceトークン化の後に適用され,マスキング率は一律15%で,部分的なワードピースは特に考慮されない.

バッチサイズは256シーケンス(256シーケンス*512トークン=128,000トークン/バッチ)で,1,000,000ステップ(33億語のコーパスに対して約40エポック)訓練する.

学習率1e-4,\(\beta_1 = 0.9\),\(\beta_2 = 0.999\),L2重み減衰0.01,最初の1万ステップで学習率ウォームアップ,学習率線形減衰のAdamを使用する.

全層で0.1のドロップアウト確率を使用する.

OpenAI GPTに従い,標準的なreluではなく,gelu activation(Hendrycks and Gimpel, 2016)を使用する.

訓練損失は,平均マスクLM尤度と平均次文予測尤度の合計である.

\(BERT_{BASE}\)の訓練は,Pod構成の4つのCloud TPU(合計16TPUチップ)で実施した.

\(BERT_{LARGE}\)の訓練は,16個のCloud TPU(合計64TPUチップ)で実施した.

各事前訓練には4日間を要した.

Attentionはシーケンス長に対して2次関数的であるため,長いシーケンスは不釣り合いなほど高価である.

我々の実験では,事前訓練を高速化するために,90%のステップでシーケンス長128のモデルを事前訓練する.

※訳注:原文のpretraingはpretrainingの間違いです.

その後,残りの10%のステップを512のシーケンスで訓練し,位置埋め込みを学習する.

付録A.3:Fine-tuning Procedure(ファインチューニングの手順)

ファインチューニングのため,バッチサイズ,学習率,訓練エポック数を除き,ほとんどのモデルのハイパーパラメータは事前訓練と同じにした.

ドロップアウト確率は常に0.1に設定した.

最適なハイパーパラメータ値はタスクに依存するが,以下の可能な値の範囲がすべてのタスクでうまく機能することがわかった.

  • バッチサイズ:16,32
  • 学習率(アダム):5e-5,3e-5,2e-5
  • エポック数:2,3,4

また,大規模なデータセット(例えば,100k以上のラベル付き訓練例)は,小規模なデータセットよりもハイパーパラメータの選択に対する感度がはるかに低いことが確認された.

ファインチューニングは一般的に非常に高速であるため,上記のパラメータを単純に網羅的に検索し,開発セットで最高の性能を発揮するモデルを選択することは合理的である.

付録A.4:Comparison of BERT, ELMo, and OpenAI GPT(BERT,ELMo,OpenAI GPTの比較)

BERT Figure3
図3:学習前モデルのアーキテクチャの違い.BERTは双方向のTransformerを使用する.OpenAI GPTは,left-to-rightのTransformerを使用する.ELMoは,独立に訓練されたleft-to-right,right-to-leftのLSTMの連結を使用して,下流のタスクのための特徴を生成する.この3つのうち,BERTの表現だけが,全層で左右両方の文脈に共同で条件付けされている.アーキテクチャの違いに加え,BERTとOpenAI GPTはファインチューニングアプローチであり,ELMoは特徴量ベースアプローチである.

ここでは,ELMo,OpenAI GPT,BERTなど,最近人気のある表現学習モデルの違いを研究している.

各モデルのアーキテクチャの比較は,図3に示すように視覚的に示されている.

アーキテクチャの違いに加え,BERTとOpenAI GPTはファインチューニングアプローチであり,ELMoは特徴量ベースアプローチであることに注意されたい.

BERTと最も比較可能な既存の事前訓練方法は,大規模なテキストコーパスにleft-to-rightのTransformer LMを訓練させるOpenAI GPTである.

実際,BERTの設計上の決定の多くは,2つの方法を最小限に比較できるように,できるだけGPTに近づけるように意図的に行われた.

この作業の中心的な論点は,双方向性と3.1節で紹介した2つの事前訓練タスクが経験的な改善の大部分を占めるということだが,BERTとGPTの学習方法には他にもいくつかの違いがあることに注意されたい.

  • GPTはBooksCorpus(8億語),BERTはBooksCorpus(8億語)とWikipedia(2500万語)で訓練させた.
  • GPTはファインチューニング時にのみ導入される文分離器([SEP])と分類器トークン([CLS])を使用し,BERTは事前訓練時に[SEP],[CLS],文A/B埋め込みを学習する.
  • GPTは32,000語のバッチサイズで1Mステップ,BERTは128,000語のバッチサイズで1Mステップを訓練した.
  • GPTはすべてのファインチューニング実験に同じ学習率5e-5を使用し,BERTは開発セットで最高の性能を発揮するタスク固有のファインチューニング学習率を選択する.

これらの違いの影響を分離するために,5.1節でアブレーション実験を行い,改善の大部分は実際には2つの事前訓練タスクとそれらが可能にする双方向性によるものであることを実証した.

付録A.5:Illustrations of Fine-tuning on Different Tasks(異なるタスクにおけるファインチューニングの説明)

BERT Figure4
図4:異なるタスクでのBERTのファインチューニングの説明.

図4に,さまざまなタスクでBERTをファインチューニングの説明を示す.

タスク別モデルは,BERTに出力層を1つ追加することで形成されているため,最小限のパラメータを一から学習する必要がある.

タスクのうち,(a)と(b)はシーケンスレベルのタスクであり,(c)と(d)はトークンレベルのタスクである.

図中,Eは入力埋め込み,\(T_i\)はトークンiの文脈表現,[CLS]は分類出力のための特殊記号,[SEP]は連続しないトークン列を分離するための特殊記号である.

付録B:Detailed Experimental Setup(詳細な実験セットアップ)

付録B.1:Detailed Descriptions for the GLUE Benchmark Experiments(GLUEベンチマーク実験の詳細説明)

表1のGLUEの結果は,https://gluebenchmark.com/leaderboardとhttps://blog.openai.com/language-unsupervisedから得られたものである.

GLUEベンチマークには以下のデータセットが含まれており,その説明は(Wang et al., 2018a)にまとめられている.

Multi-Genre Natural Language Inference(MNLI):

Multi-Genre Natural Language Inference(MNLI)は,大規模なクラウドソーシングによるエンテイルメント分類タスクである(Williams et al., 2018).

一ペアの文が与えられたとき,2番目の文が1番目の文に関して,エンテイルメント,矛盾,中立のいずれであるかを予測することが目標である.

Quora Question Pairs(QQP):

Quora Question Pairs(QQP)は,Quoraで質問された2つの質問が意味的に同等かどうかを判断することを目的とした二値分類タスクである(Chen et al., 2018).

Question Natural Language Inference(QNLI):

Question Natural Language Inference(QNLI)は,Stanford Question Answering Dataset(Rajpurkar et al., 2016)を二値分類タスクに変換したバージョンである(Wang et al., 2018a).

肯定的な例は,正しい答えを含む(質問,文)ペアであり,否定的な例は,答えを含まない同じパラグラフからの(質問,文)である.

Stanford Sentiment Treebank(SST)-2:

Stanford Sentiment Treebank(SST)は,映画のレビューから抽出された文章とその感情に関する人間のアノテーションからなる二値単一文の分類タスクである(Socher et al., 2013).

Corpus of Linguistic Acceptability(CoLA):

Corpus of Linguistic Acceptability(CoLA)は,二値単文分類タスクで,英文が言語学的に「受容可能」かどうかを予測することが目的である(Warstadt et al., 2018).

Semantic Textual Similarity Benchmark(STS)-B:

Semantic Textual Similarity Benchmark(STS)は,ニュースのヘッドラインなどから抽出された文のペアのコレクションである(Cer et al., 2017).

これらは,2つの文が意味的にどれだけ似ているかを示す1~5までのスコアでアノテーションされている.

Microsoft Research Paraphrase Corpus(MRPC):

Microsoft Research Paraphrase Corpus(MRPC)は,オンラインニュースソースから自動的に抽出された文のペアで構成され,ペアの文が意味的に同等であるかどうかについての人間のアノテーションが付けられている(Dolan and Brockett, 2005).

Recognizing Textual Entailment(RTE):

Recognizing Textual Entailment(RTE)は,MNLIに似た二値エンテイルメントタスクであるが,訓練データが非常に少ない(Bentivogli et al., 2009).

※本論文ではシングルタスクのファインチューニングの結果のみを報告することに注意されたい.マルチタスクファインチューニングアプローチにより,さらに性能を向上させることができる可能性がある.例えば,MNLIを用いたマルチタスク訓練により,RTEが大幅に改善されることが確認された.

Winograd NLI(WNLI):

Winograd NLI(WNLI)は小規模な自然言語推論データセットである(Levesque et al., 2011).

GLUEのウェブページには,このデータセットの構築に問題があると書かれており,GLUEに提出されたすべての訓練済みシステムは,多数派のクラスを予測する基準精度65.1より悪い結果を出している.

そのため,OpenAI GPTとの公平性を保つために,このセットを除外している.

我々のGLUEへの提出では,常に多数派のクラスを予測した.

付録C:Additional Ablation Studies(アブレーション実験の追加)

付録C.1:Effect of Number of Training Steps(訓練ステップ数の効果)

BERT Figure5
図5:訓練ステップ数に対するアブレーション.これは,kステップの事前訓練を行ったモデルパラメータから始めて,ファインチューニングを行った後のMNLI精度を示している.x軸はkの値である.

図5は,kステップの事前訓練を行ったチェックポイントから,ファインチューニング後のMNLI Devの精度を示したものである.

これにより,次のような問いに答えることができる.

  1. Q. BERTは,高いファインチューニング精度を実現するために,これほど大量の事前訓練(128,000語/バッチ * 1,000,000ステップ)が本当に必要ですか?
    A. はい,\(BERT_{BASE}\)は,500kステップと比較して1Mステップで訓練した場合,MNLIでほぼ1.0%の追加精度を達成した.
  2. Q. MLM事前訓練は,LTR事前訓練と比較して,全単語ではなく,各バッチで15%の単語を予測するため,収束が遅くなるのでしょうか?
    A. MLMモデルは,LTRモデルよりも収束が若干遅くなる.しかし,絶対精度の面では,MLMモデルはLTRモデルをほぼ上回るようになる.

付録C.2:Ablation for Different Masking Procedures(異なるマスキング手順でのアブレーション)

3.1節では,BERTは,Masked Language Model(MLM)目的での事前訓練時に,ターゲットトークンのマスキングに混合戦略を使用することに言及している.

以下は,異なるマスキング戦略の効果を評価するためのアブレーション実験である.

なお,マスキング戦略の目的は,事前訓練とファインチューニングの間のミスマッチを減らすことであり,ファインチューニングの段階では[MASK]シンボルは決して表示されないからである.

MNLIとNERの両方について,Devの結果を報告する.

NERについては,ファインチューニングと特徴量ベースアプローチの両方を報告する.

特徴量ベースアプローチでは,モデルが表現を調整する機会がないため,ミスマッチが増えることが予想されるからである.

BERT Table8
表8:異なるマスキング戦略におけるアブレーション.

その結果を表8に示す.

表中,MASKはターゲットトークンをMLMの[MASK]記号に置き換えること,SAMEはターゲットトークンをそのまま維持すること,RNDはターゲットトークンを別のランダムトークンに置き換えることを意味する.

表の左側の部分の数字は,MLMの事前訓練で使用した特定の戦略の確率を表している(BERTは80%,10%,10%を使用している).

表の右側部分は,Devセットの結果を表している.

※訳注:The right part of the paperは,The right part of the tableの間違いです.

特徴量ベースのアプローチでは,BERTの最後の4層を特徴量として連結しており,これは5.3節で最良のアプローチであることが示されている.

表から,ファインチューニングは異なるマスキング戦略に対して驚くほど頑健であることがわかる.

しかし,予想通り,特徴量ベースのアプローチをNERに適用する場合,MASK戦略のみを使用することは問題があった.

興味深いことに,RND戦略のみを使用した場合,我々の戦略よりもはるかに悪い結果となった.

参考:BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingの解説スライド・動画

BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingの解説スライドです.

BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingの解説動画です.

まとめ

BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingの日本語訳を紹介しました.

グーグルの自然言語処理モデル「BERT」がわかりました.

AIのプログラミング言語「C++/Python言語」を学べるおすすめのWebサイトを知りたいあなたはこちらからどうぞ.

独学が難しいあなたは,AIを学べるオンラインプログラミングスクール3社で自分に合うスクールを見つけましょう.後悔はさせません!

国内・海外のAIエンジニアのおすすめ求人サイトを知りたいあなたはこちらからどうぞ.

国内・海外のプロンプトエンジニアのおすすめ求人サイトを知りたいあなたはこちらからどうぞ.

-TECHNOLOGY, NLP AI
-, ,