1.1 定義と目的
事前学習(Pre-training)とは、機械学習、特に深層学習において、大規模なデータセットを用いてモデルに汎用的な特徴表現や知識を獲得させる最初の学習段階である。目的は、特定のタスクに特化する前に、広範なデータパターンや言語・画像の基本的な構造をモデルに理解させることにある。これにより、後の微調整(ファインチューニング)が少量のデータでも効率的に行えるようになる。
1.2 教師あり学習・教師なし学習との関係
事前学習は、多くの場合、教師なし学習または自己教師あり学習の枠組みで行われる。教師あり学習はラベル付きデータを必要とするが、事前学習ではラベルなしの大量データを活用できる点が異なる。ただし、一部の事前学習(例:ImageNet事前学習)は教師あり学習の形式を取る。教師なし学習との共通点は、データの内在構造を捉えることにあるが、事前学習は後のタスク適応を前提とした中間的な位置づけとなる。
1.3 転移学習における役割
転移学習(Transfer Learning)は、あるタスクで学習した知識を別のタスクに応用する手法である。事前学習は転移学習の基盤として機能し、大規模データで学習された汎用的な表現を、特定の下流タスクに転移する。これにより、ラベル付きデータが少ない領域でも高い性能が達成される。事前学習モデルは「特徴抽出器」として、ファインチューニングや線形探索といった転移手法を支える。
2.1 自己教師あり学習
自己教師あり学習(Self-supervised Learning)は、ラベルなしデータから擬似的なラベルを生成し、教師あり学習と同様の枠組みで事前学習を行う手法である。以下のサブ手法が代表的である。
2.1.1 マスク言語モデリング
マスク言語モデリング(Masked Language Modeling, MLM)は、入力テキストの一部をマスク(隠蔽)し、モデルにその欠損部分を予測させるタスクである。BERTで広く知られるこの手法は、文脈を双方向に理解する能力をモデルに与える。例:「I [MASK] to school」→「go」を予測。
2.1.2 対照学習
対照学習(Contrastive Learning)は、類似したデータペア(ポジティブペア)と異なるデータペア(ネガティブペア)を区別するようにモデルを学習させる手法である。画像分野のSimCLRや、言語-画像モデルのCLIPで採用され、埋め込み空間における表現の品質を高める。
2.2 教師あり事前学習
教師あり事前学習は、大規模なラベル付きデータセットを用いて、分類や回帰などのタスクを直接学習する手法である。代表例としてImageNetデータセットによる画像分類の事前学習がある。この手法は比較的シンプルでありながら、特徴抽出能力に優れ、多くの下流タスクで利用される。
2.3 生成的事前学習
生成的事前学習は、モデルにデータを生成させるタスクを通じて学習を行う手法である。自然言語処理では、次トークン予測(Next Token Prediction)が代表的で、GPTシリーズで採用されている。画像分野では、マスク画像の復元(例:MAE)が挙げられる。これにより、モデルはデータの分布や文脈を深く理解する。
3.1 自然言語処理
3.1.1 BERT
BERT(Bidirectional Encoder Representations from Transformers)は、Googleが2018年に発表した事前学習モデルである。双方向のTransformerエンコーダを用い、マスク言語モデリングと次文予測(Next Sentence Prediction)で学習される。GLUEベンチマークで当時最高性能を達成し、NLP分野に大きな影響を与えた。
3.1.2 GPTシリーズ
GPT(Generative Pre-trained Transformer)は、OpenAIが開発した生成的事前学習モデルである。GPT-1からGPT-4へと進化し、特にGPT-3以降は大規模パラメータにより高い汎用性を示す。次トークン予測による自己回帰的生成が特徴で、テキスト生成や対話応答に強みを持つ。
3.1.3 T5
T5(Text-to-Text Transfer Transformer)は、Googleが2020年に発表したモデルで、すべてのNLPタスクを「テキストからテキストへの変換」として統一する。事前学習では、コロナ除去(Span Corruption)と呼ばれるマスク手法を用い、多様なタスクへの転移が容易である。
3.2 コンピュータビジョン
3.2.1 ImageNet事前学習
ImageNet事前学習は、約1400万枚の画像と1000カテゴリのラベルを用いて画像分類タスクを事前学習する手法である。CNNベースのモデル(ResNetなど)で広く使われ、物体検出やセグメンテーションなどの下流タスクの標準的な出発点となる。
3.2.2 ViT(Vision Transformer)
ViT(Vision Transformer)は、画像をパッチに分割しTransformerエンコーダに入力するモデルである。大規模データ(例:JFT-300M)での事前学習により、CNNを凌駕する性能を示す。自己教師あり学習との組み合わせ(DINOなど)も研究されている。
3.3 マルチモーダルモデル
3.3.1 CLIP
CLIP(Contrastive Language-Image Pre-training)は、OpenAIが開発した画像とテキストのペアを対照学習で事前学習するモデルである。4億枚の画像とテキストペアを用い、画像とテキストの共通埋め込み空間を獲得する。ゼロショット画像分類が可能で、応用範囲が広い。
3.3.2 DALL-E
DALL-Eは、OpenAIが開発したテキストから画像を生成するモデルである。Transformerベースで、テキストと画像のトークンを結合し自己回帰的に学習する。2021年にDALL-E 2が発表され、より高品質な画像生成を実現した。
4.1 データ収集と前処理
事前学習には大規模なデータセットが必要である。テキストではCommon Crawl、書籍、Wikipediaなど、画像ではImageNet、LAION-5Bなどが利用される。前処理では、ノイズ除去、重複排除、フィルタリング(毒性コンテンツの除去など)、トークン化(テキスト)または正規化(画像)が行われる。データ品質は学習結果に大きく影響する。
4.2 モデルアーキテクチャの選択
アーキテクチャはタスクとデータに応じて選ばれる。Transformerが現在の主流であり、エンコーダ型(BERT)、デコーダ型(GPT)、エンコーダ-デコーダ型(T5)がある。画像分野ではCNN派生(ResNet, EfficientNet)やViTが用いられる。また、モデルの深さ、幅、アテンションヘッド数などがハイパーパラメータとして調整される。
4.3 学習の設定
4.3.1 バッチサイズと学習率
バッチサイズは大規模事前学習では数千から数万と大きく設定されることが多い(例:GPT-3ではバッチサイズ約320万トークン)。学習率はウォームアップと減衰(コサイン減衰など)を組み合わせ、最大学習率はモデルサイズに反比例する傾向がある(例:LLaMAでは3e-4程度)。
4.3.2 エポック数と収束判定
事前学習は、全データを数エポック(多くの場合1〜3エポック)で学習する。過学習を防ぐため、検証損失が最小になる時点で停止する。なお、大規模モデルでは計算コストの制約から、決められたトークン数(例:1000億トークン)で学習を打ち切ることも多い。
4.4 計算リソースと分散学習
事前学習にはGPUクラスタやTPUポッドなどの並列計算環境が必要である。モデル並列(パラメータ分割)、データ並列(データ分割)、パイプライン並列(層分割)を組み合わせた分散学習が行われる。メモリ節約のための勾配チェックポイント、混合精度学習(FP16/BF16)も標準的に使用される。
5.1 性能評価指標
事前学習モデルの評価は、下流タスク(GLUE、SuperGLUE、ImageNet精度など)の性能で測られる。また、パープレキシティ(テキストモデル)、トップ1精度(画像分類)、平均リコール(検索タスク)などが用いられる。ゼロショット性能や、線形プローブ(特徴抽出器としての評価)も重要。
5.2 バイアスと公平性の問題
事前学習データに含まれる社会的バイアス(性別、人種、年齢など)がモデルに継承される問題がある。例えば、職業と性別の連想、ステレオタイプの強化が指摘される。対策として、データフィルタリング、デバイアス手法(データ再重み付け、反事実データ拡張)、学習後のアライメント(RLHF)などが研究されている。
5.3 計算コストと環境負荷
大規模事前学習は膨大な電力を消費し、二酸化炭素排出量が問題となる。GPT-3の学習には約1,287 MWhの電力が使われたとされ、環境負荷が大きい。グリーンAIの観点から、効率的なアーキテクチャ(スパースモデルや軽量化)や、カーボンフリーエネルギー利用が求められる。
5.4 ドメイン適応の限界
事前学習モデルは、学習データの分布から外れたドメイン(医学、法律、特殊な画像)では性能が低下する。ドメイン適応には、追加のドメイン内データでの継続事前学習(Domain-adaptive Pre-training)が必要となるが、それでも限界がある。また、少数サンプルでの適応は難しく、タスク固有のファインチューニングを要する。
6.1 ファインチューニングとの連携
事前学習後、モデルは特定タスク用にファインチューニング(Fine-tuning)される。ファインチューニングでは、タスク固有の出力層を追加し、少量のラベルデータで全パラメータまたは一部を再学習する。近年では、全パラメータを更新せず、低ランク行列を追加するLoRA(Low-Rank Adaptation)など効率的な手法が普及している。
6.2 少数ショット学習とゼロショット学習
事前学習モデルは、少数の例(少数ショット)や例なし(ゼロショット)でタスクを実行できる能力を持つ。これはモデルが学習中に獲得した幅広い知識に基づく。例として、GPT-3のインコンテキスト学習や、CLIPのゼロショット画像分類が挙げられる。
6.3 継続的学習とオンライン更新
実運用では、新しいデータやドメインの変化に対応するため、継続的学習(Continual Learning)やオンライン更新が求められる。しかし、事前学習モデルは過去の知識を忘れる「破滅的忘却」問題がある。対策として、リプレイバッファや弾性重み統合(EWC)などが研究されている。
6.4 軽量化技術(蒸留・量子化など)
大規模モデルの展開には、知識蒸留(Distillation)、量子化(Quantization)、枝刈り(Pruning)などの軽量化技術が重要である。蒸留は教師モデル(大規模事前学習モデル)の知識を小型モデルに転移する。量子化はパラメータの精度を低下させ(32bit→8bitなど)、推論速度とメモリ効率を向上させる。これにより、エッジデバイスでの実装が可能になる。