# Projection MLP の学習とは何か・どのように行われるか
## 問い
Toto-1.0-QA-Experimental における Projection MLP の学習とは何をすることで、どのように行われるのか?
---
## なぜ Projection MLP が必要か — 2つのモデルの「言語」が違う
[[Toto]] と [[Qwen3-VL]] は、それぞれ独立して事前学習された別々のモデルだ。
```
Toto の内部: ある時系列入力 → 1500次元のベクトル v₁
Qwen3-VL の内部: テキスト "cpu" → 5120次元のベクトル v₂
```
次元数が違うだけでなく、ベクトルの「意味体系」が全く異なる。Toto の空間では「スパイク形状」の情報がある方向に圧縮されているが、Qwen3-VL の空間でその同じ方向は全く別の意味を持つ。**2つのモデルは異なる座標系で世界を表現している**。
Projection MLP はこの座標系を変換する通訳役だ。
```
Toto の空間(d₁次元) → [Projection MLP] → Qwen3-VL の空間(d₂次元)
```
---
## Projection MLP の学習とは何をすることか
学習とは「正解が出るように MLP の重みを数値として調整する試行錯誤」だ。
```
Step 1. 入力を流す(順伝播)
時系列 → Toto → Variate MLP → Projection MLP → Qwen3-VL → 回答の確率分布
Step 2. 誤差を計算する
出力した回答の確率と「正解の確率(=1.0)」を比較 → 誤差(損失)を数値で計算
Step 3. 誤差を逆向きに伝える(逆伝播)
Qwen3-VL ← Projection MLP ← Variate MLP
「どの重みをどれだけ変えれば誤差が小さくなるか」を微分で計算
Step 4. 重みを更新する
計算した方向に少しだけ重みをずらす
(これを数千〜数万回繰り返す)
```
この繰り返しの結果として、Projection MLP は「Toto のこのベクトルを、Qwen3-VL がこういう意味として読み取ると正解が出る」という変換を自動的に発見する。
---
## 具体的な訓練の 3 段階
[[ARFBench]] 論文では Stage 1 → 2 → 3 と順番に学習する。([[@2026__arXiv__ARFBench - Benchmarking Time Series Question Answering Ability for Software Incident Response]] §4.3)
### Stage 1 — 合成データ 12,000 例で「接続の初期化」
合成時系列(ガウスノイズに季節性・スパイクを注入したもの)と、対応する QA ペアを使う。
- 学習されるのは: Variate Embedding MLP の重み・VLM Projection Layer の重み・(Toto と Qwen3-VL の本体は LoRA アダプタで微小修正のみ)
- Stage 1 終了直後は「ほぼ 0 点」。回答を出さず推論ブロックだけを延々生成する状態——変換の写像は覚えたが、まだ回答の書き方を知らない段階。
### Stage 2 — 実データ 395 例で「ドメイン適応」
Datadog の本番インシデントから取った実際の時系列データで微調整する。
- 合成データで学んだ写像を実際の観測データのノイズ・スケール・分布に合わせる
- Stage 2 終了時: 精度 48.4%(ベースの Qwen3-VL 32B 単体 52.8% には及ばないが、回答の整形は正常化)
### Stage 3 — RLVR で「推論能力の強化」
SFT(正解例の模倣)ではなく、**正誤 0/1 の報酬だけを使った強化学習(DAPO レシピ)**だ。
```
正解したら: 報酬 +1 → その推論パターンを強化
不正解なら: 報酬 0 → そのパターンを抑制
```
- 「なんとなく正しそうな真似」から「実際に正解を導く推論」へ
- Stage 3 終了時: 精度 63.9%(+15.4pp の改善)
---
## 凍結戦略 — 何を固定して何を変えるか
各段階で「前の段階の重みは凍結する」という設計判断がある。
```
Stage 1 の LoRA アダプタ A → Stage 2 では A を凍結して新しい B だけ学習
Stage 2 の LoRA アダプタ B → Stage 3 では B も凍結して新しい C だけ学習
最終モデル = Toto + Qwen3-VL + アダプタ A + B + C を順に適用
```
前の段階で学んだ「接続の写像」が後の段階で壊れないための設計だ。
---
## 全体の構造
```
┌─ Toto 本体 ─────────────── 凍結(LoRA で微小修正のみ)
時系列入力 │
↓ ├─ Variate Embedding MLP ─── Stage 1 から学習
[Toto] ───→ │
↓(内部表現) └─ VLM Projection Layer ──── Stage 1 から学習
│
↓
[Qwen3-VL] ────────────────────────────── 凍結(LoRA で微小修正のみ)
↓
回答テキスト
↑
[損失/報酬] ← 正解と比較
|
←←←←← 勾配が逆向きに流れて Projection MLP の重みを更新
```
---
## 短い答え
> Projection MLP の学習とは「正解 QA ペアを与え、Toto の出力を Qwen3-VL が正しく使えるような座標変換を、誤差の逆伝播で繰り返し数値的に求める過程」だ。モデルが座標変換の正解式をあらかじめ知っているわけではなく、「このマッピングをすると正解が出る」という関数を、膨大なトライアンドエラーを通じて自動発見する。
---
## 関連
- エンティティ: [[Toto]] / [[Toto-1.0-QA-Experimental]] / [[Qwen3-VL]] / [[ARFBench]]
- 概念: [[時系列質問応答]] / [[時系列基盤モデル]]
- 関連 question: [[TSFM単体とVLM統合の本質的差異]] / [[TSFM-TSMLLM-TotoQwen3VL-比較と基礎]]
## 出典
- [[@2026__arXiv__ARFBench - Benchmarking Time Series Question Answering Ability for Software Incident Response]](§4.3 Figure 4、アブレーション結果)