返回OpenArm Path

训练你的第一政策

训练曲线,知道何时停止,达到70%以上的成功率. ~3小时.

政策培训 时间: 3小时

目标:一个成功的政策超过70%的时间在你的测试任务.

模仿学习实际上是什么作用的

在运行训练命令之前,花两分钟时间了解模型实际学习的内容.模拟学习训练一个政策网络将观察 (摄像头图像+当前联合状态) 映射到行动 (下一个联合角度). 网络从来没有收到奖励信号, 它只能看到你的示范,

ACT(Action Chunking with Transformers) 预测一次的100个未来行动,而不是单一步骤.这可以防止整个剧集中的错误积累:即使一个单个预测略有失调,则该部分提供稳定的轨迹缓冲器.然后它每100个时间步骤 (2秒在50Hz) 进行重新规划.这就是为什么ACT处理更长时间的任务比简单的行为克隆更好.

阅读 [模仿学习基础知识]T1) 在机器人图书馆.

GPU还是CPU?

对于100k步骤,NVIDIA GPU的训练需要约45分钟. CPU上的训练需要34小时,同时运行.这两种产品都具有相等模型质量.如果您没有本地 GPU,训练命令在云实例上工作相同 (Lambda Labs或 Google Colab与A100运行时间).说明在LeRobot备用程序的 README中.

在数据集中列出 ACT

在您的虚拟环境中运行训练脚本.下面的配置值为OpenArm的50集集的选择和位置数据集进行校准.

源~/openarm-env/bin/activate python -m lerobot.scripts.train \ --dataset-path ~/openarm-datasets/pick-and-place \ --policy act \ --batch-size 8 \ --lr 1e-5 \ --num-train-steps 100000 \ --eval-freq 5000 \ --save-freq 10000 \ --log-freq 500 \ --output-dir ~/openarm-policy/pick-and-place-v1 # 培训将每500步打印损失,每5000步评估结果

开始训练,然后监测输出.你不需要一直在看它,但每2030分钟检查一次,以确认损失减少,并且跑步没有崩.训练可以在睡觉时一夜跑.

了解训练曲线

,学习正确阅读它们,它们告诉你你的训练是否健康,以及何时停止.

培训失败

应该在第一个20万步骤中急剧减少,然后继续慢慢减少.一个高原超过0.05的损失通常表明数据质量问题检查数据集.一个振幅的损失表明您的学习速度太高.

同等的成功率

需要一个物理臂或模拟.这是真正重要的数字.你想要在部署之前超过70%.它经常落后训练损失损失可以看起来很好,而成功率仍然在改善.

行动:

预测和基本真相行动之间的平均二次错误. 对于训练有素的选择和地点政策,应该降到0.01以下. 80k步骤后的高动作MSE意味着模型正在与任务复杂性斗争,或者您的数据不一致.

利率 (具体为ACT)

ACT使用一个CVAE,KL重量在训练期间被从0到10点点.注意40k步骤左右的稳定.如果它从来没有相近,模型将无法编码.

什么时候停止训练

不要只跑到100万步,然后停下来.

  • 三次连续评估的成功率均 模型已经趋于一致.
  • ** 平均成功率超过70%** 这是6号单位部署的门.如果你在60万步骤上达到70% ,你可以早点停下来部署该检查点.
  • 训练损失仍在减少,但 eval是平坦或下降 模型过度适合. 举个最后的检查点, eval在顶峰.这是最好的检查点.
  • ** 100k步骤** 如果成功率低于40%,再回到第4单元.

选择性深水

传播政策和 π0

一旦你有一个工作的ACT政策,自然下一个实验是扩散政策.它更好地处理多模式任务 (例如,臂可以从两个角度接近对象) 成本较慢的推断.RCSV研究部分涵盖了这两者.

第五单元完成,当...

您的评估成功率在选择和地点任务上超过70%.您在T0保存了一个检查点,并且您知道哪个步骤号码产生了最佳结果.您准备好将此政策放在第6单元的实力上.

[← 回到路径概述]