JEPA4Japan · チュートリアル

第28章―LeVJEPA を次の世界モデルへつなぐ

1,869文字 5分で読めます #LeVJEPA#JEPA#自己教師あり動画学習#SIGReg

行動予測器、潜在空間での展開、不確実性、階層的な時間尺度、MPC を追加し、段階ごとの反証法を設計します。

コース進捗 コース目次 34レッスン中 34件を公開中

第0部―まず地図を広げる

  1. 01 第0章―始める前に:この講座でできるようになること 公開中
  2. 02 第1章―同じ動画を、二つの窓から見る 公開中
  3. 03 第2章―Yann LeCun の研究路線をたどる 公開中
  4. 04 第3章―名前に迷わないための JEPA 家系図 公開中

第1部―簡単な目的で、なぜ動画が分かるのか

  1. 05 第4章―動画は自分で問題を作れる 公開中
  2. 06 第5章―全ピクセルではなく、意味を残す 公開中
  3. 07 第6章―二枚は同じに。でも全部を白紙にはしない 公開中
  4. 08 第7章―SIGReg:点の雲を影から調べる 公開中
  5. 09 第8章―一行の目的関数で LeVJEPA を読む 公開中

第2部―一本の動画を一台のエンコーダーへ

  1. 10 第9章―大域ビューと局所ビューの作り方 公開中
  2. 11 第10章―動画を時空間の小片に切る 公開中
  3. 12 第11章―一台のエンコーダー、一つの投影ヘッド、一枚の要約札 公開中
  4. 13 第12章―一回の前向き計算を端から端まで 公開中
  5. 14 第13章―95%捨てると、なぜかよく見える 公開中
  6. 15 第14章―ブロック因果注意:同じ時刻は見える、未来は見えない 公開中
  7. 16 第15章―RoPE、1フレーム tubelet、思いがけない密特徴 公開中

第3部―実験を読めてこそ、論文を読んだと言える

  1. 17 第16章―五段のアブレーションが答えること 公開中
  2. 18 第17章―同じ周回数は、同じ費用ではない 公開中
  3. 19 第18章―ImageNet、K400、SSv2 は何を試すか 公開中
  4. 20 第19章―論文の結果を帳簿にする 公開中
  5. 21 第20章―まだ言ってはいけない結論 公開中

第4部―公式リポジトリから自分の実験へ

  1. 22 第21章―公式リポジトリの見取り図 公開中
  2. 23 第22章―Walking Tours:10本の長編を学習データにするまで 公開中
  3. 24 第23章―既定設定を読み、学習を始める 公開中
  4. 25 第24章―うそをつかない小さな動作確認から始める 公開中
  5. 26 第25章―学習なしで公開重みから特徴を出す 公開中
  6. 27 第26章―自分の動画を凍結評価する 公開中

第5部―表現を世界モデル構想へ戻す

  1. 28 第27章―大事な境界:LeVJEPA は計画器ではない 公開中
  2. 29 第28章―LeVJEPA を次の世界モデルへつなぐ 現在のレッスン
  3. 30 第29章―入門から論文まで、10の研究プロジェクト 公開中

付録―必要なときに開く技術リュック

  1. 31 付録A―これだけは要る数学道具箱 公開中
  2. 32 付録B―完全テンソル形状表 公開中
  3. 33 付録C―用語集と論文年表 公開中
  4. 34 付録D―再現とレビューのチェックリスト 公開中

小さな目から、考える砂場へ

  1. 視覚を固定まず基準を守る
  2. 動作を加える何をしたかも記録
  3. 未来を転がす潜在状態を予測
  4. 費用を測る目標と危険を比較
  5. 一歩ずつ進むMPC で見直す
ここから先は、失敗条件まで書いた拡張案です。公式 LeVJEPA がすでに備える機能ではありません。

目、想像、道選びを一度に直さない

積み木を押すロボットを作るとします。まず「何が見えるか」を書く辞書を固定し、小さな砂場だけに「この状態で右へ押したら、次はどうなるか」を教えます。全部を一度に学び直すと、失敗したときに目が悪いのか、未来予測が悪いのか、道の選び方が悪いのか分かりません。

この切り分け方は慎重ですが、反証しやすい研究になります。

最初の世界モデル

第一段階では公開エンコーダーを凍結します。観測履歴は [B,3,T,224,224]。区間全体を読める [CLS] ではなく、現在時刻までに対応するパッチ状態 z_t:[B,N,D] を使います。軌跡には実行した動作 a:[B,H,A] も必要です。

新しい動作条件付き因果予測器に z_t と a を渡し、将来の潜在状態 z_hat:[B,H,N,D] を順に出させます。正解側は、実際の後続フレームを凍結エンコーダーへ入れた表現です。1段先と複数段先の誤差を測ります。予測器、動作データ、予測損失はすべて新設であり、LeVJEPA の元の目的関数ではありません。

空間トークンの対応も先に決めます。同じカメラ、切り抜き、フレーム率、格子なら第 i パッチ同士を比べられます。カメラが動く、物体が隠れる、格子をまたいで移動する場合は、全パッチ、見える部分、集約状態のどれを予測するのか明記します。

最小損失を次状態の潜在 MSE にしても、現在状態をそのままコピーする基準方式と必ず比べます。隣り合うフレームはよく似るからです。静かな背景と可動物体の誤差も分けます。背景だけを上手に写す予測器は、平均誤差だけなら優秀に見えます。

目標までの道を試す

目標画像 g を z_goal に符号化します。CEM などの探索器が K 本の動作列を作り、予測器が潜在空間で未来を展開します。目標距離、衝突、制約違反を費用にまとめ、最良列の最初の一手だけ実行します。そこで新しい観測を読み、また計画します。これがモデル予測制御(MPC)です。

# 拡張案の擬似コード。上流リポジトリの関数ではない。
while not done:
    z0 = encode_causal(observation_history)
    candidates = cem.sample(K, horizon=H)
    futures = dynamics.rollout(z0, candidates)  # [K,H,N,D]
    scores = cost(futures, z_goal, constraints)
    env.step(candidates[scores.argmin(), 0])

一手だけ実行するのは、予測誤差や思わぬ外乱を新しい観測で直すためです。長い計画を最後まで盲目的に実行する仕組みとは違います。

六段の通行証

ロボット成功率へ一足飛びに行かず、次の段を順に通します。

  1. 形と未来漏洩の単体試験に合格する。
  2. 1ステップ先予測が「現在状態をそのままコピーする基準方式」と「動作を無視する基準方式」の両方を上回る。
  3. 予測距離ごとの誤差曲線と、不確実性の校正を示す。
  4. 反事実の動作を入れると、区別できる未来が出る。
  5. 模擬環境でデータ、計算量、CEM 条件を固定し、無作為方式やモデルなし方式と比べる。
  6. 停止条件、人工介入、分布外状況を決めてから閉ループ実機試験へ進む。

どこかで失敗したら、そこで止めて原因を調べます。未来が複数ある課題では、決定論的 MSE だけで平均的なぼやけた未来へ逃げないよう、複数モデル、確率的潜在変数、エネルギーで順位付けする候補などを比較し、被覆率と校正誤差を測ります。

エンコーダーを解凍する場合は、元の凍結プローブの成績と埋め込みのスペクトルを並行して監視します。少量の制御データへ合わせた結果、一般視覚が忘却したり表現が潰れたりする可能性があるからです。

論文はブロック因果構造なら過去を保存できると述べますが、固定した公開実装と Transformers の配布インターフェースには、完成した逐次 KV キャッシュ機能がありません。自作するなら、毎回全履歴を再計算した結果とトークンごとに照合します。

設計の足場

砂場に立てる三本旗

  1. 世界モデル化には、動作条件付き予測器、費用、探索、MPC を明示的に追加します。
  2. まず視覚を凍結し、段ごとに基準へ勝てるか確かめてから、同時学習や長期計画へ進みます。
  3. 理論上保存できることと、公開インターフェースに検証済みの逐次キャッシュがあることは別です。

次の一手を選ぶ三問

  1. 最小の動作予測器が必ず受け取る二種類の入力は何ですか。
  2. なぜ「現在状態をそのままコピーする」基準方式と比べますか。
  3. MPC が計画列の最初の一手だけを実行する理由は何ですか。
答えを読む
  1. 現在または履歴の潜在状態と、候補動作です。
  2. 近い時刻は元から似ており、その基準に勝てなければ有用な力学を学んだと言えないからです。
  3. 新しい観測でモデル誤差と外乱を直し、残りを再計画するためです。