G検定(ジェネラリスト検定)
ばーと
BERT
BERT
Bidirectional Encoder Representations from Transformers
BERTは、ラベル無しテキストから左右両方の文脈を全層で同時に考慮した深い双方向表現を事前学習し、出力層を1つ足すだけで幅広い自然言語処理タスクへファインチューニングできる言語表現モデルです。
詳しい説明
BERTという名前が表すもの
BERTは Bidirectional Encoder Representations from Transformers の略で、Transformerによる双方向のエンコーダ表現を意味する言語表現モデルです。BERTの特徴は、ラベルの付いていないテキストから、深い双方向の表現を事前学習する点にあります。ここでいう双方向とは、ある位置のトークンを表現するときに、その左側の文脈と右側の文脈の両方を、すべての層で同時に考慮することを指します。こうして事前学習したBERTは、出力層を1つ追加してファインチューニングするだけで、質問応答や言語推論といった幅広いタスクで最高水準のモデルになり、タスクごとにアーキテクチャを大きく作り替える必要がありません。
事前学習済み表現を下流タスクに使う2つの戦略
BERTの位置づけを理解するには、事前学習済みの言語表現を下流タスクへ適用する既存の2つの戦略と比べると分かりやすくなります。
1つ目は feature-based(特徴量ベース)の方式です。ELMoがこの例で、タスク専用のアーキテクチャを用意し、事前学習済みの表現をそこへ追加の特徴量として取り込みます。
2つ目は fine-tuning(ファインチューニング)の方式です。OpenAI GPT(Generative Pre-trained Transformer)がこの例で、タスク専用のパラメータは最小限にとどめ、事前学習済みのパラメータ全体を下流タスクで微調整して学習します。
BERTは後者のファインチューニングの方式に属しつつ、事前学習のやり方を変えることで、この方式の力を引き出そうとしたモデルです。
単方向の言語モデルが抱える制約
BERTの提案では、当時の手法は事前学習済み表現の力を制限しており、特にファインチューニングの方式でその影響が大きいと指摘されています。主な限界は、標準的な言語モデルが単方向であることです。単方向であるために、事前学習で使えるアーキテクチャの選択肢が狭まります。
たとえばOpenAI GPTは左から右へ進むアーキテクチャを使っており、Transformerの自己注意(self-attention)層で、各トークンはそれより前のトークンにしか注意を向けられません。このような制約は、文単位のタスクにとって最適ではないとされています。
masked language modelによる双方向の事前学習
BERTは、この単方向性の制約を masked language model(MLM、マスク言語モデル)という事前学習の目的関数によって緩和します。MLMはCloze課題に着想を得たもので、入力のトークンのうち一部をランダムにマスクし、マスクされた語の元の語彙IDを、その文脈だけから予測することを目的とします。
左から右へ予測する従来の言語モデルの事前学習とは異なり、MLMでは予測の手がかりとして左右両方の文脈を使えます。そのため、表現の中で左の文脈と右の文脈を融合でき、深い双方向のTransformerを事前学習できるようになります。BERTの名前にある Bidirectional は、この仕組みによって実現されています。
文ペアの関係を学ぶnext sentence prediction
BERTはMLMに加えて、next sentence prediction(次文予測)というタスクも併用します。これは、2つの文からなるテキストの組(文ペア)の表現を、MLMと同時に事前学習するためのタスクです。MLMが語の単位で文脈を学ぶのに対し、next sentence predictionは文と文の組を扱う表現の学習を担います。
11のタスクで示された成績
BERTは、概念としては単純でありながら、実験では強力な結果を示したと述べられています。11の自然言語処理タスクで最高水準の結果を得ており、主な数値は次のとおりです。
- GLUEスコアを80.5%に引き上げ、7.7ポイント改善
- MultiNLIの精度を86.7%に引き上げ、4.6ポイント改善
- SQuAD v1.1の質問応答でTest F1を93.2に引き上げ、1.5ポイント改善
- SQuAD v2.0でTest F1を83.1に引き上げ、5.1ポイント改善
これらの結果は、双方向の事前学習と、出力層を1つ足すだけのファインチューニングという組み合わせが、質問応答や言語推論を含む多様なタスクに通用することを示しています。
試験で問われること
G検定
- BERTが何の略であり、名前の中の Bidirectional がどのような意味の双方向性を指すかを説明できますか。
- 事前学習済み表現を下流タスクに使う feature-based と fine-tuning の2つの方式の違いを、ELMoとOpenAI GPTを例に挙げて区別できますか。
- 標準的な言語モデルが単方向であることが、なぜ事前学習のアーキテクチャを制限し、ファインチューニングの方式で特に問題になるのかを説明できますか。
- masked language modelが入力のどこをどう隠し、何を予測する目的関数なのか、またそれによって左右の文脈を融合できる理由を説明できますか。
- BERTがMLMと併用するnext sentence predictionが、どのような表現を事前学習するためのタスクかを答えられますか。
- 事前学習したBERTを下流タスクに適用するとき、タスクごとに何を追加してファインチューニングするのかを答えられますか。
最終更新日: 2026/09/23