ChatGPTの「学習」と「推論」の仕組み

はじめに

ChatGPTのような大規模言語モデルが私たちの入力から学習するかどうかという疑問について解説します。結論から言うと、ChatGPTは個々のユーザーのプロンプトからその場で新たな「学習」をすることはありません。

AIの処理プロセス

学習(Training)

AIモデルが大量のデータから知識を吸収し、自分のパラメータを調整するプロセス

  • 人間の学校教育に相当
  • 膨大な計算資源が必要
  • 開発段階で行われる
  • モデルのパラメータが更新される

参照(Referencing)

モデルが持つ知識や与えられた情報を呼び出して利用するプロセス

  • 学習済みの内部知識の参照
  • ユーザーから提供された情報の参照
  • 会話の文脈(コンテキスト)の参照
  • 短期記憶的な特性(次の会話ではリセット)

推論(Inference)

学習済みの知識を使って回答を生成するプロセス

  • 人間のテスト回答や仕事に相当
  • モデルのパラメータは変化しない
  • ユーザーとの対話中に常に行われる
  • 既存知識の活用のみ

なぜChatGPTはその場で学習しないのか?

  1. 効率性:モデルの学習には莫大な計算が必要なため、リアルタイムでは非現実的
  2. 一般化(汎化)能力の維持:個々のユーザー入力に過剰適応すると汎用性が損なわれる
  3. 安全性・一貫性:誤情報や有害情報からモデルを保護するため

学習・参照・推論の違い

概念 学習(Training) 参照(Referencing) 推論(Inference)
役割 モデルに知識を蓄える段階
(モデルのパラメータを更新)
モデルが持つ知識や与えられた
情報を呼び出して利用すること
蓄えた知識を使って回答を生成する段階
(モデルのパラメータは更新しない)
タイミング 開発時(事前学習や追加の
ファインチューニング時)に実行される
推論時に随時行われる
(学習済み知識の参照、コンテキスト参照)
ユーザーから入力があったときに実行される
(対話中ずっと行われる処理)
データ源 大規模データセット
(インターネットテキストなど)、
人間のフィードバック
①学習済みの内部知識
②ユーザーから提供された情報
(プロンプトや会話履歴)
ユーザーの入力(質問・依頼)+
必要に応じて会話履歴(文脈)
処理内容 データからパターンを学習し
モデルの重みを調整する
関連しそうな知識や情報を検索し
回答に反映する
入力に対して最適と思われる出力を計算する
(次単語の確率予測を連ねて文章生成)
モデルへの影響 モデルを更新する
(新しい知識が組み込まれる)
モデル自体は更新しない
(一時的に情報を保持するのみ)
モデル自体は更新しない
(出力を返すのみ)

まとめ

ChatGPTはあなたとの会話内容を次の会話まで覚えていることはなく、あなたの指示から新たな知識を学習することもありません。毎回リセットされた学習済みモデルとして対話に臨み、その都度与えられた入力に対して最適な応答を生成しています。

現在のChatGPT (GPT-4 Turbo) に関して言えば、その挙動は「学習済みモデルによるパターンマッチングと応答生成」に基づくものです。「この画像をジブリ風にして」と頼んだからといってChatGPTが新たにジブリ風の絵の描き方を学習するわけではなく、あくまでこれまでに培った知識を駆使してそれらしい返答を作っているのです。

ChatGPTを上手に使いこなすコツ:

明確な指示や有用な情報を与えればある程度期待通りの応答が得られますが、曖昧な質問や未知の話題には的外れな答えになることもあります。ChatGPTが「今持っている知識」を最大限発揮できるような聞き方をすることが、上手に使いこなすポイントです。