Generative AI
生成AIは、学習データの分布を学習し、新しいテキスト、画像、動画、コードをサンプリングするAIです。モデルの種類、用途、リスクについて解説します。
生成AIとは、人工知能(AI)の一分野であり、モデルが学習データの確率分布を学習し、そこからテキスト、画像、音声、動画、コード、3Dシーン、分子構造などの新しいデータをサンプリングします。識別モデルはp(label | input)、つまり入力に対するラベルの確率を学習する一方、生成モデルはp(input)自体、またはp(input | prompt)を学習するため、これまで存在しなかった入力を生成できます。この用語は、OpenAIが2022年11月30日にChatGPTをリリースした後、一般に広く使われるようになりましたが、その手法はそれ以前から存在していました。Diederik KingmaとMax Wellingは2013年に変分オートエンコーダーを発表し、Ian Goodfellowらは2014年に敵対的生成ネットワークを発表しました。
生成モデルの仕組み#
現在の生成AIの大部分は、ディープラーニングモデルの4つのファミリーによって生成されており、GPT型の大規模言語モデル(LLM)はすべて最初のファミリーに属します。
- 自己回帰型Transformer: それまでに生成された内容すべてを条件として、テキスト、コード、音声、トークン化された画像のシーケンスを一度に1トークンずつ生成します。
- 拡散モデル: 学習サンプルにノイズを加え、段階的にノイズを取り除くよう学習します。生成時は純粋なノイズから始め、ノイズを除去してサンプルに変換します。2022年8月にリリースされたStable Diffusionは、圧縮された潜在空間でこの処理を実行します。
- 敵対的生成ネットワーク(GAN): 生成器を、実サンプルと生成サンプルを見分けようとする識別器と競わせて学習します。これにより、1回の順伝播で生成器が現実的な出力を作るようになります。
- 変分オートエンコーダー(VAE): データを既知の分布を持つ潜在空間にエンコードし、そこからサンプリングしたデータをデコードします。潜在拡散モデルは、ノイズ除去の前にVAEを使って画像を圧縮します。
基本的な考え方は数行で説明できます。ガウス混合モデルはIrisデータセットの150個の花の分布を学習して新しい花をサンプリングし、同じデータで学習した識別分類器は花にラベルを付けます。
from sklearn.datasets import load_iris
from sklearn.linear_model import LogisticRegression
from sklearn.mixture import GaussianMixture
iris = load_iris() # 花150個:がく片と花弁の長さ・幅(cm)
# 識別モデル:p(species | measurements)を学習するため、花にラベルを付けることしかできません
classifier = LogisticRegression(max_iter=1000).fit(iris.data, iris.target)
# 生成モデル:p(measurements)自体を学習するため、新しい花をサンプリングできます
generator = GaussianMixture(n_components=3, random_state=0).fit(iris.data)
new_flowers, _ = generator.sample(3)
# 識別モデルは生成されたサンプルにラベルを付けます
for flower, species in zip(new_flowers.round(1), classifier.predict(new_flowers)):
print(flower, iris.target_names[species])サンプリングされた3つの花は、がく片が4.7 cm、花弁が1.4 cmの花など、実際には測定されていないものですが、混合分布の3つのクラスターが3種類の花に対応しているため、分類器はそれぞれをversicolor、setosa、virginicaに分類します。テキストや画像の生成器では、3つのガウス分布が数十億個のパラメーターを持つニューラルネットワークに、測定値がトークンやピクセルに置き換わります。
生成モデルと識別モデルの連携#
画像分類と物体検出は識別タスクです。YOLO26は画像をボックスとクラスに変換しますが、画像を描画することはできません。この2種類のモデルは、連続して使われることがよくあります。Ultralytics Platformのクラスプロンプト型スマートアノテーションは、生成型の視覚言語モデル (VLM)を使い、デフォルトではMoondream 3.1によって、データセットのクラス名に対応するボックスを描画します。確認済みのボックスは、YOLO26検出器の学習ラベルになります。
生成モデルは、珍しい欠陥や道路上の危険物など、撮影に費用がかかる、または危険を伴う希少な事象の合成データも作成します。合成データ生成パイプラインでは、こうした画像と実画像を混ぜて学習に使います。逆方向の使い方も一般的です。検出器や分類器で生成画像の品質を評価したり、安全でないコンテンツを検出したりします。
用途#
- テキスト生成: チャットアシスタント、要約、翻訳はLLM上で動作し、コーディングアシスタントは説明に基づいてソフトウェアを作成し、テストします。
- テキストから画像への生成: Stable Diffusionなどのモデルはプロンプトから画像を作成し、同じモデルで写真のマスク領域を補完または置換できます。
- テキストから動画への生成: 2024年2月にプレビュー公開されたOpenAIのSoraなどのモデルは、説明文から動画クリップを生成します。
- 分子構造: 2024年5月に発表されたGoogle DeepMindとIsomorphic LabsのAlphaFold 3は、原子座標を生成する拡散ベースのモジュールを使って、タンパク質複合体の構造を予測します。
リスクと限界#
言語生成モデルは流暢でも誤った内容を幻覚として出力し、画像・音声生成モデルはディープフェイクを可能にします。また、Webデータを使った学習は著作権や同意に関する問題を引き起こします。AI電子透かしとC2PAコンテンツ認証情報は、後から識別できるよう生成メディアに印を付けます。生成コンテンツは学習データにも再び取り込まれます。Ilia Shumailovらは、2024年にNatureで発表したThe Curse of Recursionで、モデル自身の出力を使って再帰的に学習させると、元の分布に含まれる希少な裾部分が失われることを示し、この現象をモデル崩壊と名付けました。










