生成AIの基盤モデルの種類や、モデルの最適化についてのまとめ
基盤モデル
生成AIの多くは、インターネット上の大量のデータで既にトレーニングされたモデルが基になっている。このようなモデルを基盤モデルという。基盤モデルはこのような事前トレーニングによって、様々なタスクをこなすことができるようになっている。
基盤モデルには、
- GPT
- BERT
- Amazon Titan
- Claude
- Cohere
などが挙げられる。
以下は、生成AIの基盤モデルの代表例。
1. 大規模言語モデル
大規模言語モデル(LLM)は、テキストの文脈を理解し、自然なテキストを自動生成することができる、大規模な深層学習モデル。広くには、トランスフォーマーというニューラルネットワークアーキテクチャが使われている。
LLMの特徴
- 入力データに自分でラベルをつけて自己学習をする(自己教師あり学習)
- テキスト内の単語をトークン化し、埋め込みと呼ばれるベクトルで表現する
- 単語の関係性を、ベクトル空間の位置関係で表すことができる
2. 拡散モデル
拡散モデルとは、ぼやけた画像からノイズを除去したり、テキストから画像を生成したりすることができる深層学習モデルのこと。その目標のために、以下2つの過程を行うことで学習する。
- 拡散過程
- 自然画像にランダムノイズを少しずつ追加し、ノイズだけにする過程
- 逆拡散過程
- 拡散過程の逆で、ノイズ画像からノイズを除去して画像を生成する過程
3. マルチモーダルモデル
マルチモーダルモデルは、テキストや画像などの複数の種類のデータを、同時に入出力する処理が可能なモデル。様々な形式のデータを組み合わせた際の相互作用や、異なる形式間で共通する情報などを学習することで、そのような処理が可能になる。
テキスト・数値・画像・音声・動画などのデータの「種類や形式のこと」をモダリティ、「複数のモダリティに対応すること」をマルチモーダルという。
マルチモーダルモデルである生成AIの例は、
- ChatGPT-4o
- Gemini
- Copilot
4. 敵対的生成ネットワーク
敵対生成ネットワーク(GAN)とは、生成と識別のそれぞれを行う2つのニューラルネットワークを競争させる深層学習モデルのこと。用意したトレーニングデータセットを用いて2つのネットワークが互いにトレーニングすることで、本物のデータと似たデータを生成できるようになる。
2つのニューラルネットワークとは、
- ジェネレーター
- トレーニングデータに変更を加えて、新しいデータを生成する
- ディスクリミネーター
- トレーニングデータとジェネレーターが生成したデータを受け取り、両者を識別する

GANでは、ジェネレーターが本物に似たデータを生成してディスクリミネーターを騙そうとし、ディスクリミネーターはデータの真贋を正しく見分けようとする。このような競争は、両方が進化し続け、ディスクリミネーターが完全に生成データを認識できなくなる平衡状態まで行われる。
5. 変分オートエンコーダー
変分オートエンコーダー(VAE)は、オートエンコーダーというアーキテクチャのニューラルネットワークに、統計学の手法である変分推論を応用させて生まれたモデル。
オートエンコーダーでは、エンコーダーとデコーダーという2つのニューラルネットワークで構成される。このモデルは教師なし学習でトレーニングし、「どのように圧縮すれば、元のデータを正確に再構成できるか」を学習する。
- エンコーダー
- 入力データをより次元の少ない次元に圧縮し、重要な特徴のみ抽出する
- デコーダー
- 抽出された特徴データを受け取り、元データを再構成する
VAEでは、このエンコーディングにある種の変化量を加えることで、入力データに類似した新しいデータを生成できるようになった。VAEは画像生成やノイズ除去に活用される。
エンコーダーが抽出する特徴量のことを潜在変数、潜在変数をマッピングする低次元の空間を潜在空間と呼ぶ。VAEでは、この潜在空間が確率分布を持つ。
基盤モデルの種類のまとめ
モデル | 説明 | 主な用途 |
---|---|---|
大規模言語モデル | トークンと埋め込みを利用して、テキストを理解し生成する |
|
拡散モデル | 拡散過程とその逆の過程を学習して、画像などを生成する |
|
マルチモーダルモデル | 様々なモダリティのデータを一度に処理できる |
|
敵対的生成ネットワーク | 2つのニューラルネットワークが競争し、新しいデータの生成を学習する |
|
変分オートエンコーダー | オートエンコーダーの応用モデルで、元データに似たデータを生成する |
|
モデルの最適化
生成AIの開発は、基礎モデルを出発点として、開発者が求める限定的なタスクをこなせるモデルや、より専門的なタスクに沿ったモデルへと調整する作業になることが多い。このプロセスを基盤モデルの最適化と呼ぶ。
一般的に最適化には、以下のような手法が用いられる。
プロンプトエンジニアリング
期待する出力になるよう、基盤モデルにガイド付きの指示を与える方法。対話形式やコマンドラインのシステムを持つモデルに送られる、そのようなテキストをプロンプトといい、例えば
あなたは有名な技術記事のライターです。
以下の条件で、生成AIについての技術記事の文章を作成してください。
条件:
・1000文字以内
・「です」「ます」口調
・話題ごとに見出しをつける
ような命令文となる。プロンプトを上手く用いることで、目的や状況に合った出力を得ることができ、最も簡単にモデルを最適化できる。
ファインチューニング
より専門的で限られたデータセットを使って、さらに基礎モデルに対し教師あり学習を行う方法。このファインチューニングにより、モデルの重みが特有の状況に合わせて微調整され、モデルが最適化される。
例えば、業界特有の知識や判断を必要とするタスクを行わせたいときに用いられる。
検索拡張生成(RAG)
専門的なタスクの実行に必要となる知識を、予め用意したデータストアから検索し、参考資料としてモデルに提供する方法。
検索拡張生成では、特定のデータでモデルを学習させるのではなく、タスクごとに必要となる情報を、プロンプトを通じてモデルに与えるのみである。ファインチューニングと違い、モデルがトレーニングすることはないので、重みなどのモデルの内部は変わらない。
RAGで利用される、関連するドキュメントのデータストアと検索方法には、主に2種類の方法がある。
1. キーワード検索
入力データ内のキーワードを用いてドキュメントを検索する方法。キーワードの出現頻度が高いドキュメントを、関連性が高いと判定する。
2. ベクトル検索
予めドキュメントをベクトル空間に埋め込み、入力データを埋め込んだベクトルとの類似度でドキュメントを検索する方法。埋め込みは、文章の文脈やニュアンスも含んで検索するので、キーワード検索より精度が高い。

まとめ
基盤モデルとは、事前にトレーニングされた、汎用的なタスクを既にこなすことができる生成AIモデルである。
昨今のAI開発とは、このような基盤モデルを最適化することである。基盤モデルには様々な種類が存在するので、目的に沿ってモデルを選択することが重要となる。