Research / 基盤技術

BERTは「両側の文脈」をどう学んだか 2018年の原論文を読む

BERTは、文中の一部を隠して予測する事前学習と、課題ごとの追加学習を組み合わせた。左右の文脈を使う設計は、当時の英語の言語理解課題で何を改善したのか。実験条件と限界を原論文から読む。

論文初公開(arXiv)
参照版
v2
TRAIL公開
  • BERTは文章中の語を隠して当てる事前学習で、左右両側の文脈を使う表現を学んだ。
  • 事前学習したモデルを課題ごとに微調整し、当時の英語の言語理解ベンチマークで改善を示した。
  • 論文の結果は、事前学習だけで多様な実務をこなせるという意味ではない。

何を確かめた研究か

文章の中の語は、前にある語だけでなく、後に続く語によっても意味が定まる。2018年当時、文章を左から右へ予測する事前学習済みモデルは、後ろの文脈を同じ層で直接参照できなかった。BERTの原論文は、文章全体を見ながら語の表現を学び、その表現を複数の言語理解課題へ転用できるかを問うた。

BERTはTransformerのエンコーダーを使う。入力文を読み取り、各位置の表現を作る構造だ。次の語を順に出して長文を作る仕組みそのものを提案した論文ではない。この違いを押さえると、後年の対話型生成モデルと一括りにせずに成果を読める。

どう検証したか

著者らは、ラベルのない文章でまず事前学習し、次に正解ラベルのある課題ごとのデータでモデル全体を微調整した。事前学習の一つは、入力中のWordPieceトークンの15%を予測対象として選ぶマスク付き言語モデルだ。選ばれた位置の元の語を周囲から推定する。もう一つは、二つ目の文章が一つ目に続くかを判定する「次文予測」である。

微調整では、同じ事前学習済みの重みから課題別のモデルを作る。文章の分類、文同士の関係判定、質問応答などで入力や出力層を変え、各課題の正解データを使う。つまり、結果が良かったからといって、課題別データが不要になったわけではない。

論文第2版の表1は、英語の複数の言語理解課題をまとめたGLUEのテスト結果を比較する。ただし表の「Average」は、問題のあるWNLIを除外した値で、公式のGLUE総合点とは計算が異なる。著者らは質問応答用のSQuADなども別に調べた。

何が分かったか

表1では、BERT LARGEがMNLIの一致条件で86.7%、不一致条件で85.9%の正答率を示した。同じ表のOpenAI GPTはそれぞれ82.1%、81.4%である。この比較は、論文当時の同じテストの結果だ。特定の製品が将来の全用途で優れるという順位ではない。

論文はBERT BASEとBERT LARGEの二つの規模を主に報告する。前者は約1億1000万、後者は約3億4000万のパラメータを持つ。モデルを大きくするだけでなく、左右の文脈を使う事前学習、課題別の微調整、評価データが結果を形作っている。アブレーション実験では、事前学習の目的を変えた場合も比較した。

限界は何か

評価は論文に挙げた英語のデータセットと手順に依存する。小さなデータセットでは微調整の結果が安定しない場合があり、BERT LARGEについて著者らは複数回の学習から検証データ上で良いモデルを選んでいる。報告値を一回の実行で必ず再現する数値と見てはいけない。

また、マスク記号は事前学習には現れるが、通常の微調整には現れない。著者らはそのずれを減らすため、予測対象に選んだ語を毎回そのままマスク記号へ置き換えるわけではない。こうした実装条件も結果の一部だ。論文は日本語の社内文書、誤情報への耐性、現在の生成AIの品質を検証していない。

仕事との接点

BERTが残した問いは、社内にラベル付きデータが少ないとき、一般的な文章から学んだ表現をどこまで転用できるかだ。実務では対象言語、文書の種類、必要な正解ラベル、誤判定の損失を決めて評価する必要がある。これはTRAIL編集部の運用上の提案であり、原論文が日本企業での導入効果を示したという意味ではない。

01

出典

Research の一覧へ戻る