B · 学习与决策的计算
无模型、有模型与世界模型
上一课,多巴胺把奖赏预测误差写进了价值学习:试错多了,每个状态的「值」就被缓存下来,行动跟着值走。可你并不只会撞墙学习——你会停下来想:「如果我走这条路,会发生什么?」这种凭空规划未来的能力,TD 那一套解释不了。它是第二套系统。这一课,把两套系统都写成计算,并看大脑怎么在它们之间仲裁。
一个把两套系统逼出来的例子
设想你每天开车上班,走熟了一条路,几乎不用动脑——红灯停、到路口右转,全是自动的。这是习惯:你不需要在脑子里「模拟」整条路,只要在每个路口缓存好「这里该右转」的价值,照着做就行。这正是上一课的 TD 学习产物:一张状态 → 该往哪走的查找表。
某天那个路口在修路,封了。习惯系统此刻彻底失灵——它的查找表里写着「右转」,可右转是死路。它没有任何「为什么右转」的知识可供修正,只能靠一次次撞墙、吃到新的预测误差,慢慢把价值重新传播过来。可你没这么干。你停下来想:「那条路通往北边,我可以从下一个路口绕过去。」一瞬间,一条全新的路线就在脑子里规划好了——你没有开过它,却知道它能通。
无模型 (model-free):缓存价值的习惯
第一套系统就是第 04 课那一套,给它一个正式的名字:无模型学习 (model-free learning)。它的全部产出是一个价值缓存——对每个状态(或状态-动作对)存一个数字,表示「从这里出发,长远看大概能拿多少奖赏」。它不存任何关于「这个动作会把我带到哪个状态」的知识。学习的方式就是 TD:实际结果与预期之差(预测误差),按学习率慢慢更新缓存。
Q(s, a) ← Q(s, a) + α · [ r + γ·max Q(s′, a′) − Q(s, a) ]它的优点是快而省算力:做决策时只要查一下缓存、挑值最大的动作,几乎不耗脑力——这正是「习惯」的爽感。它的致命弱点是笨:缓存里的值是过去成千上万次经验「熬」出来的平均,里面没有任何因果结构。所以一旦世界变了——奖赏挪了位、路封了——这套系统不知道哪些缓存该作废,只能从头靠预测误差一格一格重新熬,慢得让人抓狂。修路第一天你那个差点拐进死胡同的瞬间,就是无模型系统在裸奔。
有模型 (model-based):持一个世界模型去规划
第二套系统是有模型学习 (model-based learning)。它的核心资产不是价值缓存,而是一个世界模型 (world model):一套关于环境如何运转的内部知识,至少包含两件事——
有了世界模型,决策就不再是查缓存,而是临场规划 (planning):在脑子里展开这个模型,模拟「如果我这样走、再那样走,会到哪、能拿多少」,然后挑出一条好路。这就是开头你绕开修路路段时干的事——你在世界模型上跑了一遍想象的推演。它的优点是灵活:环境一变,你只要更新世界模型里那一条边(「这个路口封了」),重新规划立刻就能给出新路,不必把所有价值重熬一遍。它的代价是慢而耗算力:每次决策都要现场展开模拟,分支一多就吃不消——这正是「深思熟虑」累人的原因。
| 无模型 (model-free) | 有模型 (model-based) | |
|---|---|---|
| 存什么 | 价值缓存(状态→值) | 世界模型(转移 + 奖赏结构) |
| 怎么决策 | 查缓存,挑值最大 | 展开模型,模拟规划 |
| 速度 / 算力 | 快、省(自动) | 慢、耗(深思) |
| 灵活性 | 笨:环境一变要重学 | 灵:改模型一处即可重规划 |
| 心理学对应 | 习惯 | 目标导向行为 |
两套并存,按可靠性与代价仲裁
关键的实验事实是:大脑两套都有,并且同时在跑。人和动物的行为既不是纯习惯、也不是纯规划,而是两者的混合,且混合比例会随情况漂移。Daw 等人 2011 年用一个「两步任务 (two-step task)」漂亮地把这件事拆开:任务的奖赏结构被设计成——纯无模型策略和纯有模型策略会做出可区分的选择。结果发现人的选择是两者的加权混合,而且权重不是固定的。
那么谁说了算?主流的计算解释是一个仲裁 (arbitration) 机制,按两条标准在两套系统间分配控制权:
海马重放:离线时偷偷做规划
有模型系统还有一个迷人的实现线索。当动物休息或睡觉、并没有在跑迷宫时,海马 (hippocampus) 里编码空间位置的神经元会重放 (replay) 之前走过的轨迹——以压缩的速度,把白天的路径序列再「播放」一遍,有时甚至是倒着放、或拼接出没真正走过的新路径。这看起来很像大脑在离线时间里整理世界模型、预先演练规划:用已有经验去更新「哪里通向哪里、哪里有奖赏」,而不必真的再跑一趟。
动手:目标搬家
下面是一个小网格世界。agent 从左上角出发,要走到标着★的目标格;它已经学会了一条到目标的路。现在按「移动目标」把★挪到别处,再看两套系统的反应天差地别:
- 无模型模式:它只有一张价值缓存。目标一搬,旧缓存把它带向已经空了的老目标;只能靠一格格吃预测误差,让新目标的价值慢慢反向传播回来——你会看到它走错、绕路,要好多步才重新学会。
- 有模型模式:它持一个世界模型(知道格子怎么连、目标现在在哪)。目标一搬,它只更新「目标在这儿」这一条,立刻在模型上重新规划出新的最短路——零重学。
反复玩你会得到本课最硬的那条直觉:同一次「目标搬家」,无模型要重学好几步、走好多冤枉路,有模型则立刻重规划出新路。灵活性不是免费的——它的代价是你得在脑子里维护一个世界模型、并在每次决策时花算力去展开它。这正是大脑为什么要两套都留着、再按可靠性与代价去仲裁。
ML 镜像:从 Dyna 到 MuZero
这套「无模型 vs 有模型」的二分,几乎是从强化学习教科书里直接搬来的——它本来就是机器学习先讲清楚、再被借去理解大脑的概念。本站的强化学习系列把这条线讲得很细:
常见误解
- 误解:有模型系统「更聪明」,所以越多越好。 (澄清:规划是昂贵的。对稳定、重复的环境,把决策交给便宜的习惯系统才是最优——大脑滑向习惯不是变懒,常常是正确地省算力。两套各有最划算的地盘。)
- 误解:无模型 = 没有任何模型 / 很原始。 (澄清:「无模型」只是说它不学转移结构、不靠它做规划;它照样用 TD 这种相当精巧的学习规则。它笨在不知道世界怎么运转,不笨在学习机制。)
- 误解:海马重放 = 大脑在「做梦回放真实记忆」,功能已经定论。 (澄清:重放确实存在且很可能服务于离线学习/规划,但它的确切计算功能仍在研究中。「重放 = Dyna 式的想象更新」是有力的解释,不是已证的事实——把它当作研究中的领先假说。)
- 误解:「无模型=系统1、有模型=系统2」是一一对应的硬事实。 (澄清:这是富有成效的类比。系统 1/2 二分本身有争议,神经底物也分布重叠。两套系统的对应是张力的同构,不是脑区的对号入座。)