65 镜一次看完 · Ctrl+F 可搜全文 · Ctrl+P 可存成 PDF · 想看动画回放映厅
知识点 1 · 总结
核心结论
有了模拟器可以:做动态规划、生成合成轨迹喂给任何无模型算法、做策略搜索,还能在脑子里试危险动作。
底层机制
零样本迁移:奖励变而动力学没变时,模型一点不用重学。因为三样东西里只有模型不含「我想要什么」 —— 策略和值函数都含,奖励一变就同时作废。
常见误解
误解:「无模型才是现代做法」。L12 第九集已有反例:探索的 PAC 结果几乎全在基于模型这边。
与你的考试
判断标准很实际:你会不会复用它?只解一个固定任务、能大量交互 ⟹ 无模型更直接;奖励会变、交互昂贵、需要解释 ⟹ 基于模型更划算。而这一讲后半段全部建立在「你已经有一个模拟器」之上。
知识点 1 · 检验
为什么说模型比策略和值函数更「可复用」?
P(s′|s,a) 不含目标;而 π(a|s)(在这个状态该做什么)和 V(s)(这个状态多好)都取决于奖励是什么。所以同一个机器人换任务、同一个辅导系统换优化目标时,模型一点不用重学,换个奖励重新规划即可 —— 这就是零样本迁移。「参数更少」通常反而更多。「误差更小」没有这个保证,下一集正是讲模型误差。「样本效率更高」方向对但不是复用的理由。
知识点 2 · 总结
核心结论
模型误差(世界估错)+ 规划误差(在错模型上又没解准)。关键不是叠加,是复合 —— 与 L07 行为克隆在分布漂移下的机制相同。
底层机制
最坏的一环:规划器的 argmax 系统性偏向被模型高估的地方(同 L04 的最大化偏差,第三次出现)。后果反直觉:更强的规划器在有误差的模型上可能表现更差。
常见误解
误解:「模型准 99% 就没事」。在监督学习里通常对;这里不对 —— 你优化的是模型,不是世界。
与你的考试
缓解办法方向一致:不要相信模型太远太深 —— 短程规划接值函数、显式建模型不确定性、多模型集成取悲观。注意:对模型的不确定性要悲观,与 L11–L13 对环境的不确定性要乐观正好相反。同一个不确定性,探索里是机会,规划里是风险。
知识点 2 · 检验
为什么「更强的规划器」在一个有误差的模型上可能表现更差?
规划器在模型里找回报最高的路径,而模型有的地方高估有的地方低估 —— argmax 系统性偏向被高估的那些。这是 argmax 在本课的第三次咬人(L04 的最大化偏差、L12 的差距依赖)。所以它优化的是模型的误差,不是真实回报,而搜索越深越广,找到漏洞的机会越多。「来不及收敛」不是这里的机制。「过拟合训练数据」规划器不训练。「线性衰减」反了 —— 误差沿路径复合放大,和 L07 行为克隆同形。
知识点 3 · 总结
核心结论
八回合数据(A→B 得 0 一次;B 单独 7 次,6 次得 1)。V(B) 两法一致 = 6/8 = 0.75。而 V(A):批 MC = 0.00,批 TD = 0.75。两个都收敛了。
底层机制
批 MC = 对观测回报的最小 MSE 拟合(扫格自证 = 0.0000),不假设马尔可夫。批 TD = 解最大似然 MDP(确定性等价):A 必去 B ⟹ V(A)=γV(B)=0.75,假设马尔可夫。
常见误解
误解:「同一份数据必然收敛到同一个值」。差别不在数值精度,在假设。
与你的考试
哪个对取决于世界:是马尔可夫 ⟹ TD 更好(跨状态借信息,所以样本效率高);不是 ⟹ MC 更稳(不会被错误假设带偏,同 L15 第二集 IS 不需要马尔可夫的价值)。记号:这个例子只有一个动作,其实是马尔可夫奖励过程,讲座自己纠正过;且 γ=1,V(A) 的答案依赖它。
知识点 3 · 检验
AB 例子里批 TD 给 V(A)=0.75 而批 MC 给 V(A)=0.00,差别来自哪里?
两个都收敛了,它们收敛到不同的东西:批 TD 解的是确定性等价的最大似然 MDP(A 必去 B,奖励 0 ⟹ V(A)=γV(B)=0.75),批 MC 是对观测回报的最小 MSE 拟合(经过 A 只有一个回合,回报 0)。TD 能把 B 的七次观测借给 A,靠的正是马尔可夫假设。「样本太少」再多同样结构的数据也不会让 MC 变成 0.75。「折扣不同」两者都用 γ=1。「0.75 是错的」在马尔可夫世界里它才是更好的答案 —— 哪个对取决于世界。
知识点 4 · 总结
核心结论
从当前状态展开 expectimax 树,状态节点取期望、动作节点取 max。完全正确、毫无近似;问题只在树有多大。
底层机制
|S||A|=4,H=3 → 64;H=10 → 1.05×10⁶;|S|=10,|A|=4,H=5 → 1.02×10⁸;围棋 H=3 → 2.21×10¹⁵,而一盘棋两百多手。
常见误解
误解:「把所有分支都展开」。毛病不是算错,是它对所有分支一视同仁 —— 自杀的走法和很强的走法花同样的力气。人类的搜索树极度不对称。
与你的考试
第一步改动:从枚举换成采样。代价结构随之改变 —— 穷举时深度每加一乘一个因子,采样时深度只线性进来。可以想得很深,只要不要求想得很全。而模拟出的轨迹对无模型算法而言和真经验长得一样。
知识点 4 · 检验
完整前向搜索的主要问题是什么?
前向搜索完全正确、毫无近似 —— 状态节点取期望、动作节点取 max,算出来就是最优动作。问题只在规模,而规模的根源是它不肯取舍:明显自杀的走法和明显很强的走法花同样的力气展开。人类棋手的搜索树极度不对称,这正是后面几集要造的东西。「只是近似」反了。「需要真实转移」它用的就是估计的模型。「会发散」有限深度的树不存在发散问题。
知识点 5 · 总结
核心结论
四步:每个首动作 → 之后按固定策略 π 走到底 → 抽若干条算平均 → 取 argmax。它估的是 Q^π(s,a),取的是 argmax_a Q^π(s,a) —— 这就是 L02 策略改进的定义式。
底层机制
于是它继承那条定理:不比用来 rollout 的那个策略差。推论:rollout 策略越好,它越好 —— AlphaGo 正是用训练好的策略网络当 rollout 策略。
常见误解
误解:「太糙了,没什么保证」。它有保证,而且基准明确;只是上限也明确 —— 一步改进就是一步。
与你的考试
同一条定理的两个用法:L02 是训练时反复迭代到收敛,这里是决策时只在当前状态加一层。决策时用法多一个好处:随时算法(讲座:可以跑八小时算一个决策,也可以少抽几条马上给答案)。但它仍然一视同仁 —— 每个首动作分到同样多的预算。
知识点 5 · 检验
简单蒙特卡洛搜索(rollout 算法)的保证来自哪里?
算法第二步「先做动作 a,之后按 π 走到底」估的正是 Q^π(s,a);第四步取 argmax_a Q^π(s,a) —— 这就是策略改进的定义式,所以 L02 那条定理原样适用:结果不比 π 差。基准是那个 rollout 策略,不是最优策略,所以「rollout 策略越好它越好」。「无偏性」是估计 Q^π 的手段,不是保证的来源。「压缩性」这里没有迭代到不动点。「UCB 的乐观」简单 MC 搜索不用乐观 —— 它给每个动作同样多的预算,这正是下一集要修的。
知识点 6 · 总结
核心结论
两块结构:树策略(树里,按统计量选,贵但准)+ rollout 策略(树外,通常随机,糙但便宜)。一次迭代四步:选 → 扩 → 模拟 → 回传。
底层机制
不对称是目的不是缺陷:预算有限,花在明显自杀的走法上的每条轨迹都是从真正需要分辨的地方抢来的。讲座:只把树填在「会被 max 选中、会把值回传到根」的那部分。
常见误解
误解:「树要均匀展开才公平」。完整前向搜索的毛病恰恰是一视同仁 —— 修的就是这一点。
与你的考试
回传的是平均,不是自举:课上有学生问这算不算 TD,答案是不算 —— 每个节点的「奖励」是从它出发的整条 rollout 的回报。原始 MCTS 是纯蒙特卡洛回传。另:「极限下会填满整棵 expectimax 树」是渐近完备性的陈述,讲座紧接着说实践中从不会发生。
知识点 6 · 检验
MCTS 回传时更新的是什么?
课上有学生专门问了这个。讲座的回答是:每个节点的「奖励」就是从这个节点出发的整条 rollout 的回报,「因为那正是我们在平均、在计数的东西」,并明说「It's not like TD」。所以原始 MCTS 是纯蒙特卡洛回传,没有任何自举(后来的 AlphaZero 一类才把值网络接进来)。「TD 自举」正是讲座否定的。「即时奖励」回传的是整条回报。「UCB 上界」那是树策略选动作时用的量,不是被回传更新的量。
知识点 7 · 总结
核心结论
树策略 = argmax_a [ Q̄(s,a) + c·√(ln N(s)/N(s,a)) ]。N(s)(父节点总访问)在分子 log 里让加成涨;N(s,a)(这个动作自己)在分母让它缩 —— L11 第九集那对方向相反的计数器,第二次出现。
底层机制
上一集那个「不对称」就是这个式子造出来的:Q̄ 高的分支被反复深入,Q̄ 低的分支加成按 √ln 涨得很慢、几乎不长。树的形状不是设计的,是统计量的副产品。
常见误解
误解:「那个加成是个折扣因子」(转录稿的说法)。折扣作用在时间上、是常数、让远的变小;加成作用在不确定性上、随计数变、让陌生的变大。
与你的考试
讲座自己点名了 UCT 的两个可疑假设:① 每个节点独立(同一状态在两处不合并,下一集);② 用乐观(第九集 —— 学生当场问,讲座回「这是不是个好主意(笑)……等下回来说」)。
知识点 7 · 检验
UCT 的树策略里,父节点访问数 N(s) 和该动作自身计数 N(s,a) 各起什么作用?
加成是 c·√(ln N(s)/N(s,a)):父节点被反复访问而某动作一直没被选中时,加成越来越大,最终一定会被试到;而这个动作试得越多,分母越大、加成越小。这正是 L11 第九集那对方向相反的计数器。√ln 的增长率是关键 —— 慢到不浪费预算,快到不会永久放弃任何分支,树的不对称形状就是这么长出来的。「都变小」方向错。「折扣因子/学习率」正是转录稿把加成说成折扣因子的那个误解。「不影响加成」它们就在加成里。
知识点 8 · 总结
核心结论
同一个 (s,a) 出现在树的多处,统计量不合并。讲座原话:「we're not combining their counts... every node as if it's totally distinct」,并补了「even though the model is often Markov」。
底层机制
理由是实现复杂度(讲座:「it becomes a lot more complicated for implementation」):图上一个节点多个父亲,回传该记给谁、会不会重复计数、N(s) 怎么定义、有环怎么办 —— 四步全要改。
常见误解
这一条不是反驳:「该合并」这个直觉是对的,是算法主动放弃了它。
与你的考试
账要算全:亏了统计效率(同一状态分 k 份,围棋的「转置」非常普遍);赚了回传唯一、无重复计数、无环。同 L13 第四集的形状,但那里是证明逼的、这里是实现逼的。
知识点 8 · 检验
UCT 为什么不合并树中不同位置出现的同一个状态?
讲座自己说得很清楚:「you can do it, it's mostly that it becomes a lot more complicated for implementation」,而且明确点出「even though often the model we'll be using to simulate will be Markov」 —— 算法明知道两处是同一个状态,却故意装作不知道。这是工程取舍,不是原理判断,所以它会随工程能力变化(后来处理转置很常见)。「模型不是马尔可夫」恰恰相反,讲座说它通常是。「破坏无偏性」没有这回事。「图不能收敛」不是理由。
知识点 9 · 总结
核心结论
L11 的乐观有一个前提:「we're actually incurring the pain of making bad decisions」。而规划里 「we're not suffering if we make bad decisions in our head」 —— 前提没了,结论也就没了。
底层机制
实测(A1 均值 0.60 已测准 n=400,A2 均值 0.40 很不确定 n=9,再给 400 个模拟):把预算花在 A1 上,两条区间分离的比例 0.0604;花在 A2 上 0.5274 —— 差 8.7 倍。而 UCB 会一直选 A1。
常见误解
误解:「L11 证过了,搬过来就行」。搬一个原理时要重新问它当初为什么对。正确目标是关于根节点 argmax 的信息增益,不是累积遗憾。
与你的考试
讲座的结论一字不改:「it's not clear that the bandits at each node is the optimal thing to do, but it's pretty efficient.」 —— 能同时说出这两半的判断,是这门课最值得学的东西。
知识点 9 · 检验
为什么把 UCB 的乐观原则搬到规划里是可疑的?
L11 第五集的论证是「乐观的拉动两难都赢」,而它的前提是那些亏损真的在发生(讲座:「we're actually incurring the pain of making bad decisions」)。规划里不疼,前提没了。实测:预算花在不确定的那个动作上,把两条区间分开的概率是 0.5274,花在乐观会选的那个上只有 0.0604 —— 差 8.7 倍。「节点不独立」那是上一集的另一个质疑,讲座分开点名的。「只对有限动作」树里动作本来就有限。「不是独立同分布」不是这里的论点。