Skip to content

评估与基准

本页速览 RL 评估为什么难:回报方差、随机种子、样本效率与计算预算;主流基准图谱(Gymnasium、Atari、MuJoCo、DM Control、Procgen、Meta-World、Maze);评估报告规范。

评估与基准 ​

一句话定位:这一页讲清楚 RL 的评估与基准(Evaluation & Benchmarks)——RL 的评估比监督学习难一个量级:回报有方差、结果依赖随机种子、比较还牵涉计算预算;读完后你能搭出"固定 seed × 多次运行 × 学习曲线"的正确评估协议,看懂主流基准(Atari、MuJoCo 等)各自测什么,并能识破"只看一个 seed 下结论"的评估作弊。

一、为什么 RL 评估这么难 ​

1. 监督学习 vs RL:评估对象的本质差异 ​

维度监督学习RL
评估对象一个训练好的模型一个正在与随机环境交互的策略
指标测试集上的确定性指标回报(本身是随机变量)
一次评估测一遍即可必须跑多次(策略 + 环境都随机)
环境测试集固定训练环境 = 评估环境(无独立测试集)
额外维度无样本效率、计算预算

关键:监督学习里"训练集/测试集"天然分离;RL 里你训练用的环境和你评估用的环境是同一个——智能体完全可以"背下"训练环境的状态分布,评估时照样高分(这就是"评估作弊"的来源之一,见第四节)。

2. 回报的四个方差来源 ​

一次 RL 评估得到一个回报数字,它同时被四层随机性污染:

随机源说明
环境随机性同一策略在相同初始条件下也会走出不同轨迹
策略随机性随机策略(SAC/PPO)每次采样动作不同
种子链初始 seed 决定网络初始化 + 数据顺序 + 探索序列
训练噪声mini-batch 采样、梯度噪声造成训练轨迹不同

所以"一次运行"的回报不能说明任何问题。正确的单位是"多次运行(多个 seed)的分布"。

3. 非平稳性:训练中途评估 vs 训练后评估 ​

RL 策略在训练中不断变化,评估时必须明确"评估哪个时间点":

  • 最终性能:训练结束时策略的水平;
  • 学习曲线:整个训练过程中性能的演化(评估调参最重要的可视化,见调参与超参数优化)。

二、评估协议要素:五个必选项 ​

一套站得住脚的 RL 评估至少包含:

text
RL 评估五要素
─────────────────────────────
1. 固定 seed 集合(至少 5-10 个,覆盖 0..n)
2. 每个 seed 完整训练(不中途取"最好的那个 checkpoint")
3. 每个评估点多次采样取平均(去策略/环境噪声)
4. 报告分布:中位数 + IQR,而不是均值 ± std
5. 明确预算:训练步数 / 环境交互数 / 计算资源
─────────────────────────────

1. 为什么中位数 + IQR 而不是均值 ± 标准差 ​

RL 回报分布通常长尾(偶尔一次爆高分,或偶发崩溃到极低),均值会被长尾拉偏。中位数稳健、IQR(四分位距)直观显示稳定性。报告格式示例:

算法    中位回报   IQR       成功中位步数   交互数
PPO     245.0      [221, 262]  1.2M         50M
SAC     398.5      [372, 405]  0.8M         50M

2. 学习曲线:评估的核心可视化 ​

横轴=训练步数(或环境交互数),纵轴=回报。三张典型形态:

text
不收敛(欠学习)        振荡(不稳定)        正常收敛
▲                      ▲                    ▲
│ ╱╲                  │ ╱╲╱╲╱             │    ╱‾‾‾
│╱  ╲                 │╱      ╲            │  ╱
│    ╲                │         ╲╱╲       │ ╱
│     ╲               │              ╲    │╱
└─────────▶            └─────────▶         └─────────▶
  • 不收敛:奖励设计/超参问题(先查奖励工程再查超参);
  • 振荡:学习率太大 / 探索过度 / 价值高估(见Actor-Critic 家族);
  • 正常:初期平缓 → 中期陡升 → 后期平台。

三、样本效率 vs 最终性能:两个必须分开看的维度 ​

1. 一个常见错觉 ​

"算法 A 的最终回报比算法 B 高,所以 A 更好"——错。A 可能用了 10 倍样本才达到。在样本昂贵的场景(机器人、真实业务)里,样本效率与最终性能同等重要。

维度度量典型对比
样本效率达到某性能门槛所需交互数SAC 用 100K 步到 X 分,PPO 要 1M 步
最终性能训练收敛后的最高回报PPO 可能最终分数更高

正确的评估报告画两条轴都要:横轴交互数,看曲线谁先爬上去、谁爬得高。详见从零搭一套 RL 评估。

2. 计算预算公平性 ​

on-policy(PPO)与 off-policy(SAC)在相同"环境交互数"下的计算成本不同(PPO 每个 token 都要算 actor 和 critic 两个网络)。报告时必须同时声明:环境交互数 + 训练 wall-clock 时间 + GPU/CPU 资源。只报其一都是"预算不公平"。

评估作弊的常见形态

  1. 用"训练中最好的 checkpoint"报告(不是最终策略);
  2. 只用 1 个 seed,恰好撞上一个好 seed;
  3. 给自家算法调参、给对手用默认参数("苹果对橘子");
  4. 在训练环境评估(背题)。 完整反模式清单见常见陷阱与反模式。

四、主流基准图谱 ​

1. 基准总表 ​

基准环境/任务动作空间难度测什么适用
Gymnasium经典控制(CartPole、MountainCar、LunarLander)离散/连续低入门、调试学习/算法验证
Atari 100k / ALE49+ 街机游戏(像素输入)离散(18)中高视觉、稀疏奖励、泛化深度 RL 标准
MuJoCo机器人关节控制(HalfCheetah、Humanoid)连续中连续控制算法对比标配
DM Control像素/状态连续控制连续中高视觉控制DeepMind 系
Procgen16 程序生成游戏离散中泛化(未见关卡)泛化研究
Meta-World50 个机器人操作任务连续中高多任务、泛化meta-RL
MiniGrid / Maze网格迷宫离散低中探索、稀疏奖励探索研究
D4RL离线数据集离散/连续中离线 RL离线算法
Isaac Gym / Brax大规模并行物理连续高大规模并行大规模训练

2. 两大台柱:Atari 与 MuJoCo ​

  • Atari(Arcade Learning Environment, Bellemare et al., 2013):从原始像素学策略,考验"视觉 + 探索 + 时序",是 DQN 家族和探索研究的主战场。批评:部分游戏用随机策略也高分、环境确定性强(背题容易)、得分尺度差异大(需要 human-normalized 分数)。
  • MuJoCo(Todorov et al., 2012):连续控制基准,物理仿真、可精确复现,是 SAC/TD3/PPO 的标准擂台。批评:任务单一、容易"过拟合基准"(调参只对这几个任务有效)、动力学与现实差距大。

3. 泛化基准:Procgen、Meta-World ​

监督学习看重泛化,RL 曾经不看。泛化基准修正这一点:

  • Procgen:每个训练 seed 生成不同关卡,训练集与测试关卡不重叠——直接测"策略能不能用到没见过的关卡";
  • Meta-World:50 个不同的机械臂操作任务,测"多任务共享与快速适应"。

选基准的工程建议

  • 入门/教学:Gymnasium(见渐进式教程);
  • 验证连续控制算法:MuJoCo + 3 个 seed 起步;
  • 验证离散/视觉算法:Atari 100k(少样本快速迭代);
  • 要说服"能泛化":Procgen / Meta-World;
  • 离线算法:D4RL(对应数据集见数据集与工具档案)。

五、评估报告规范:一篇可信的 RL 实验该报什么 ​

1. 报告清单 ​

text
一份完整 RL 评估报告应包含
────────────────────────────
环境与任务:版本号、奖励设计、截断/终止定义
seed 数:至少 5(论文 10+)
评估协议:训练步数、评估间隔、每次评估采样次数
指标:中位数 + IQR + 学习曲线(含全部 seed 的曲线)
预算:交互数、wall-clock、硬件
超参:完整超参表 + 搜索方法(随机/网格/贝叶斯)
代码:指向可复现实现(或附录)
────────────────────────────

2. 学习曲线可视化规范 ​

  • 曲线画中位数,阴影画 IQR(不要只画均值);
  • 横轴统一为"环境交互数"(不同算法步数定义不同,PPO 的 step 与 SAC 的不同);
  • 附上"训练时间 vs 性能"对比(算力公平性);
  • 多个算法画在同一张图、同刻度。

与本站实践页的衔接

本页讲"评估为什么难、基准测什么",动手搭评估协议、写评估报告模板见从零搭一套 RL 评估;调参时怎么用评估区分"超参问题 vs 算法问题"见调参与超参数优化。

六、基准的批评与"过拟合基准"问题 ​

1. 过拟合基准:RL 圈的"应试教育" ​

"在 MuJoCo 的 HalfCheetah 上刷到 SOTA"已经越来越不能代表真实能力。原因:

  • 基准任务太少:主流对比集中在一打任务上,超参可以被调成"对这打任务最有利"——换一组任务立刻现原形;
  • 评估就是训练:训练环境和评估环境是同一个,智能体可以背下状态分布(见第一节);
  • 发表激励:论文按"在某某基准 +N 分"评价,研究跟着基准走,而不是跟着问题走。

这就是过拟合基准(benchmark overfitting):分数涨了,泛化没涨。

2. 减少过拟合的实践 ​

手段说明
多用程序化生成环境Procgen 每个关卡不同,训练/测试关卡不重叠(见数据集与工具档案)
多环境交叉验证不要只报 MuJoCo,混合 Atari + DM Control + 自建任务
报告"调参成本"写清楚超参是默认值还是专门搜出来的(诚实披露公平性)
独立测试分布刻意留出一组"从未参与开发"的任务做最终评估

3. 基准的正确心态 ​

基准不是"证明算法好"的工具,而是"暴露算法弱点的仪器"。分数是给审稿人看的,诊断是给自己用的——花同样时间盯着"为什么这条曲线在 1M 步后不涨",比再跑一个基准更有价值。

七、评估中的探索维度:别忘了"训练中表现" ​

评估不只是"最终得分"。RL 训练过程中还有一个关键维度——探索是否健康(见探索与利用)。调参时应该同时画三组曲线:

曲线看什么
回报性能是否上升
策略熵探索是否被过早压缩(熵骤降 = 过早收敛)
Q 值是否高估/虚高(Q 涨但回报不涨 = 价值幻觉)

这三组曲线是调参与超参数优化的"诊断仪表盘"。

八、不同子领域的评估侧重 ​

评估不是一刀切。离线 RL、多智能体、RLHF 各有各的"评估难",不理解特异性的评估比不评估更危险。

1. 离线 RL:评估最难的一类 ​

离线 RL 训练时禁止交互,所以"这个新策略好不好"只能靠离线手段回答。可用工具与各自的坑:

手段做法主要问题
轨迹级重要性采样用数据内轨迹按 IS 加权估计方差随轨迹长度指数爆炸,长时域任务几乎不可用
学习到的 Q/Critic 打分用训练出的价值函数评估策略Q 本身对 OOD 动作有幻觉(见离线强化学习),等于"用幻觉评价幻觉"
世界模型模拟学一个环境模型再在其中评估模型误差会传导进评估结论
保守价值(CQL 系)用"不会高估"的价值给策略排序只能给相对下界,不能给精确值

工程结论:离线评估的唯一可靠用途是"给候选策略排序",然后小流量在线验证。任何宣称"离线预测绝对上线性能"的方案都要警惕(详见常见陷阱与反模式)。

2. 多智能体:对手就是"测试集" ​

多智能体评估的最大问题:结果取决于对手是谁。一个策略能打败 A 对手,未必能打败 B 对手。评估要回答三件事:

  • 对谁评估:固定基线对手(随机/固定策略)、最佳响应(最强对手)、还是自博弈(自己跟自己打)?
  • 联盟稳定性:与合作者协同训练后,换一个合作者还能工作吗?
  • 涌现能力:是否出现了人类可解释的高级行为(OpenAI Five、AlphaStar 的评估都靠"对战胜率 + 人类评审"双通道)。

常见陷阱:只报告"对随机策略的胜率"——这只能证明"不是乱来",证明不了任何真实水平。严谨的 MARL 论文要报"对多个基线的完整胜率矩阵",详见多智能体强化学习。

3. RLHF / 语言模型:三套指标各有所图 ​

LLM 对齐的评估同时要监控三个维度,任何单一指标都会被"刷分":

指标测什么已知漏洞
奖励模型分数对齐于人类偏好代理Goodhart 定律:优化到极端会偏离真实偏好(见RLHF 与人类反馈对齐)
人工评估(preference win-rate)真实人类偏好贵、主观、难复现
标准能力基准(MMLU、代码评测)通用能力有没有掉测"能力"不测"对齐"

工程规范:奖励分数涨、人工 win-rate 不涨甚至跌 = 正在过度优化,立刻早停。这也是LLM 对齐:RLHF 实战里对齐税的监测方法。

4. 学习曲线的定量化:别只靠"目测" ​

"目测曲线谁高"不可靠。两个标准做法:

  • AUC(曲线下面积):对学习曲线积分,同时惩罚"慢"与"低"——一个指标同时包含样本效率与最终性能;
  • IQM(interquartile mean):对多次运行回报的中间 50% 取均值,比均值稳健、比中位数信息量高(Agarwal et al., 2021 推荐)。

九、常见误区清单 ​

  1. 1 个 seed 就下结论——运气曲线而已;
  2. 用最好 checkpoint 报告——不是策略的真实水平;
  3. 对手用默认超参——默认参数不等于公平;
  4. 不报计算预算——样本效率无从判断;
  5. 在训练环境评估——背题式高分;
  6. 均值当一切——被长尾拉偏;
  7. 不同算法"step"混为一谈——on/off-policy 的 step 定义不同,必须换算成"环境交互数"。

面试高频题:"你如何评估你的 RL 项目?"

答:固定 5 个以上 seed,每个完整训练,报告最终回报的中位数与 IQR,画学习曲线(横轴环境交互数),并同时报告 wall-clock 时间与超参表。然后反问面试官"评估预算与目标是什么"——评估协议本身就该适配项目目标(上线决策需要小样本快速评估,论文需要大规模严谨评估)。

延伸阅读 ​

参考资料 ​

  • Henderson, P., Islam, R., Bachman, P., et al. (2018). Deep Reinforcement Learning that Matters. AAAI. arXiv:1709.06560(RL 评估不可靠性的经典实证论文,必读)
  • Bellemare, M. G., Naddaf, Y., Veness, J., & Bowling, M. (2013). The Arcade Learning Environment: An Evaluation Platform for General Agents. JAIR. Atari 基准原始论文。
  • Todorov, E., Erez, T., & Tassa, Y. (2012). MuJoCo: A physics engine for model-based control. IROS. MuJoCo 引擎论文。
  • Cobbe, K., Hesse, C., Hilton, J., & Schulman, J. (2020). Leveraging Procedural Generation to Benchmark Reinforcement Learning. ICML. arXiv:1912.01588(Procgen)
  • Fu, J., Kumar, A., Nachum, O., Tucker, G., & Levine, S. (2020). D4RL: Datasets for Deep Data-Driven Reinforcement Learning. arXiv:2004.07219(D4RL 离线基准)
  • Agarwal, R., Schwarzer, M., Castro, P. S., Courville, A., & Bellemare, M. G. (2021). Deep Reinforcement Learning at the Edge of the Statistical Precipice. NeurIPS. arXiv:2108.13264(用聚合统计量做可靠 RL 评估,IQR 报告的权威来源)
  • Gymnasium 官方文档:https://gymnasium.farama.org/