ACT 是一个 轻量且高效的模仿学习 policy,特别适合细粒度操作任务。由于训练时间快、计算需求低且性能强劲,它是 我们推荐你入门 LeRobot 时首先尝试的模型。
观看 LeRobot 团队的这个教程,了解 ACT 的工作原理:LeRobot ACT 教程
Action Chunking with Transformers(ACT)由 Zhao 等人在论文 Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware 中提出。该 policy 旨在使用经济实惠的硬件和极少的 demonstration 数据实现精确、接触丰富的操作任务。
ACT 作为优秀的入门起点,原因有几点:
ACT 使用基于 transformer 的架构,包含三个主要组件:
该 policy 的输入为:
z(在训练期间学习,inference 期间设为零)并输出 k 个未来 action sequence 组成的 action chunk。
ACT 与标准 LeRobot 训练流水线无缝协作。以下是在你的 dataset 上训练 ACT 的完整示例:
lerobot-train \
--dataset.repo_id=${HF_USER}/your_dataset \
--policy.type=act \
--output_dir=outputs/train/act_your_dataset \
--job_name=act_your_dataset \
--policy.device=cuda \
--wandb.enable=true \
--policy.repo_id=${HF_USER}/act_policy如果你的本地电脑没有强大的 GPU,可以按照 ACT 训练 notebook 使用 Google Colab 训练模型。
训练完成后,你可以使用 lerobot-record 命令搭配训练好的 policy 来评估 ACT policy。这将运行 inference 并记录评估 episode:
lerobot-rollout \
--strategy.type=base \
--policy.path=${HF_USER}/act_policy \
--robot.type=so101_follower \
--robot.port=/dev/ttyACM0 \
--robot.cameras="{ front: {type: opencv, index_or_path: 0, width: 640, height: 480, fps: 30}}" \
--display_data=true \
--task="Your task description" \ # can be skipped for ACT
--duration=60