在真实手臂上运行推理
部署意味着实时运行训练有素的检查点,将实时摄像头和联合观察结果输入网络,并在物理手臂上执行输出操作。 推理脚本以 50Hz 处理观察-动作循环。
对于首次部署运行,请将手放在物理急停按钮附近。 新部署的策略在预热真实硬件环境时有时可能会做出意外的动作。 这对于前 2-3 集来说是正常的。 之后,行为应该稳定下来。
有关全面的部署和生产指南,包括安全范围和看门狗定时器,请参阅 OpenArm 生产指南.
评估方法
Do not evaluate your policy informally. 使用结构化协议——这是了解您所做的更改(更多数据、不同的检查点、不同的任务框架)是否真正提高了性能的唯一方法:
| 协议项目 | 规格 |
|---|---|
| 每次评估的集数 | 最少 10 个,20 个以获得高可信度结果 |
| 对象起始位置 | 固定的。 使用胶带标记。 每集的位置都一样。 |
| 对象类型 | Same object as training. 照明必须符合训练条件。 |
| 什么才算成功 | 物体放置在距目标 3 厘米以内的位置。 手臂回到家。 发作期间没有人为干预。 |
| 故障分类 | 记录失败类型:错过抓取/掉落物体/错误目标/超时。 这会告诉您要修复什么。 |
| 报告指标 | 成功率=成功次数/总次数。 报告集数(例如,“7/10 = 70%”)。 |
数据飞轮:如何变得更好
成功 7/10 次的政策是一个好的开始,但通往 9/10 或更高的道路是通过数据飞轮。 这是机器人在生产中学习的核心循环:
收集
记录演示,包括当前政策遇到的失败案例
火车
添加新演示后,对扩展数据集进行重新训练(或微调)
评价
运行结构化评估协议。 成功率有提高吗? 还存在哪些故障模式?
分析
观看失败视频。 确定策略失效的具体状态。 在那里收集目标数据。
飞轮的关键见解: 目标数据胜过随机数据。 不要再录制 50 个随机演示,而是观看失败视频并确定出现问题的确切时刻。 记录 20 个专门涵盖该困难状态的演示(例如,在工作区边缘的抓握,或以不寻常的角度抓取物体)。 20 个有针对性的演示比 50 个随机演示的成功率会提高得更快。
常见故障模式及其修复方法
- 手臂超出抓握位置: 策略的操作块太大或者您的数据具有较高的速度方差。 在抓点附近低速再录制 10 个演示。 或减少
chunk_size训练配置中从 100 到 50。 - Arm 在训练对象上成功,但在稍有不同的对象上失败: 您的训练数据缺乏对象位置多样性。 在 10 厘米半径内的 5 个不同位置记录 20 个对象演示。 这教导政策要概括。
- 政策冻结或产生重复动议: CVAE 样式变量正在崩溃。 这通常意味着您的数据集有太多差异 - 模型无法找到一致的样式。 检查混合演示(不同的操作员、不同的任务框架)并清理数据集。
第 6 单元完成时...
在结构化评估运行中,您的手臂有十分之七能够自主完成拾放任务。 您已经观看了 3 个失败视频并找出了问题所在。 您对数据飞轮的了解足以规划您的下一次改进迭代。 这是结构化路径的结束,但也是机器人学习实践的开始。
下一步是什么
你有基础。 从这里开始可以去哪里: