6. 画像・マルチモーダルへの展開
普遍的な系列処理装置としてのTransformer
Transformer はもともと英語やフランス語などの「言葉」を翻訳するために作られたモデルでした。 しかし、その本質は「要素同士の関連性を柔軟に計算し、ベクトルを変換する汎用的な計算器」です。
コンピュータの世界では、テキストだけでなく、画像も、音声も、遺伝子の塩基配列も、ロボットの制御信号も、すべて「数値の並び(トークンの系列)」に変換できます。 入力の形式さえ整えれば、同じ Transformer の構造をそのままあらゆる領域に転用できるという驚くべき普遍性が明らかになりました。
Vision Transformer(ViT)による画像認識革命
2020 年、Google の研究チームは「Vision Transformer(ViT)」を発表し、コンピュータビジョンの分野に大きな衝撃を与えました。 それまで画像認識といえば、畳み込みニューラルネットワーク(CNN)が絶対的な王座に君臨していました。 ViT は、畳み込みを一切使わず、標準的な Transformer エンコーダだけで最先端の CNN を凌駕する性能を叩き出したのです。
graph TD
Img["1枚の画像 (例: 224x224)"] --> Patch["16x16 ピクセルのパッチに分割 (計196枚)"]
Patch --> Linear["各パッチを平坦化して線形射影 (単語埋め込み化)"]
Linear --> Pos["パッチの位置エンコーディングを加算"]
Pos --> Cls["先頭に分類用トークン [CLS] を追加"]
Cls --> Enc["Transformer エンコーダ (Multi-Head Attention)"]
Enc --> Out["[CLS] トークンの出力から画像ラベルを分類"]
ViT の発想はシンプルかつ独創的です。
- 入力画像を $16 \times 16$ ピクセルなどの小さな正方形の「パッチ(小片)」に切り刻みます。
- 各パッチを 1 つの「単語(トークン)」と見立てて平坦化し、線形層で埋め込みベクトルに変換します。
- パッチの元々の位置を示す位置エンコーディングを加算します。
- 画像全体の分類結果を表現するための特殊なトークン
[CLS]を先頭に付与し、Transformer エンコーダに入力します。
▸ CNNとの違いと帰納バイアス
CNN は「近くにあるピクセル同士が関係している」という人間の直感を設計に組み込んだ(局所的な帰納バイアスを持つ)モデルです。 一方、ViT は初めから画面の端と端のピクセル同士を自由に関係づけることができます。 データが少ないときは学習が難しいものの、数千万枚から数億枚という超大規模データで事前学習を行うと、CNN の限界を軽々と突破する柔軟な認識能力を獲得します。
音声認識への応用(Whisperの衝撃)
音声データも同様に Transformer で処理できます。 音声を周波数と時間のグラフ(メルスペクトログラム)に変換すると、それは 1 枚の 2 次元画像のように扱えます。
OpenAI が開発した音声認識モデル「Whisper」は、標準的な Transformer(Encoder-Decoder 型)を採用しています。 音声スペクトログラムをエンコーダに読み込ませ、デコーダからテキスト(書き起こし文)を自己回帰的に生成します。 この単純で洗練されたアーキテクチャにより、世界中の言語の音声認識、翻訳、音声区間検出を同一のモデルで高精度に実行できるようになりました。
マルチモーダルモデルの融合
近年急速に発展している「マルチモーダル AI」は、テキスト、画像、音声を 1 つの頭脳で統合的に理解・処理する技術です。 ここでも Transformer が中心的な役割を果たしています。
▸ CLIPによる意味空間の統一
OpenAI の CLIP(Contrastive Language-Image Pre-training)は、画像のエンコーダ(ViT)とテキストのエンコーダを対照学習(Contrastive Learning)させました。 「犬の写真」と「dog という文章」のベクトルが多次元空間の中で同じ位置に近づくように学習させることで、画像とテキストを共通の「意味空間」で比較できるようになりました。
▸ プロジェクションによるLLMとの結合(LLaVAなど)
LLaVA(Large Language and Vision Assistant)などの視覚言語モデルでは、ViT で抽出した画像のパッチ特徴量を、単純な線形層や小さな MLP(プロジェクション層)を通して LLM(LLaMA など)の単語埋め込みと同じ次元に変換します。 そして、その画像ベクトルを「あたかもテキストの単語であるかのように」LLM のデコーダにそのまま入力します。 LLM はテキストの単語も画像のパッチも区別せず、同じ Self-Attention 機構を通じて同時に理解し、画像についての質問に答えることができます。
▸ ネイティブ・マルチモーダルへの進化
最新のフロンティアモデル(GPT-4o や Google Gemini など)では、別々のモデルを後から繋ぎ合わせるのではなく、初めからテキスト、画像、音声を同一の Transformer アーキテクチャの中でエンドツーエンドに同時学習させる「ネイティブ・マルチモーダル」へと進化しています。
次章では、このあらゆる AI の心臓部である Transformer を、実際に PyTorch コードを使ってゼロから動かす実践プログラミングに取り組みます。