Large Concept Models (LCMs)
大規模概念モデル(LCM)は、次のトークンではなく、次の文の埋め込みを予測します。MetaのLCM、SONAR空間、派生モデル、限界について解説します。
大規模概念モデル(LCM)は、次のトークンではなく、次の文単位の埋め込み(概念と呼ばれます)を予測する言語モデルです。Meta FAIRは2024年12月に「Large Concept Models: Language Modeling in a Sentence Representation Space」でこのアーキテクチャを発表し、各文を1つの概念として扱い、文ベクトルの系列としてドキュメントをモデル化しました。これらのベクトルにはSONARを使用します。SONARは、200言語のテキスト入力と出力、76言語の音声入力に対応した固定の文埋め込み空間です。そのため、モデルの中核部分は特定の言語表現に縛られず、意味をもとに推論できます。
大規模コンセプトモデルの仕組み#
従来の大規模言語モデル(LLM)はトークン化を行い、サブワードを1つずつ予測します。LCMは入力を文に分割し、凍結したSONARエンコーダーでそれぞれを1,024個の数値からなるベクトルに符号化して、その系列を次の文ベクトルを予測するTransformerに入力します。テキスト生成では、モデルがドキュメントの終端を示すまでこの手順を繰り返し、凍結したSONARデコーダーが各予測ベクトルを対応言語の文に戻します。
中核部分は通常の因果的Transformerで、系列の各要素は文ベクトルです。最も単純なBase-LCMでは、各次元の平均二乗誤差損失を使って次のベクトルを回帰するように学習します。次は、PyTorchでトレーニングステップを1回実行する例です。
import torch
from torch import nn
torch.manual_seed(0)
# A document of 6 sentences, each already encoded as a 1024-number SONAR-sized concept vector
concepts = torch.randn(1, 6, 1024)
# A causal transformer over sentence vectors, the core of a Base-LCM
layer = nn.TransformerEncoderLayer(d_model=1024, nhead=16, batch_first=True)
lcm = nn.TransformerEncoder(layer, num_layers=2)
causal = nn.Transformer.generate_square_subsequent_mask(5)
# Each position predicts the next sentence's vector, trained by regression instead of a softmax over tokens
predicted = lcm(concepts[:, :-1], mask=causal, is_causal=True)
loss = nn.functional.mse_loss(predicted, concepts[:, 1:])
loss.backward()
print(f"Next-concept predictions: {tuple(predicted.shape)}")Next-concept predictions: (1, 5, 1024)が出力されます。各予測は1,024個の数値からなる完全な文ベクトルで、5つの予測が得られます。一方、トークン単位のモデルなら、語彙に対する確率分布を5つ出力します。Metaのトレーニングデータでは、文あたりのトークン数は平均約19でした。そのため、同じテキストを処理する場合、LCMの系列長はLLMのおよそ19分の1です。
この種のフレーズ単位のベクトルは、オープンボキャブラリー検出にも利用されます。Ultralytics YOLOEは、set_classes()に渡された「double-decker bus」などの各クラスプロンプトを単一のMobileCLIPテキスト埋め込みに符号化し、画像領域と照合します。そのため、1つの埋め込みがフレーズ全体を表します。
ベース、拡散、量子化の各バリエーション#
回帰損失では、各予測を次に来る可能性のある文全体の平均に近づけるため、無難でぼやけたテキストが生成されることがあります。そのためMetaは、前の文を条件として次のベクトルをノイズから始め、段階的にノイズ除去する拡散LCMも構築し、拡散モデルを埋め込みに適用しました。One-Tower版はコンテキスト処理とノイズ除去に単一のTransformerを使い、Two-Tower版は両者を分離します。Quant-LCMは、残差ベクトル量子化でSONAR空間を離散化し、LLMがトークンを予測するのと同様にコードを予測します。
Metaは約1.6兆パラメーターのモデルを約1.3兆トークンでトレーニングして比較し、その後、Two-Tower拡散LCMを70億パラメーターに拡張して、1,424億文、つまり2.7兆トークンでトレーニングし、トレーニングコードを公開しました。42言語のXLSumデータセットを使ったゼロショットテキスト要約では、7B LCMのRouge-Lスコアは英語で23.5となり、Llama-3.1-8B-Instructの20.7を上回りました。
制約#
文を1,024個の数値に圧縮すると、正確な名前、数値、コードが曖昧になる可能性があり、凍結したデコーダーは埋め込みに保持された内容しか再現できません。1文を1概念として扱うのは実用上の選択ですが、1文に複数の考えが含まれることも、1つの考えが複数の文にまたがることもあります。SONARの固定空間では、SONARのエンコーダーが符号化方法を学習していない内容をLCMは表現できません。このため、XLSumの45言語のうち3言語は評価から除外されました。
LCMと関連用語との比較#
- 大規模言語モデル: トークンの分布を予測します。LCMは文の埋め込み空間で言語モデリングを行い、テキスト用のエンコーダーとデコーダーを別途使用します。
- Joint embedding predictive architecture(JEPA): 生データの代わりに表現を予測する、Metaのもう1つのアプローチです。主に画像や動画を対象とします。
- 潜在推論: すべての手順をテキストで書き出さず、モデルの隠れ状態の中で行う推論です。
- 概念ボトルネックモデル: 「翼がある」など、人が理解できる属性を経由して予測を行う分類器で、説明可能なAI(XAI)に使われます。
- 潜在一貫性モデル: LCMという略称を共有しますが、数ステップで画像を生成する蒸留済みの潜在拡散モデルです。










