1.2 特点与挑战


1.2 特点与挑战

本节摘要:RL 特点:延迟奖励、探索-利用权衡、非平稳数据分布。挑战:样本效率低、奖励稀疏、训练不稳定、安全约束。

本节目标

  1. 列举 RL 相对 SL 的三项独特难点
  2. 解释探索-利用为何不可回避
  3. 说明稀疏奖励对 Q-learning 的影响

核心特点

延迟奖励:当前动作的好坏可能要在多步后才显现——围棋一步棋、库存决策一周后才见利润。

非 i.i.d. 数据:(s,a,r,s') 序列强相关,不能像 SL 随机 shuffle batch。

探索-利用:只选当前 Q 最大 → 错过更优策略;随机探索 → 浪费样本。

主要挑战

挑战 表现 常见应对
样本效率 需百万步 模拟器、模仿学习
稀疏奖励 Q 长期为 0 奖励 shaping、HER
不稳定 loss 震荡 target network、PPO clip
连续动作 Q 表爆炸 DDPG、SAC
安全 试错代价高 约束 RL、离线 RL

SOURCE 中 AlphaGo/AlphaZero 用自对弈产生密集中间信号;机器人真实环境则样本贵,常先用仿真。

⚠️ 常见坑:奖励只在终局给 ±1——中间状态无梯度,tabula rasa 极难学。

💡 关键直觉:问题驱动选算法——先诊断是「探索不够」还是「价值估计方差大」。

一节小结

  • 延迟与非 i.i.d. 数据
  • 探索-利用永恒张力
  • 稀疏奖励是首要工程难题
  • 深度 RL 引入不稳定新因素
  • 安全场景限制在线探索

深度扩展:为什么 RL 数据不能像监督学习那样"打乱"

本节说 RL 数据是非独立同分布(non-i.i.d.)的,这是它与监督学习最容易被忽视的差异。下面用一段对比示意来说明后果,以及工程上常用的应对办法。

# 监督学习:数据可以随机洗牌,样本之间无依赖 for epoch in range(epochs): random.shuffle(dataset) # 打乱完全没问题 for x, y in dataset: model.step(x, y) # 强化学习:轨迹内样本强相关,且分布随策略变化 trajectory = [(s0,a0,r0,s1), (s1,a1,r1,s2), (s2,a2,r2,s3)] # 相邻 transition 的 s 高度相关;策略一变,轨迹整体变化

两个层面的"非独立":第一层是时间相关——轨迹里 s_t 和 s_{t+1} 只隔一步,如果按原始顺序逐条喂给神经网络,模型会"过拟合最近的状态",这正是深度 RL 里经验回放(第 5 章 DQN)要解决的;第二层更根本——收集数据的策略本身在变。监督学习的训练集是固定的,而 RL 每次策略更新后,产出的轨迹分布就变了,这是"移动目标"问题的一个来源。

样本效率为何是瓶颈:假设一个环境最优策略需要一百万个样本才收敛。在模拟器里这不是问题,但换到真实机器人上,采集一百万次交互的代价极高。工程上的应对有几条路:先在仿真环境里训练再迁移到真实环境(sim-to-real);用离线数据做离线强化学习;或者干脆降低样本需求——这正是"无模型方法不学环境模型、直接吃经验"的动机。

三种典型故障的快速诊断:训练时如果奖励曲线长时间平坦,优先怀疑探索不足(ε 太小);如果曲线剧烈震荡不收敛,优先怀疑学习率太大或目标不稳定;如果收敛到次优解,优先怀疑奖励设计(Agent 在刷一个你不想量到的指标)。把本节"问题驱动选算法"的思路记住:先诊断症状,再选对应手段,比盲目换算法更有效。

动手练习:诊断一次"训练失败"

给自己一个真实的失败场景做诊断练习。场景:一个迷宫找出口的智能体,训练一万步后仍然到处乱撞,平均奖励几乎为 0。请按症状排查:先看奖励设计——是不是只在出口给 +1、其余全为 0?若是,这属于"稀疏奖励",连正确的偶然路径都很难碰到,Q 长期为 0 是必然;再看探索——ε 是否被设成了 0 或降得太快?若是,智能体锁死在早期噪声里;最后看学习率——α 太大可能让已学到的价值被后续噪声覆盖。请把这三个嫌疑按"最可能 → 最不可能"排序,并为每项写出一个验证实验(比如"把中间节点奖励改为逐级 +0.1 再跑两万步对比曲线")。做完这个练习,你会获得一种宝贵的"诊断思维":强化学习调参不是碰运气,而是把每个症状对应到具体机制上。这份诊断思路在第 3 章 ε 衰减、第 5 章 DQN 调试里会反复用到,值得单独记住。它也是"问题驱动"这个教程主调的具体落点:先看现象,再定位机制,最后选手段。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U