language: - ja tags: - lerobot - smolvlm - vla - robotics - libero - pytorch - utokyo - matsuo-lab license: apache-2.0

SmolVLA (PyTorch Custom Implementation) for LIBERO-Spatial

東京大学 松尾・岩澤研究室「Physical AI 基礎編 2026」最終課題 (Basic) 提出用モデル

このモデルは、東京大学 松尾・岩澤研究室が主催する「Physical AI 基礎編」講座 の最終課題(Basic)として、PyTorchのフルスクラッチで実装・学習された SmolVLA (Vision-Language-Action) モデルです。

概要 (Overview)

  • タスク: LIBERO-Spatial (ロボットマニピュレーションのシミュレーション環境)
  • ベースアーキテクチャ: SmolVLA (HuggingFace, 2025) を簡略化した PyTorch 実装
  • Vision-Language Model (VLM): HuggingFaceTB/SmolVLM2-500M-Video-Instruct (凍結)
  • Action Head: Transformer ベースの Flow Matching モジュール (Trainable)
  • 学習方法: LoRA 等を使用せず、数Mパラメータの Action head のみをフルスクラッチ学習

Certificate

学習ハイパーパラメータ (Training Configuration))

このモデルは、限られたリソースと短い学習ステップでパイプライン(学習〜評価)が正常に機能することを目的として構成されています。実用的な成功率を目的としたものではありません。

  • Training Episodes: 50 (LIBERO-Spatial の 10タスク × 5エピソード)
  • Training Steps: 300 steps
  • Batch Size: 1
  • Peak Learning Rate: 3e-4 (Linear Warmup + Cosine Decay)
  • Chunk Size: 8
  • Transformer Layers (Action Head): 4
  • Transformer Hidden Dim: 256
  • Attention Heads: 8

モデル構造の特徴 (Architecture Highlights)

本モデルは、LeRobot 公式の smolvla_libero_plus をベースにしつつ、教育目的・計算資源の制約に合わせて以下の簡略化を行っています。

  1. VLM の完全凍結: SmolVLM2-500M を特徴抽出器として凍結利用。
  2. 位置埋め込み: RoPE の代わりに Learnable Absolute Embedding を採用。
  3. アテンション構造: Q/K/V/O を独立した Linear 層として定義し、すべての層で Self-Attention + Cross-Attention を実行。
  4. 単一カメラビュー: Front カメラのみを入力として使用。

使用方法 (How to Use)

このリポジトリの .ipynb ファイルを実行することで、以下のフローを確認できます。

  1. LeRobotDataset からの LIBERO データの取得・前処理
  2. PyTorch ベースの SmolVLA 構築
  3. Action head のスクラッチ学習 (Flow Matching)
  4. MuJoCo / LIBERO-plus 環境での推論 (Rollout) および mp4 生成
# 環境の準備と推論の実行は、添付の Jupyter Notebook を参照してください。
# `最終課題(Basic)_masked.ipynb` を Google Colab 等で実行可能です。
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support