【MicroDuck RL 10】如何读懂训练日志

:books: 《MicroDuck RL:训练机器鸭从仿真走到真机》 系列课程 · 第 10 集 / 共 14 集
上一集:【MicroDuck RL 09】部署流程:从仿真到真机(Sim2Real) | :open_book: 课程目录 | 下一集:【MicroDuck RL 11】命令速查表

这一集的内容来自仓库 AGENTS.md——项目团队用无数次失败训练换来的经验,是本系列含金量最高的部分之一。

看三个东西

  1. 平均奖励在涨;
  2. 回合长度符合任务预期(走路任务里回合总是很快结束 = 总是在摔倒);
  3. 主任务项真的在涨——总奖励可能全靠正则项涨而技能从未出现。这是最常见的自欺:曲线很漂亮,机器人原地没动。

所有惩罚项必须 ≤ 0

Episode_Reward/<项> 记录的是加权后的值;给"自取负"的惩罚函数配了负权重,会负负得正变成奖励漏洞,策略会疯狂刷它。符号约定这件事,写配置时值得停下来确认一遍。

权重为 0 的项读数为 0

要结合课程权重表解读——某项惩罚前期没生效,可能只是课程还没把它打开。

RL 会钻每一个没写死的空子

没定义的姿态、没限制的到达方式,都会被策略利用。经验法则:关键行为用硬性状态门控(触地、姿态角、锁存器)定义,而不是小惩罚。惩罚是软约束,策略会跟它讨价还价;门控是硬约束,没得商量。

训练"失败"时先测量再推理

加载 checkpoint 做无头评估(各出生类型、终止状态分布)。很多"失败"其实是早停的 checkpoint 或评估口径问题,不是策略没学会。

视频和指标都要看

指标通过但视频里明显不对的情况真实存在。指标是你写出来的东西的投影,视频才是现实。

TensorBoard 里对应关注什么

面板 看什么
Episode_Reward/* 各项加权奖励,确认主任务项在涨、惩罚项 ≤ 0
Episode_Termination/* 摔倒率
Curriculum/* 课程进度
Metrics/* 跟踪误差

下一集开始是工具类内容:命令速查表、练习路线、实操记录与 FAQ。


:open_book: 系列课程目录:【系列课程】MicroDuck 强化学习:训练机器鸭从仿真走到真机 · 课程目录与导读