Generic selectors
Search in title
Search in content
Post Type Selectors
コラム
AI用語集

事前学習

  • 用語:事前学習
  • 英語:Pre-training
  • AI用語の分類:AIの基礎・学習・モデル
  • TERM_ID:G065

事前学習とは、特定の最終用途へ調整する前に、大量のデータから汎用的なパターンや表現をモデルに学ばせ、後段の利用・微調整の出発点となる重みを作る学習段階です。

事前学習とは

事前学習(pre-training)は、モデルを特定の最終用途へ調整する前に、大量のデータから広いパターンや表現を学ばせる段階です。そこで得た重みを出発点に、後でファインチューニングやポストトレーニングを行ったり、そのまま特徴抽出や生成へ利用したりします。

「事前」という言葉は、モデルがまだ何も学んでいない前処理を意味するのではありません。むしろ大量の計算を伴う本格的な学習です。Hugging Faceの教材では、言語モデルのpretrainingを、重みをランダムに初期化して大量データで学習する段階として説明し、その後にpretrained modelをより小さなデータでfine-tuneする流れを示しています[2]。

何に対して“事前”なのか

事前学習は、後段の目的に対して事前です。画像分類なら、まず大規模画像集合で一般的な視覚特徴を学び、その後に特定の製品検査へ適応することがあります。言語モデルなら、広いテキストから言語パターンや知識を学び、その後に指示追従、対話、安全性、専門分野などへ調整します。

つまり、事前学習そのものが「最終製品を完成させる学習」とは限りません。特にLLMでは、base modelと、ユーザーが普段触るassistant/instruct modelを分けて公開する例があります。base modelは文章の続きを生成する能力が高くても、「質問に答える」「依頼に従う」という会話上の振る舞いが十分に調整されていない場合があります。

BERTで見るpretrain→fine-tune

BERTは事前学習と下流タスク適応の考え方を理解しやすい代表例です。BERT論文では、未ラベルテキストから双方向の表現を事前学習し、その後、質問応答や自然言語推論など多様なタスクへ小さな追加層を加えてfine-tuneできることを示しました[1]。

ここでのポイントは、事前学習段階で「質問応答専用モデル」を一から作ったわけではないことです。広い言語表現を先に学び、下流タスク側がそれを利用します。この構造がtransfer learningの重要な形になっています。

LLMの事前学習では何を学ぶのか

自己回帰型の言語モデルでは、前までのトークンから次のトークンを予測するような目的が典型です。文章を大量に読み、「この並びの後に何が来やすいか」を繰り返し予測し、誤差が小さくなるようにパラメータを更新します。BERTのようなmasked language modelでは、一部を隠した入力から隠されたトークンを推定するなど別の目的を使います。

したがって「事前学習=次トークン予測」と固定するのも正しくありません。モデル種別や時代により目的関数は異なり、画像、音声、マルチモーダルモデルでは別の自己教師あり目的も使われます。重要なのは、広いデータから再利用可能な表現・能力を形成する先行段階だということです。

事前学習は必ず自己教師ありか

現代のLLMでは自己教師あり学習が中心ですが、pre-trainingとself-supervised learningは同義ではありません。pre-trainingは工程上の位置づけ、self-supervisedはデータ自身から学習信号を作る方法を表します。歴史的には、ラベル付き大規模画像データで事前学習したモデルを別タスクへ転移することも広く行われてきました。

ニュースや製品説明で「self-supervised pretraining」とわざわざ書いてあるのは、この二つの概念が別だからです。

事前学習済みなら“知っている”と言えるのか

事前学習したモデルの重みには、データ中の統計的パターンや関連が反映されます。ただし「その情報を正確に保存している」「質問すれば必ず正しく取り出せる」「最新事実を知っている」とまでは言えません。学習データの範囲、モデル容量、最適化、後段の調整、プロンプトなどで出力は変わります。

また、事前学習データに含まれていない情報を、後段の指示チューニングだけで自動的に獲得するわけでもありません。逆に、後段のfine-tuningやpost-trainingで振る舞いは大きく変わっても、広い能力の土台はpretrainingに依存することがあります。

ファインチューニングとの違い

ファインチューニングは、すでに学習済みの重みを出発点に、より限定されたデータや目的で追加学習することです。事前学習が広い土台を作るのに対し、ファインチューニングは特定タスク、分野、出力形式、指示追従などへ適応させます。

ただし境界は命名次第で揺れます。既存のbase modelへ大量の専門コーパスを追加して同じ言語モデリング目的で学習する工程は「continued pretraining」と呼ばれます。つまり、すでに一度pretrain済みでも、再び“pretraining”と呼ばれる段階があり得ます。工程名は、単に「一番最初の学習」だけを意味しません。

元の文脈へ戻ったときのチェックポイント

「pretrained」「base model」「pretraining data」という言葉が出たら、①どの重みから始めたか、②どんなデータで、③どんな目的関数を使い、④その後に何の追加学習をしたか、⑤公開モデルがbase版かinstruct/chat版かを確認してください。

特に製品比較では、「同じモデル名」でもbaseとinstruction-tuned版では用途が違います。事前学習はモデルの能力形成の大きな部分を担いますが、ユーザーが体験する振る舞いは、その後の学習やシステム設計を含めて決まります。「事前学習で何を得たか」と「最終モデルがどう振る舞うか」を分けて読むことが重要です。

  • 継続事前学習(G066)
  • ファインチューニング(G068)
  • ポストトレーニング(G067)

注・出典

  1. Devlin et al., “BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding”: https://arxiv.org/abs/1810.04805 ↩
  2. Hugging Face LLM Course, “How do Transformers work?”: https://huggingface.co/docs/course/chapter1/4 ↩

AI協働制作について

本記事は、著者が独自に設計した指示、参照資料、出典確認規則、著作権確認および監査工程を組み込んだChatGPT等の生成AIを、情報収集の補助、資料整理、構成検討、草稿作成、文章校正および監査補助に使用して制作しました。記事の対象範囲、情報源の採否、構成、解釈および最終表現は著者が判断し、最終稿を承認しています。著者は、本記事の正確性、独自性、引用、著作権処理および公開内容について責任を負います。制作工程の詳細は「AI協働制作方針」をご覧ください AI協働制作方針をご覧ください。

おすすめ