BEHAVIOR-1K評価
BEHAVIOR-1Kは、Stanfordによる家事タスクシミュレーションベンチマークで、1000の日常活動(料理、掃除、整理整頓など)を特徴としています。2025 BEHAVIOR Challengeの構造に従い、50の完全な家事タスクでトレーニングと評価を行います。R1Proヒューマノイドロボット(双腕 + ベース + 胴体、23次元のアクション空間)を使用します。
評価プロセスは以下の2つの主要な部分で構成されています:
behavior環境と依存関係のセットアップ。starVLAとbehaviorの両方の環境でサービスを起動して評価を実行。
BEHAVIOR評価
Section titled “BEHAVIOR評価”1. 環境セットアップ
Section titled “1. 環境セットアップ”behavior のconda環境をセットアップします:
git clone https://github.com/StanfordVL/BEHAVIOR-1K.gitconda create -n behavior python=3.10 -yconda activate behaviorcd BEHAVIOR-1Kpip install "setuptools<=79"# --omnigibson: OmniGibsonシミュレーターのインストール(BEHAVIORの物理エンジン)# --bddl: BDDLのインストール(タスク定義用のBehavior Domain Definition Language)# --joylo: JoyLoのインストール(テレオペレーション制御インターフェース)# --dataset: BEHAVIORデータセットアセットのダウンロード(シーン、オブジェクトモデルなど)./setup.sh --omnigibson --bddl --joylo --datasetconda install -c conda-forge libglupip install rich omegaconf hydra-core msgpack websockets av pandas google-authstarVLA環境でも以下を実行:
pip install websockets2. 評価ワークフロー
Section titled “2. 評価ワークフロー”手順:
- チェックポイントをダウンロード
- 必要に応じて以下のスクリプトを選択
(A) 並列評価スクリプト
Section titled “(A) 並列評価スクリプト”CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 bash examples/Behavior/start_parallel_eval.shstart_parallel_eval.sh を実行する前に、以下のパスを設定してください:
star_vla_python: StarVLA環境のPythonインタプリタsim_python: Behavior環境のPythonインタプリタTASKS_JSONL_PATH: トレーニングデータセットからダウンロードしたタスク説明ファイル(examples/Behavior/tasks.jsonlに含まれています)BEHAVIOR_ASSET_PATH: behaviorアセットパスのローカルパス(./setup.shでインストール後、デフォルトはBEHAVIOR-1K/datasets)
(B) 別々のターミナルでのデバッグ
Section titled “(B) 別々のターミナルでのデバッグ”デバッグを容易にするため、クライアント(評価環境)とサーバー(ポリシー)を2つの別々のターミナルで起動することもできます:
bash examples/Behavior/start_server.shbash examples/Behavior/start_client.sh上記のデバッグファイルはトレーニングセットでの評価を実行します。
(C) タスクごとの評価(メモリセーフ)
Section titled “(C) タスクごとの評価(メモリセーフ)”メモリオーバーフローを防止するため、start_parallel_eval_per_task.sh も実装しています:
CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 bash examples/Behavior/start_parallel_eval_per_task.sh- スクリプトは
INSTANCE_NAMESの各タスクに対して順次評価を実行します - 各タスクについて、
TEST_EVAL_INSTANCE_IDSのすべてのインスタンスをGPU間に割り当てます - 前のタスクが完了するのを待ってから、次のタスクに進みます
ラッパータイプ
Section titled “ラッパータイプ”-
RGBLowResWrapper: RGBのみを視覚観測として使用し、カメラ解像度は224x224です。低解像度RGBのみの使用はシミュレーターの高速化と評価時間の短縮に役立ちます。このラッパーはスタンダードトラックで使用可能です。
-
DefaultWrapper: データ収集中に使用されるデフォルトの観測設定によるラッパー(RGB + 深度 + セグメンテーション、ヘッドカメラは720p、リストカメラは480p)。このラッパーはスタンダードトラックで使用可能ですが、RGBLowResWrapperと比較して評価がかなり遅くなります。
-
RichObservationWrapper: 法線やフローなどの追加観測モダリティ、および特権タスク情報を読み込みます。このラッパーは特権情報トラックでのみ使用可能です。
アクション次元
Section titled “アクション次元”BEHAVIORのアクション次元は23です:
"R1Pro": { "base": np.s_[0:3], # Indices 0-2 "torso": np.s_[3:7], # Indices 3-6 "left_arm": np.s_[7:14], # Indices 7-13 "left_gripper": np.s_[14:15], # Index 14 "right_arm": np.s_[15:22], # Indices 15-21 "right_gripper": np.s_[22:23] # Index 22}動画は {task_name}_{idx}_{epi}.mp4 の形式で保存されます。idx はインスタンス番号、epi はエピソード番号です。
よくある問題
Section titled “よくある問題”Segmentation fault (core dumped): Vulkanが正しくインストールされていない可能性が高いです。こちらのリンクを確認してください。
ImportError: libGL.so.1: cannot open shared object file:
apt-get install ffmpeg libsm6 libxext6 -y