CS285-Deep Reinforcement learning-Lecture

起因

今天是25.11.5 因为实在不想学英语,外加看了一些课的时候突然发现 自己原来很想的速通课程的计划总是搁置,所以想通过记笔记的方式督促自己学cs的课程,因为实际上只是学习课程的话 重点在坚持 其实难度倒不是很大。然后同时也是最近觉得科研要保证的留痕这点 也应该放到平时的课程学习中,因此开始记笔记

一共是100个15min左右的视频,目前初步计划是每个视频记录依据到两句话 然后总的lecture1 作为一个这样、

Lecture 1 Overview

Question1 现在强化学习的制约因素


  1. 数据效率与可扩展性(Sample efficiency & scalability)

当前最核心的瓶颈之一是:要学出强策略,RL 往往需要极其大量的交互数据,而这些交互大多是“昂贵的”“慢的”甚至“危险的”。

表现形式:

代表性方向与论文:

深层问题在于:RL 的目标是“交互数据上的决策性能”,而不是 i.i.d. 数据上的损失最小化,这让它天然比监督学习更“数据饥渴”。


  1. 泛化与鲁棒性(Generalization & robustness)

大多数 RL 算法在“训练环境”中表现极好,但在稍微变化的环境就迅速退化——这在现实部署中是致命的。

典型现象:

相关研究方向:

本质上,这是“表示学习 + 分布外泛化”问题在 RL 里的极端版本。


  1. 奖励建模与对齐(Reward specification & alignment)

理论上,RL 只要有一个“好的奖励函数”就可以学习;但在现实中,设计或学习正确的奖励本身就是核心难题,并且直接关系到安全性与对齐问题。

主要困难:

近期有三个比较主流的方向:

  1. 逆强化学习 / 奖励学习(IRL, Reward learning):从专家行为中推断隐含的奖励结构,但对示范数据质量高度敏感。

  2. 人类偏好学习(preference-based RL, RLHF):通过人类比较或打分学习奖励模型,目前在大语言模型对齐中非常成功,但在连续控制或复杂环境中仍不成熟,且存在“奖励模型自身偏差”的问题。

  3. 基于信息论或内在动机的自监督奖励(curiosity, empowerment):让智能体追求“信息增益”“多样技能”等抽象目标,但距离现实任务需求还有明显 gap。

更深刻一点讲:奖励不仅编码“任务”,还隐含“价值观与约束”,这已经超出传统 RL 设定。


  1. 优化稳定性与长时序信用分配(Optimization & credit assignment)

RL 的优化问题本身就比监督学习困难得多:

近期研究聚焦于:

不过整体而言,当前RL在大规模、长地平线任务上的训练仍然十分脆弱。


  1. 安全与可控性(Safety & controllability)

在真实世界部署 RL 系统时,安全性是绕不过去的制约:

Safe RL 尝试把约束(如碰撞概率、能耗上界)显式写进优化目标或通过 Lagrangian 等手段处理,但在高维连续环境中,目前只能解决相对简单的约束形式,缺乏成熟的工程化方法。


总结一句话

从比较“深刻”的角度说,现在强化学习的核心制约不是**“算法是否足够聪明”**,而是:

  1. 如何在有限数据与计算预算下,可靠地学习复杂决策策略;

  2. 如何让策略在环境变化分布偏移下仍然可泛化;

  3. 如何以可控、安全、对齐的方式,定义或学习“正确的目标”本身

这三点叠加在一起,就是为什么我们在论文里看到很多漂亮的 RL 结果,但距离稳定、大规模的现实部署仍有明显差距。

Question2 制约

问题
image-4.png|636x272

Q3 单一算法还是多种算法综合

file-20251109154750582.png|636x364

Lecture 2 Supervised Learning

Q1单纯模仿不行

file-20251109162329652.png

但在行为克隆中:

改进方向:

  1. Be smart about how we collect (and augment) data
    • 改进数据收集方式:让专家示范包含更多可能状态,或在训练中加入数据增强。
  2. Use very powerful models that make very few mistakes
    • 提升模型容量(例如大模型、transformer),减少早期误差传播。
  3. Use multi-task learning
    • 融合多任务或多专家数据,提高泛化能力。
  4. Change the algorithm (DAgger)
    • 最重要的一点:用 DAgger (Dataset Aggregation) 替代纯行为克隆。
    • DAgger 通过在模型执行时不断让专家纠正,逐步收集模型“出错”状态下的正确动作,从而克服误差累积问题。

https://gemini.google.com/share/de668b8d245f

Lecture 4

Q1 目标函数 最大化什么

file-20251109211041551.png|525x323

Q2 miu T 的意义

file-20251109212553171.png|578x272
好的,你提供的这张图片非常核心,它展示了强化学习(特别是基于模型和策略梯度的方法)中关于稳态分布(Stationary Distribution的数学基础。

简单来说,这些公式在回答一个问题:“如果一个智能体(agent)按照一个固定的策略 π 在一个环境中无限期地运行下去,那么在很久很久以后,我们随机抽一个时间点,智能体处于某个状态 s (或者执行某个动作 a) 的概率是多少?”

这个“很久很久以后”的概率分布,就是稳态分布。


好的,这里是这段解释的简化版,只保留核心定义:

🎯 稳态分布:核心思想

稳态分布回答一个问题:如果智能体按一个固定策略 π 运行无限久,它处于某个状态 s (或执行 s,a 组合) 的最终概率是多少?


📝 公式速查

  1. Pπ (策略诱导的状态转移):

    • Pπ(s,s)=aπ(as)P(ss,a)
    • 解释: 打包了“策略 π”和“环境 P。它代表:“在状态 s,按策略 π 走一步,到 s 的总概率。”
  2. d=dPπ (状态固定点):

    • 解释: 稳态的数学定义。意思是“当前的状态分布 d,经过 Pπ 转移一步后,得到的分布和 d 完全一样”。分布不再变化。
  3. μ(s,a) (状态-动作稳态分布):

    • μ(s,a)=d(s)π(as)
    • 解释: 稳态下,(处于 s 并且执行 a) 的概率。
    • 计算: (处于 s 的概率) × (在 s 时选 a 的概率)。
  4. T (状态-动作转移算子):

    • T((s,a),(s,a))=P(ss,a)π(as)
    • 解释: 描述 (s, a) 对 转移到 (s', a') 对 的概率。
    • 过程: (1. 从 sas) × (2. 在 s 立刻选 a)。
  5. μ=μT (状态-动作固定点):

    • 解释:d=dPπ 逻辑一样,但是是在 (s,a) 空间上。它说明 μ 也是一个稳态分布(T 算子的固定点)。

☀️ 简化版:天气例子核心计算

1. 定义


2. 状态分布 d(s)


3. 状态-动作分布 μ(s,a)


4. 状态-动作转移 T


5. 验证固定点 μ=μT

计算结果: μT=[2/30,18/30,10/30,0],这精确地等于 μ

这从数学上证明了 μ=μT

file-20251109215347028.png

Q3 为什么看似reward +1 -1 是不可微分的 但是实际上是可微的

  1. 因为我们在意的是期望 然后期望是一个连续的
    file-20251109215744171.png|241x112

Q4 强化学习分成的几部分 每个部分花费主要在什么上面,什么时候贵 什么时候便宜

image-7.png

Q5 value funcition

在这张图中,Q(s1,a1) 被定义为动作价值函数 (Action-Value Function),也就是我们常说的 Q-value

它的含义是:“从状态 s1 开始,首先执行动作 a1,然后从下一步 (t=2) 开始一直到最后 (t=T),都按照策略 π 来行动,所能获得的期望总回报(所有奖励的总和)。”


=###= 详细分解 Q 的定义

我们来看第三行的公式:

Q(s1,a1)=r(s1,a1)1. 立即奖励+Es2p(s2|s1,a1)[Ea2π(a2|s2)[r(s2,a2)+...]s1,a1]2. 未来所有奖励的期望

这个 Q(s1,a1) 由两部分相加而成:

  1. 立即奖励 r(s1,a1)

    • 这是你当前在状态 s1 执行动作 a1 后,立刻得到的奖励。
  2. 未来所有奖励的期望 E[...]

    • 这部分代表了从 t=2t=T 的所有未来奖励。
    • Es2p(s2|s1,a1)[...]:这层期望是说,执行 a1 后,环境会把你带到某个下一个状态 s2。我们对所有可能的 s2 取期望。
    • Ea2π(a2|s2)[...]:这层期望是说,到了 s2 之后,你就开始按照策略 π 来选择动作 a2,然后是 a3,a4,... 一直到 T 步结束。

总结:
Q(s,a) 把“在 s 状态下执行 a 动作”的立即好处r)和长远好处(未来所有奖励的期望)打包在了一起,用来评估“在状态 s 执行动作 a”这个决策到底有多好。

这张图的最终目的是(第四行):
把一个复杂的多步求和问题 E[r(st,at)]简化成了 Es1p(s1)[Ea1π(a1|s1)[Q(s1,a1)]]

这样一来,优化的目标就清晰了:我们只需要在 s1 时,尽量选择一个能让 Q(s1,a1) 值更高的 a1,因为 Q 已经帮我们算好了所有未来的收益。


关键联系(图中的最后一行)

Vπ(st)=Eatπ(at|st)[Qπ(st,at)]

这行公式完美地总结了它们的区别:

所以:

Q6 tradeoff alll

  1. sample efficiency
  2. stability & ease of use
  3. stochastic/deterministic environment
  4. continious states or discrete states
  5. episodic problems or infinite problems
  6. Different things are easy or hard to represent the policy/ or represent the model

Q7 efficiency vs time

好的,这张图非常经典,它从两个关键维度对强化学习(RL)算法进行了分类。

这张图主要展示了:

  1. 横轴 (X轴)样本效率 (Sample Efficiency)
  2. 纵轴 (Y轴)On-policy (在线策略) vs. Off-policy (离线策略)

我们来详细解读一下。


  1. 横轴:样本效率 (从左到右)

这个轴衡量的是:“一个算法需要和环境交互多少次(即需要多少数据)才能学会一个好策略?”


  1. 纵轴:On-Policy vs. Off-Policy

这个轴描述的是:“算法在学习时,用的是什么数据?”

总结:这张图告诉我们什么?

这张图清晰地展示了RL算法的权衡 (trade-off)

  1. Model-Based (左侧)样本效率最高。它们用很少的数据就能“理解世界”。但它们的缺点是,如果模型学错了(模型和真实世界有偏差),那么最终策略的效果可能很差。

  2. Off-Policy Q-Learning (中间)样本效率很高。这是因为它有 Replay Buffer,可以重复利用数据。这是目前(Model-Free中)最流行和高效的方法之一。

  3. Actor-Critic (中偏右)效率居中。它们通常比纯 On-Policy 算法要高效,特别是 Off-Policy 版本的 Actor-Critic (如 DDPG, SAC)。

  4. On-Policy (右侧)样本效率较低。因为它们“学完就扔”数据,非常浪费。但它们通常更稳定,更容易调参。

  5. Evolutionary (最右)样本效率最低。它们依赖“盲目”的变异和选择,需要天量的数据,但在某些(如梯度消失或高维动作空间)问题上可能有奇效。

image-8.png

Q8