网站首页 全球最实用的IT互联网站!

人工智能P2P分享Wind搜索发布信息网站地图标签大全

当前位置:诺佳网 > 人工智能 > 人形机器人 >

强化学习中的奖励困境:密集与稀疏奖励,及四

时间:2026-03-05 18:07

人气:

作者:admin

标签:

导读:密集奖励与稀疏奖励的本质差异——兼论奖励塑形、课程学习、内在奖励与分层强化学习 Gu_n_ian_ 九章云极普惠算力...

密集奖励与稀疏奖励的本质差异——兼论奖励塑形、课程学习、内在奖励与分层强化学习(后文有人话讲解)

密集奖励 vs 稀疏奖励

在强化学习(Reinforcement Learning)中,奖励信号的设计方式对智能体的学习效率有根本性影响。


密集奖励(Dense Reward)

智能体在每一个时间步或几乎每一步都能收到反馈信号。

特点:

  • 反馈频繁,学习信号丰富
  • 智能体可以快速判断哪些行为好、哪些行为差
  • 设计复杂,需要人工精心定义每一步的奖励函数

例子:

  • 机器人走路:每一步都根据前进距离、姿态稳定性给予奖励
  • 游戏 AI:每击中一个敌人 +1,每损失血量 -0.1
  • 自动驾驶:每保持在车道中央就持续给予小额奖励

优点: 学习效率高,收敛快
缺点: 奖励函数难以设计,容易出现"奖励欺骗"(reward hacking)——智能体找到了不符合预期的方式来最大化奖励


稀疏奖励(Sparse Reward)

智能体只在完成特定关键事件时才收到奖励,大多数时间步奖励为 0。

特点:

  • 反馈稀少,学习信号匮乏
  • 奖励函数简单自然,符合真实世界
  • 智能体必须探索很久才能偶尔得到一次反馈

例子:

  • 下棋:只有赢棋/输棋时才给 +1/-1
  • 迷宫导航:只有走出迷宫才给奖励
  • 机械臂抓取:只有成功抓到物体才给奖励

优点: 奖励定义简洁,不容易被"钻空子"
缺点: 探索效率极低,在复杂任务中几乎无法学习


对比总结

密集奖励 稀疏奖励
反馈频率 每步都有 偶尔才有
学习速度
设计难度
主要风险 奖励欺骗 探索困难

如何应对稀疏奖励?

实践中常用以下方法缓解稀疏奖励的问题:

  1. 奖励塑形(Reward Shaping):人为添加中间奖励,将稀疏变密集
  2. 课程学习(Curriculum Learning):从简单任务逐步过渡到复杂任务
  3. 内在奖励(Intrinsic Motivation):鼓励探索新状态(如 RND、ICM 方法)
  4. 分层强化学习(Hierarchical RL):将大目标分解为多个子目标

四大方法深度解析

一、奖励塑形(Reward Shaping)

核心思想

在原始奖励 RRR 的基础上,叠加一个人工设计的势函数(Potential Function),引导智能体朝目标方向前进。

数学形式

R′(s,a,s′)=R(s,a,s′)+F(s,s′)R'(s, a, s') = R(s, a, s') + F(s, s')R(s,a,s)=R(s,a,s)+F(s,s)

其中 F(s,s′)=γΦ(s′)−Φ(s)F(s, s') = \gamma \Phi(s') - \Phi(s)F(s,s)=γΦ(s)Φ(s) 称为势能差Φ(s)\Phi(s)Φ(s) 是状态 sss 的势函数。

Ng et al. 1999 的重要定理: 只要塑形项是势函数差的形式,就不会改变最优策略,只会加速学习。

实际例子:机械臂抓取

原始奖励:抓到物体 → +1,否则 0

塑形后:
  Φ(s) = -distance(手, 物体)   # 距离越近,势能越高
  每步奖励 = γ·Φ(s') - Φ(s)   # 靠近 → 正奖励,远离 → 负奖励

风险:奖励欺骗(Reward Hacking)

若势函数设计不当,智能体可能学会"反复靠近再离开"来刷奖励,而不是真正完成任务。这就是为什么势函数差的形式至关重要——它在数学上保证了最优策略不变。


二、课程学习(Curriculum Learning)

核心思想

模仿人类教育方式:从简单到复杂,循序渐进地提升任务难度,让智能体在每个阶段都能获得足够的学习信号。

难度递进示意

阶段 1:迷宫 3×3,出口很近        → 容易探索到奖励
     ↓
阶段 2:迷宫 5×5,出口稍远
     ↓
阶段 3:迷宫 10×10,有障碍物
     ↓
阶段 4:迷宫 20×20,动态障碍物    → 最终目标

两种主要范式

类型 说明 代表方法
人工课程 人工预定义难度序列 传统 Curriculum Learning
自动课程 算法自动调整难度 ACL、PAIRED、PLR

自动课程学习(ACL)的关键思路

  • 学习进度(Learning Progress):只选那些"不太难也不太简单"的任务——即智能体正在进步的任务
  • 用一个 Teacher 网络动态生成合适难度的任务给 Student 网络训练
Teacher: "当前你的胜率是 40%,我给你生成难度适中的关卡"
Student: 训练 → 胜率提升到 60%
Teacher: "进步了!适当加难"

著名案例

OpenAI 训练机械手玩魔方时,就用了自动课程学习——从简单的手指移动,逐步到完整的魔方还原。


三、内在奖励 / 好奇心驱动(Intrinsic Motivation)

核心思想

不依赖外部奖励,给智能体植入内在动机——对新奇状态的好奇心,鼓励它主动探索未知区域。

Rtotal=Rextrinsic+β⋅RintrinsicR_{total} = R_{extrinsic} + \beta \cdot R_{intrinsic}Rtotal=Rextrinsic+βRintrinsic

两大主流方法

1. ICM(Intrinsic Curiosity Module,2017)
┌─────────────────────────────────────────┐
│  Forward Model:给定 (s, a) → 预测 s'   │
│  Inverse Model:给定 (s, s') → 预测 a   │
│                                         │
│  内在奖励 = Forward Model 的预测误差    │
│  → 越难预测的状态 → 越高的好奇心奖励   │
└─────────────────────────────────────────┘

直觉:如果我对某个状态的后果预测很差,说明这是个陌生状态,值得探索。

2. RND(Random Network Distillation,2018,OpenAI)
固定随机网络 f(s):随机初始化,永远不变
可训练网络 g(s):不断学习去模仿 f(s)

内在奖励 = || f(s) - g(s) ||²
         = 预测误差

直觉:对于从未见过的状态,g 还没学会模仿 f,误差大 → 奖励高;访问多了,误差变小 → 奖励降低,自然减少重复探索。

经典演示:Montezuma’s Revenge

这个游戏奖励极为稀疏(传统 RL 几乎学不会),但加入 RND 内在奖励后,智能体因为"好奇心"自发探索了大量房间,最终达到超人类水平。

注意:"噪声电视"问题

若环境中有随机噪声源(如随机播放的电视),好奇心型智能体会被吸引并卡死在那里,因为噪声永远新奇。RND 对此有一定免疫,但这仍是研究热点。


四、分层强化学习(Hierarchical RL)

核心思想

将一个长期、复杂的任务分解为多层次的子目标,不同层级的策略负责不同的时间粒度。

高层策略(Manager):制定长期目标    → 每 k 步做一次决策
        ↓ 子目标
低层策略(Worker):执行具体动作    → 每步都做决策

代表算法:HIRO(2018,Google Brain)

┌──────────────────────────────────────────────┐
│  Manager(每 k=10 步)                        │
│    输入:当前状态 s                           │
│    输出:子目标 g(目标状态的方向)           │
│    奖励:来自环境的原始稀疏奖励              │
└───────────────────┬──────────────────────────┘
                    │ 子目标 g
┌───────────────────▼──────────────────────────┐
│  Worker(每步)                               │
│    输入:当前状态 s + 子目标 g               │
│    输出:原始动作 a                           │
│    奖励:|| s_{t+1} - g ||² 的负值(密集!) │
└──────────────────────────────────────────────┘

关键洞察:低层的奖励是密集的(离子目标的距离每步都变化),稀疏奖励问题只留给高层,而高层决策频率低,更容易学习。

经典例子:蚂蚁走迷宫

高层目标:走到迷宫出口(稀疏奖励)
  → 子目标1:走到走廊入口
  → 子目标2:走到转角处
  → 子目标3:走到出口

低层任务:控制8个关节,实现位移(密集奖励)

低层策略只需学会"如何移动身体",高层策略只需学会"去哪里",两者解耦,大大降低了学习难度。

与其他方法的对比

方法 解决的核心问题 主要代价
奖励塑形 引导方向,加速收敛 需要领域知识,可能设计错
课程学习 提供渐进学习信号 需要定义难度度量
内在奖励 无需领域知识的探索 可能被噪声干扰
分层 RL 长视野任务分解 训练复杂,层间协调难

总结:如何选择?

任务特点                        推荐方法
─────────────────────────────────────────────
有领域知识,知道"中间状态好坏"  → 奖励塑形
任务有天然难度梯度              → 课程学习  
完全未知环境,无法定义中间奖励  → 内在奖励
任务时间跨度极长,有自然子结构  → 分层 RL
复杂真实任务                    → 多种方法组合

这四种方法并不互斥,现代 SOTA 系统(如 OpenAI Five、AlphaCode)往往组合使用多种方法来克服稀疏奖励的挑战。


没看懂?人话给你讲解:


先说清楚"稀疏奖励"是什么问题

想象你在教一只狗学会"开冰箱拿啤酒"。

稀疏奖励就是:只有狗真的把啤酒叼过来了,你才给它零食。

问题是——狗根本不知道自己该干嘛,它乱跑乱蹦,99%的时间什么反馈都没有,完全不知道自己做对了还是做错了。学习效率极其低下。

下面四种方法,就是在想办法解决这个问题。


一、奖励塑形——“沿途插路牌”

一句话:把终点奖励,拆成沿途的小奖励。

还是教狗开冰箱的例子:

❌ 只有拿到啤酒才给零食(稀疏)

✅ 走向冰箱方向 → 给一点点零食
靠近冰箱 → 再给一点
碰到冰箱 → 再给一点
打开冰箱 → 再给一点
拿到啤酒 → 大奖!

就像在马拉松跑道上每隔一公里放一个补给站,跑手不会跑到一半完全不知道自己在正确路线上。

最大的坑: 如果路牌插得不对,狗可能学会一直在冰箱附近打转,因为"靠近冰箱"一直有零食吃,但就是不开门。所以路牌要插得有技巧。


二、课程学习——“从小学教到大学”

一句话:先学简单的,再学难的,循序渐进。

你不会第一天教小孩微积分,对吧?先教 1+1=2,再教乘除法,再教方程式……

强化学习也一样:

???? 第一周:3×3 的小迷宫,出口就在旁边
???? 第二周:5×5 的迷宫,绕几个弯
???? 第三周:10×10,加上障碍物
???? 第四周:20×20,障碍物还会动

每个阶段 AI 都能频繁拿到奖励,学到东西,再挑战下一关。

关键点: 难度要恰到好处——太简单没挑战,太难又学不动。最好的状态是"跳一跳够得到"。

有研究者甚至训练了一个"老师 AI"专门负责出题,实时观察"学生 AI"的进度,动态调整难度,就像私教一样。


三、内在奖励——“给 AI 装上好奇心”

一句话:不靠外部奖励,让 AI 自己对新事物感兴趣。

小孩子没人奖励他,他也会到处乱翻、乱探索——因为好奇心本身就是驱动力。

我们给 AI 也装上类似的东西:

去没去过的地方 → 自动获得"好奇心奖励"
反复去同一个地方 → 没什么奖励,去别处吧

具体怎么实现?有个很聪明的方法(RND):

给 AI 出一道题:“预测这个状态会怎样发展”
如果 AI 预测得很准 → 说明见过,不新鲜,奖励少
如果 AI 预测得很差 → 说明没见过,很新奇,奖励多!

这样 AI 就会自发地去探索它"不懂"的地方。

有个有趣的问题: 如果房间里有一台随机播放的电视,AI 会被它吸引然后傻站在那里一直看——因为画面永远在变,永远"新奇",永远有奖励。这就是"噪声电视问题",科学家们还在研究怎么解决。


四、分层强化学习——“领导 + 员工”

一句话:大目标交给"领导"规划,具体执行交给"员工"。

想象你让一个新员工去北京开会:

你(高层):你去北京,到XX会议室,开完回来。

员工(低层):好的!(自己决定:打车去机场 → 办理登机 → 坐飞机 → 打车去酒店 → 走路去会议室……)

你不需要告诉他每一步怎么走,他自己解决细节。你只管大方向。

在 AI 里也一样:

高层 AI(每隔10步做一次决策):
  "去迷宫左边那个走廊"
        ↓
低层 AI(每步都在决策):
  控制腿部关节,一步一步走过去

为什么管用?

低层 AI 的奖励变密集了——"离目标点越来越近"每步都有反馈,好学!

高层 AI 不用管腿怎么动,只管往哪走,简单多了!

两层各司其职,把一个超级难的问题拆成了两个相对简单的问题。


一张图总结

问题:AI 不知道自己做的对不对(稀疏奖励)
         │
         ├─ 你知道"中间步骤"怎么算好?
         │      └─ 是 → 奖励塑形(插路牌)
         │
         ├─ 任务有难易之分?
         │      └─ 是 → 课程学习(从简单练起)
         │
         ├─ 环境未知,无从下手?
         │      └─ 是 → 内在奖励(装上好奇心)
         │
         └─ 任务又长又复杂?
                └─ 是 → 分层 RL(领导+员工分工)

这四招不是非此即彼,真实项目里常常是一起用,就像学习一门新技能,你可能同时需要:好老师循序渐进教你(课程学习)、做对了及时表扬你(奖励塑形)、加上你自己的求知欲(内在奖励)。

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信