SmolVLM / SmolVLM2(VLM バックボーン)

Hugging Face の小型 Vision-Language Model 系列。siglip Vision Encoder と LLaMA 系の小型言語デコーダ(SmolLM2)を組み合わせ、画像・言語を統合したマルチモーダル表現を出力する。smolvla の VLM バックボーン(“System2” 相当)として中核を担う。

アーキテクチャ(SmolVLA 内での構成)

  1. Vision Encoder (siglip): 画像 [1,3,384,384][1,729,1152](27×27 パッチ)
  2. Multi-Modal Projector: [1,729,1152][1,729,1536](SmolVLM 隠れ次元 1536 へ投影)
  3. embed_prefix: 画像 729 + 言語 ~50 + 状態 1 トークンを結合 → [1,~780,1536]
  4. VLM 本体(LLaMA 系, SmolVLA では 16 層): → hidden_states [1,~780,1536]

SmolVLA では計算削減のため前半 N=L/2 層のみ使うレイヤースキップを採用。元の SmolVLM2-500M-Video-Instruct は 32 層構成。

内部解析で判明した位置情報の流れ

smolvla-position-generalization の実験で、物体位置を変えた 2 画像に対する内部表現を層ごとに比較した(cosine similarity、小さいほど差が大きい):

観点SmolVLM2(VLA 訓練前)SmolVLA(VLA 訓練後)
Attention Layer 00.9307(最大の差を検出)
Hidden State(最終)0.9788(希薄だが差あり)1.0000(差なし)
位置検出能力初期層では有なし

重要な発見: 位置情報は Layer 0 で「検出」されているが、後続層を通るうちに希薄化し、最終 hidden state ではほぼ消える。SmolVLA(凍結 fine-tune 後)では完全消失。問題は「検出」ではなく「伝達」であり、LoRA/PEFT で VLM を効率的に fine-tune し後続層での情報保持を改善するのが最推奨とされた。質問応答テストでも、SmolVLM2 単体は位置の異なる 2 画像にほぼ同一の回答を返し、位置を言語化できていなかった。

関連