与监督学习的区别
监督学习:有标准答案。输入 X,正确输出 Y,模型学习 X→Y 的映射。
强化学习:没有标准答案,只有奖励信号。
智能体(Agent)在环境中采取行动,环境给出奖励(或惩罚),智能体的目标是最大化累积奖励。
基本要素
- 智能体(Agent):学习者/决策者;
- 环境(Environment):智能体所处的世界;
- 状态(State):环境的当前情况;
- 动作(Action):智能体可以做的事;
- 奖励(Reward):环境对动作的反馈信号;
- 策略(Policy):智能体的行为准则——在状态 s 下该采取什么动作。
核心概念
回报(Return):未来累积的奖励。通常对未来奖励做折扣(因为未来的奖励不如眼前确定):
Return = r₁ + γ·r₂ + γ²·r₃ + ...,γ 是折扣因子(0 到 1 之间)。
价值函数(Value Function):从某个状态(或状态—动作对)出发,预期能获得多少回报。
有了价值函数,就知道了"哪些状态更有前途",从而指导决策。
两类方法
基于价值(Value-based)
学习一个价值函数,然后根据价值选择动作。
Q-learning:学习 Q(s, a)——在状态 s 采取动作 a 的价值。
DQN(深度 Q 网络):用深度神经网络近似 Q 函数。这是 2013–2015 年深度学习与强化学习结合的突破,在 Atari 游戏上达到人类水平。
基于策略(Policy-based)
直接学习策略函数 π(a|s)——在状态 s 下采取各动作的概率。
优势:可以处理连续动作空间(价值方法需要遍历所有动作取最大值,动作空间连续时不可行),且能学习随机策略。
REINFORCE / 策略梯度:沿着"能获得更高回报"的方向调整策略参数。
Actor-Critic
结合两者:Actor(策略网络)负责选动作,Critic(价值网络)负责评价动作好坏,指导 Actor 更新。
这类方法(如 PPO、SAC)是目前的主流。
关键难题
一、探索与利用(Exploration vs Exploitation)
是尝试新的可能更好的动作(探索),还是坚持已知最好的动作(利用)?
太保守会陷入局部最优;太激进会浪费大量尝试。
常用方法:ε-贪心(以 ε 概率随机探索)、上置信界(UCB)、在策略输出中加入熵正则项鼓励探索。
二、信用分配(Credit Assignment)
最终的奖励,应该归功于之前哪一步的行动?
下完一盘棋赢了,是哪一步最关键?这个问题很难。
三、奖励稀疏
在很多任务中,奖励极其稀疏——可能只有任务完成时才有奖励,中间过程零反馈。这让学习变得困难。
解决:奖励塑形(Reward Shaping,人为设计中间奖励)、好奇心驱动的探索、课程学习(从简单任务开始)。
四、样本效率
强化学习通常需要海量交互才能学好。在真实世界(如机器人)中,采样成本极高且缓慢。
这是为什么仿真环境在机器人强化学习中如此重要。
成功案例
- AlphaGo / AlphaZero:结合强化学习与搜索,在围棋等博弈中超越人类;
- 机器人控制:仿真训练后迁移到真实机器人;
- RLHF:用强化学习对齐大语言模型(前文提到过);
- 资源调度:数据中心的冷却优化(Google 曾报告实际应用)。
一个提醒
强化学习不是万能的。在有清晰监督信号、可以高效获取标签的任务中,监督学习通常更简单有效。
强化学习的价值在于那些没有标准答案、需要序列决策、可以通过交互获得反馈的场景。
说明:本文为强化学习的公开知识整理。