1 基本概念
マスク言語モデル(Masked Language Model, MLM)は、自然言語処理における自己教師あり学習の一種である。入力テキスト中の一部のトークンを意図的に隠し(マスクし)、その隠されたトークンを周囲の文脈から予測するタスクを通じて、言語の表現を学習する手法である。この手法は、事前学習の段階で広く用いられ、双方向の文脈情報を活用できる点に特徴がある。
1.1 マスク戦略
マスク戦略とは、入力テキスト内のどのトークンをどのような割合で隠すかを定める方法である。一般的な手法では、全トークンのうち一定割合(例:15%)をランダムに選択し、そのうち80%を特殊な[MASK]トークンに置き換え、10%をランダムな別トークンに、残り10%を元のトークンのままにする。これにより、モデルはマスクされたトークンだけでなく、全ての位置に対して適切な文脈表現を学習する。
1.2 双方向性の利点
従来の単方向言語モデル(左から右、または右から左のみの文脈利用)と異なり、マスク言語モデルはマスクされた位置の左右両方の文脈を同時に参照できる。これにより、文中の各単語が周囲の全単語との関係性をより深く理解でき、語義の曖昧性解消や構文解析において優れた性能を発揮する。
1.3 従来の言語モデルとの比較
従来の言語モデル(例:GPTシリーズの因果言語モデル)は自己回帰的に次のトークンを予測するため、未来の文脈を利用できない。一方、マスク言語モデルはマスク位置の予測に前後の文脈を両方使えるため、文全体の意味を捉えるタスク(感情分析、質問応答など)に適している。ただし、テキスト生成のような逐次的なタスクでは、自己回帰モデルの方が自然な流れを生成しやすいという違いがある。
2 代表的なモデル
2.1 BERT
BERT(Bidirectional Encoder Representations from Transformers)は、2018年にGoogleが発表したマスク言語モデルの代表例である。Transformerのエンコーダー部分を用いて、双方向の文脈情報を学習する。
2.1.1 アーキテクチャ
BERTは多層のTransformerエンコーダーから構成される。各層は自己注意機構とフィードフォワードネットワークを持ち、入力を双方向に処理する。入力は単語埋め込み、位置埋め込み、セグメント埋め込みの和で表現される。モデルサイズとして、BERT-base(層数12、隠れ次元768、注意ヘッド12)とBERT-large(層数24、隠れ次元1024、注意ヘッド16)が一般的である。
2.1.2 事前学習手順
BERTの事前学習は二つのタスクで行われる。一つはマスク言語モデル(MLM)で、入力トークンの一部をマスクしてその元のトークンを予測する。もう一つは次文予測(Next Sentence Prediction, NSP)で、二つの文が連続したものかどうかを分類する。これらを同時に学習することで、文レベルの理解と単語レベルの理解を両立させる。
2.2 RoBERTa
RoBERTa(Robustly Optimized BERT Approach)は、BERTの事前学習手法を洗練させたモデルである。主な改良点として、動的マスキングの採用、NSPタスクの削除、より大規模なデータと長い学習ステップ、大きなバッチサイズの使用などが挙げられる。これらの工夫により、BERTと比較して多くのベンチマークで性能が向上した。
2.3 ALBERT
ALBERT(A Lite BERT)は、BERTのパラメータ数を削減しつつ性能を維持または向上させることを目的としたモデルである。主な工夫は、層間のパラメータ共有、埋め込み層の次元分割(factorized embedding)、および文順序予測(Sentence Order Prediction, SOP)タスクの導入である。これにより、メモリ使用量を抑えながら、効率的な学習が可能となった。
2.4 ELECTRA
ELECTRA(Efficiently Learning an Encoder that Classifies Token Replacements Accurately)は、従来のMLMとは異なる事前学習手法を採用する。マスクされたトークンを予測する代わりに、生成器(ジェネレータ)が置き換えたトークンを識別する識別器(ディスクリミネータ)を学習する。この「置き換え検出」タスクにより、全トークンに対して損失が計算されるため、学習効率が向上する。
3 訓練方法
3.1 マスク確率と置換戦略
典型的なMLMでは、全トークンの15%をマスク対象として選択する。その内訳は、80%を[MASK]に置換、10%をランダムな別トークンに置換、10%を元のトークンのままとする。この戦略により、モデルはマスクトークンのみならず、あらゆる位置での文脈表現を学習するよう促される。ランダム置換により、モデルが単に分布を記憶するのを防ぐ効果がある。
3.2 損失関数
MLMの損失関数は、マスクされた位置における予測トークンと正解トークンの間の交差エントロピー損失である。モデルは各マスク位置で語彙全体に対する確率分布を出力し、その中から正解トークンの負の対数尤度を最小化する。事前学習では、各バッチ内の全マスク位置の損失を平均して更新する。
3.3 ミニバッチと動的マスキング
ミニバッチ学習では、各バッチのサンプルに対して独立にマスク位置を決定する。動的マスキング(dynamic masking)とは、学習の各エポックで異なるマスクパターンを適用する手法である。これにより、同じテキストでも毎回異なる位置がマスクされ、モデルがより汎用的な表現を獲得できる。RoBERTaなどでは動的マスキングが標準的に採用されている。
4 応用
4.1 テキスト分類
テキスト分類タスクでは、MLMで事前学習されたモデルの出力に分類ヘッドを追加し、微調整を行う。感情分析、トピック分類、スパム検出などに広く利用され、特に少ないラベルデータでも高い性能を発揮する。
4.2 質問応答システム
質問応答(QA)では、モデルに質問と文脈を与え、文脈中の回答区間を予測する。BERTは、質問と文脈を連結して入力し、各トークンが回答の開始位置または終了位置となる確率を出力するように微調整される。SQuADベンチマークで大きな成果を挙げた。
4.3 固有表現認識
固有表現認識(NER)では、各トークンに固有表現のラベル(人名、組織名など)を付与する系列ラベリングタスクとして定式化される。MLMモデルは文脈情報を豊富に持つため、境界の曖昧な固有表現の認識に有効である。
4.4 テキスト生成における利用
MLMは本来、テキスト生成には直接適さないが、マスクされた箇所を生成する形で補完タスクに利用できる。また、マスク言語モデルで得られた表現を、自己回帰モデルの初期化や特徴抽出に用いることで、生成モデルの性能向上に貢献する。
5 限界と課題
5.1 計算コスト
MLMモデルの事前学習には大規模なデータと膨大な計算リソースが必要である。特にBERT-largeのようなモデルでは、GPUクラスタで数日から数週間の学習時間を要する。また、推論時もTransformerの自己注意機構が長い系列に対して二次関数的な計算量となる。
5.2 トークン位置バイアス
マスク言語モデルは、学習時に特定の位置にマスクがかかることで、位置に対するバイアスを学習する可能性がある。例えば、文中の先頭や末尾のトークンがマスクされる頻度が低い場合、それらの位置の表現が不十分になる。動的マスキングである程度緩和されるが、完全な解決には至っていない。
5.3 マスクトークン不均衡
事前学習ではマスクされたトークンのみが損失計算に寄与するため、マスクされていないトークンから直接的な学習信号が得られない。トークン全体のうちマスク割合は15%と低く、残り85%のトークンは間接的な影響しか受けない。これにより、特定のトークンが学習に十分活用されない可能性がある。
6 発展と派生技術
6.1 マスク言語モデルと敵対的訓練
敵対的訓練(adversarial training)をMLMに組み合わせる技術が研究されている。例えば、入力に微小な摂動を加え、モデルの予測を不安定化させることで、ロバストな表現を学習させる手法がある。これにより、テキスト分類などのダウンストリームタスクで敵対的攻撃に対する耐性が向上する。
6.2 マルチモーダルへの拡張
MLMの概念はテキスト以外のモダリティにも拡張されている。例えば、画像-テキストモデル(ViLT、UNITERなど)では、画像領域をマスクして言語と画像の対応関係を学習する。また、音声とテキストの組み合わせで、音声の一部をマスクして予測する手法も登場している。
6.3 軽量モデルと知識蒸留
大規模MLMモデルの計算コストを削減するため、知識蒸留(knowledge distillation)が用いられる。教師モデル(例:BERT-large)の振る舞いを、より小さな生徒モデル(例:DistilBERT、TinyBERT)に転移させる。これにより、品質をほぼ維持しながら、推論速度とメモリ消費を大幅に削減できる。