役立つメンタルモデル

生成AIを、次に何がもっともらしく続き得るかを学習した地図だと考えてみましょう。

テキストの場合、その地図は、入力とそれまでに生成されたテキストにどのような続きが適合するかを表します。画像の場合は、ノイズをキャプションに合った画像へ変化させるために、どのような視覚的変化が必要かを表します。この地図は、完成した回答のカタログとしてではなく、AIモデルの学習済みパラメータに保存されています。

プロンプトは可能性の範囲を狭めます。「文を書いて」では、妥当な出力の範囲が非常に広くなります。一方、「濡れた床用に6語の警告ラベルを書いて」とすれば、その範囲の中で適切な領域ははるかに小さくなります。

次に、モデルは学習した可能性の中からサンプリングします。サンプリングとは、通常はある程度制御されたランダム性を伴いながら、可能な次のステップを1つ選ぶことです。選択された内容は、次のステップの入力の一部になります。このプロセスを繰り返すことで、完成した結果が生成されます。

これが、パターンの学習とコンテンツの生成をつなぐ重要な橋渡しです:

Training examples -> learning objective -> learned pattern model
                                              |
Prompt + initial state -> repeated sampling --+-> generated output

この図は意図的に一般化されています。「初期状態」は、テキストの冒頭部分、ノイズの集まり、編集対象の既存画像、その他の形式のデータなどを指します。「繰り返しサンプリング」は、次のテキスト単位を追加したり、各ステップで少しずつノイズを取り除いたりすることを指します。

生成AIの仕組み

ほとんどの生成システムには、明確に異なる2つの段階があります。

1. 分布を学習する

学習中、モデルは、表現する必要がある種類のデータから、多数の例を見ます。学習目標は、そのデータの構造を明らかにするタスクをモデルがどの程度うまく処理できるかを測定します。モデルのパラメータは、スコアを改善するように調整されます。

正確なタスクは、モデルのファミリーによって異なります:

  • 自己回帰モデルは、直前までの単位から、シーケンス内の次の単位を予測します。自己回帰モデルは、直前までの単位から、シーケンス内の次の単位を予測します。
  • 拡散モデルは、ノイズを徐々に加えるプロセスを逆転させる方法を学習します。拡散モデルは、ノイズを徐々に加えるプロセスを逆転させる方法を学習します。
  • 変分オートエンコーダは、可能なデータの構造化された空間と、その空間からサンプルをデコードする方法を学習します。変分オートエンコーダは、可能なデータの構造化された空間と、その空間からサンプルをデコードする方法を学習します。
  • 敵対的生成ネットワーク、つまりGANは、2つ目のモデルである識別器が、学習例と生成サンプルを確実に見分けられないようなサンプルを生成するよう、生成器を学習させます。敵対的生成ネットワーク、つまりGANは、2つ目のモデルである識別器が、学習例と生成サンプルを確実に見分けられないようなサンプルを生成するよう、生成器を学習させます。

これらの手法は異なりますが、いずれも、学習データに含まれるパターンに似たサンプルを生成する方法をシステムに与えます。機械学習の形式的な意味では、これがモデルを生成的にするものです。

2. 出力をサンプリングする

学習済みモデルを使うとき、入力は生成プロセスの条件になります。「条件付け」とは、入力によって、モデルがもっともらしいとみなす出力が変わることを意味します。

生成は通常、初期状態から始まります。テキストモデルの場合、初期状態はプロンプトと、それまでに生成されたテキストです。画像の拡散モデルは、一般にノイズから始まります。モデルは次のステップを予測し、それを選択または計算し、状態を更新して、停止点に達するまで繰り返します。

この反復プロセスは重要です。生成器は、完成した回答の中で最も可能性の高い1つだけを必ず選ぶわけではなく、通常、保存された完成品を1つ取り出すわけでもありません。小さな選択が積み重なります。同じプロンプトからでも、異なる選択によって異なる妥当な出力が生成されます。

テキストによる例

テキスト生成器が次の入力を受け取ったとします:

川が〜だったため、遊歩道は閉鎖された

次のステップで、モデルが次の確率を割り当てたとします:

  • 増水して — 54%
  • 氾濫して — 21%
  • あふれて — 12%
  • その他すべての続き — 13%

これらの数値は説明のための例です。特定のモデルを表すものではありません。

モデルが「増水して」を選択すると、作業中のテキストは次のようになります:

川が増水していたため、遊歩道は閉鎖された

ここでモデルは、プロンプトに「増水して」を加えた内容に基づいて、新たな可能性の集合を計算します。次には、「一晩で」「上回って」、または句読点などが有力になるかもしれません。応答が完成するまで、この処理が続きます。

生成AIの動作の多くを説明する、2つの重要な点があります。

第一に、生成には条件があります。「遊歩道」を「空港」に変えると、可能性の高い続きも変わります。第二に、もっともらしいことは、事実であることと同じではありません。実際には遊歩道も川も存在しなくても、モデルは閉鎖について流暢な文を作れます。生成プロセスだけでは、その主張を現実世界と照合しません。

この用語には広義と狭義がある

機械学習では、生成モデルとは、データがどのように分布しているかを、可能な例を推定または生成できる程度に表現するモデルです。このカテゴリーは、ラベルの予測やカテゴリーの分離に重点を置く識別モデルと対比されることがよくあります。手書き数字がどのように見えるかを学習するモデルは生成モデルです。一方、画像が0か1のどちらを示しているかだけを判断するモデルは識別モデルになり得ます。

日常的な製品用語としての「生成AI」は、通常、より狭い意味で使われます。つまり、プロンプトによって複雑なデジタルコンテンツを作成するシステムを指します。これらのシステムは、大規模な汎用モデルを使うことが多いものの、広義の技術的定義では、規模や汎用性は必須条件ではありません。NISTが指摘しているように、すべての生成AIが基盤モデルから生まれるわけではありません。

そのため、定義が一貫していないように聞こえることがあります。統計的なモデルの種類を説明する定義もあれば、その種類を使って構築された現在の製品群を説明する定義もあります。

生成AIが重要な理由

従来の予測システムは、固定されたラベルの集合の中から1つを返したり、数値を返したりすることがよくあります。生成システムは、内容があらかじめ完全に指定されていない出力を構成できます。

そのため、生成として表現できる多くのタスクに、1つのモデルを利用できます。テキストモデルは、各タスクを適切なシーケンスの生成として定式化できるため、下書き、要約、翻訳、形式変換、コード作成を行えます。画像モデルは、各タスクを異なる条件下での視覚データの生成として定式化できるため、画像の作成、拡張、編集を行えます。

同じ柔軟性が、主な信頼性の問題も生み出します。もっともらしく見える出力は数多くあります。しかし、ユーザーが明示していないニーズを満たし、外部の事実と一致し、有害な内容を避け、法的・社会的な制約を尊重するものは、その一部にすぎません。説得力のある形式を生成できることは、その形式の中身まで保証するものではありません。

よくある誤解

「データベースを検索して、回答をつなぎ合わせている」

生成モデルは通常、保存された回答を1つ選ぶのではなく、学習したパラメータを繰り返し適用して出力を作成します。ただし、記憶が不可能だという意味ではありません。特に、繰り返し登場する内容や特徴的な内容については、モデルが学習データの一部を再現することがあります。「データベース検索ではない」という主張と、「学習データを決して再現しない」という主張は別物です。

「生成されたコンテンツは真実である」

生成では、学習したパターンや入力条件への適合が重視されます。真実であるためには、証拠、計算、観察、信頼できる情報源など、別の基準が必要です。流暢な回答でも、架空の名前、引用、出来事、因果関係の説明を含むことがあります。

「生成されたコンテンツは必ず独創的である」

出力は、保存された記録全体を取り出すのではなく、その実行中にシステムが組み立てたという限定的な意味では、新しいものかもしれません。しかし、それだけでは、創作上独創的か、法的保護の対象となるか、既存作品の派生物か、記憶の影響を受けているかは決まりません。これらの問題は、出力、学習プロセス、適用される規則によって異なります。

「生成AIとはチャットボットのことである」

チャットボットは、インターフェースとアプリケーションのパターンです。生成AIは、コンテンツを生成するモデルとシステムの基礎となるカテゴリーです。画像、音声、動画、コード、専門的なデータを生成するシステムも含まれます。

「すべての生成AIシステムは同じ種類のモデルである」

自己回帰、拡散、変分、敵対的生成などの手法は、それぞれ異なる学習目標とサンプリングプロセスを使います。共通しているのは目的であって、普遍的な1つのアーキテクチャではありません。

より広いシステムの中での位置付け

モデルは、生成AI製品の一部にすぎません。完全なアプリケーションでは、モデルの周囲に、指示、ユーザー制御、外部情報、安全性チェック、コンテンツフィルター、ツール、出力検証などを追加できます。

こうした周辺部分は、基本的な定義を変えずに、動作を変えることができます。検索との接続によって、テキスト生成器に最新の証拠を与えられる場合があります。フィルターによって、特定の画像をブロックできる場合があります。コードツールによって、生成されたコードのテストを実行できる場合があります。生成器は引き続き候補となるコンテンツを提供し、それ以外のシステム部分がコンテキスト、機能、チェックを提供します。

次に読むもの

学習済みモデル自体に何が含まれているかを理解したい場合は、まずAIモデルとは?を読んでください。次に、現在の多くの生成AI製品を支える、広範で再利用可能なモデルについては基盤モデルとは?を、テキスト、画像、音声、動画をまたいで機能するシステムについてはマルチモーダルAIとは?を読んでください。