老杨是城里最会下围棋的盲棋高手。他可以闭着眼睛,只凭记忆和想象在心中推演整盘棋局。新手问:你不看棋盘,怎么知道每一步?老杨笑答:我的脑子里有一张“战略沙盘”——它不需要像照片一样还原每一颗棋子,只要告诉我哪里占优、哪里有危险、下一步怎么走能赢,就够了。MuZero就是这样一个AI棋手:不依赖任何人教它规则,也不需要在脑海中“看到”完整画面,而是自己学出一张“隐式的战略沙盘”来理解环境动态。落子之前,它在脑内沙盘上反复推演未来,选出胜算最大的道路。这套本领,让MuZero在围棋、国际象棋、电子游戏上横扫人类顶尖选手,也为“世界模型”研究打开了一扇新的大门。

岗位关联

看懂MuZero的隐式世界模型与价值等价原理,就握住了从感知型AI迈向规划型AI的钥匙,也是理解世界模型前沿方向的必修课。

目录
  1. 可视化演示
  2. MuZero的架构
  3. 隐式世界模型
  4. MCTS规划
  5. 价值等价原理
  6. 模型学习机制
  7. 世界模型启示
  8. AI 应用场景
  9. Python 演示
  10. 常见误区
  11. 面试题

可视化演示

展示MuZero三阶段:MCTS树搜索的选择-扩展-回溯流程、隐式动态模型的状态转移预测、价值等价原理的模型学习机制。

本节配有交互动效(进入视口后自动加载,约 3KB)。

MCTS树搜索规划过程 PUCT选择最优子节点 扩展叶子节点并评估 a* = argmax Q(s,a) + c*U(s,a) 回溯更新祖先价值

MuZero的架构

2016年,AlphaGo击败李世石,靠的是先学会人类棋谱、再用蒙特卡洛树搜索。但老杨说,这就像一个学生先背熟别人的棋谱才能下棋。MuZero不一样,它像真正的盲棋大师——不背书、不看规则说明书,从零开始只凭“输赢”反馈,自己长出一套推演心法。

MuZero延续了AlphaZero的自我对弈思路,但去掉了“环境模拟器”这根拐杖。AlphaZero必须在真实规则模拟器上推演,而MuZero的一切推演都发生在自己学出来的神经网络里。它只接收像素级观测(棋面或游戏画面),直接输出动作、价值估计和策略,堪称“零规则知识的决策AI”。

架构上,MuZero由三个函数构成:表示函数 h 把历史观测压缩为隐状态;动态函数 g 在隐状态上推演下一步并预测回报;预测函数 f 从隐状态读出策略和价值。三者共享一套网络参数联合训练,形成“感知—想象—决策”的闭环。

三函数合起来,正是老杨那套“心中沙盘”:h 负责看,g 负责想,f 负责判。这个分工让 MuZero 面对从未见过的游戏、从零规则开始,也能一步步长出规划的本领。

st0=hθ(o1,o2,…,ot),rtk,stk=gθ(stk−1,atk),ptk,vtk=fθ(stk)s^0_t = h_\theta(o_1, o_2, \dots, o_t), \quad r^k_t, s^k_t = g_\theta(s^{k-1}_t, a^k_t), \quad p^k_t, v^k_t = f_\theta(s^k_t)
通俗理解:眼睛看到的东西经过 h 变成“脑中局面”,g 想象“走完这步会怎样”,f 给出“这步之后胜率多少、该怎么走”。
  1. 表示函数 h_θ把一整局的历史观测压缩成一个向量,就像老杨扫一眼棋盘,脑中浮现的“战略态势图”。
    st0=hθ(o1,o2,…,ot)s^0_t = h_\theta(o_1, o_2, \dots, o_t)
  2. 动态函数 g_θ在隐状态上推进一步——给定当前态势和一步走法,给出这步的回报和推演后的新态势,这是 MuZero 的“脑内沙盘”。
    rtk,stk=gθ(stk−1,atk)r^k_t, s^k_t = g_\theta(s^{k-1}_t, a^k_t)
  3. 预测函数 f_θ从任意推演出的态势中读出策略(每个动作的先验概率)和价值(预计胜负)。
    ptk,vtk=fθ(stk)p^k_t, v^k_t = f_\theta(s^k_t)

隐式世界模型

老杨的沙盘到底长什么样?他说:我从不去记每颗棋子的颜色和花纹,只关心“这块棋是厚还是薄、那口气还有几个”。换句话说,他脑内保存的不是照片,而是一幅“态势图”——这正是“隐式世界模型”的含义:模型存在于隐空间里,而不是像素世界里。

传统世界模型(如视频预测)希望模型能重建下一帧画面,相当于要求老杨在脑子里播放“录像”。MuZero 放弃了重建画面。它的动态函数在隐空间里工作:输入上一个隐状态和动作,直接输出下一个隐状态以及预测的回报。这个“下一隐状态”不必对应任何真实像素。

为什么可以不重建画面?因为下棋、打游戏的关键不是画面长什么样,而是“局面对我是否有利、下一步哪几个走法值得探索”。隐式模型把全部算力花在预测这些真正影响决策的量上,因此更高效、更抗干扰——画面噪声不影响决策。

这种“只记态势、不记像素”的沙盘,恰好呼应我们大脑的直觉:高手看棋看到的是势,新手看棋看到的是子。隐式世界模型,就是让 AI 也拥有“看势”的眼睛。

sk+1=gθ(sk,ak)s_{k+1} = g_\theta(s_k, a_k)
通俗理解:隐式动态函数就是“沙盘推演规则”——给当前态势图和一手走法,它直接给出推演后的新态势,不经过任何“画面渲染”。
  1. s_k(当前隐状态)此刻脑内沙盘上的态势向量,由表示函数 h 从历史观测压缩得到,是模型对“现在”的理解。
    sks_k
  2. a_k(动作)这一步打算采取的走法、按键或操作,是推演的外部输入。
    aka_k
  3. g₀(动态函数)学出来的推演规则,相当于“如果这样走,局面会怎么变”的经验法则。
    gθg_\theta
  4. sₖ₊₁(下一隐状态)推演后的新态势。它可以连续滚动,形成“在脑内想象未来多步”的能力。
    sk+1s_{k+1}

MCTS规划

有了沙盘,还要会“长考”。老杨面对复杂局面,会在心里模拟一局又一局的未来:如果我下这里,对方可能会封堵那里,然后我又……每一次模拟都能验证某个选择的优劣。这种“想得多、想得深、还能快速修正”的本领,就是蒙特卡洛树搜索(MCTS)。

MCTS 在隐式模型上反复进行四个步骤:选择(沿着最有希望的分支往下走)、扩展(在叶子局面长出新的想象分支)、评估(用预测函数对这个想象分支打分)、回溯(把分数传回路径上的所有节点,更新平均值)。MuZero 的 MCTS 全程在脑内沙盘完成,不触碰真实环境。

选择环节有一个关键公式——上置信界(UCB)。它既看重“这个动作的历史平均回报 Q”,也看重“模型先验 P 觉得它有多好”,还给予访问次数少的动作更多探索机会。三者平衡,既能利用已知优势,又不放过未知机会。

长考不是漫无目的地乱想,而是“有据可依地发散,再被结果收敛”。MCTS 与隐式模型的组合,让 MuZero 在想象中把每一步棋的风险与收益都摸了个遍,才做出决定。

a=arg⁡max⁡a[Q(s,a)+c⋅P(s,a)⋅∑bN(s,b)1+N(s,a)]a = \mathop{\arg\max}_{a} \left[ Q(s, a) + c \cdot P(s, a) \cdot \frac{\sqrt{\sum_{b} N(s, b)}}{1 + N(s, a)} \right]
通俗理解:UCB 是“老杨选棋路”的决策规则——既要参考以前验证过的胜率(Q),又要听直觉的推荐(P),还要给没试过的路留机会(N 小的动作有额外加分)。
  1. Q(s, a)(经验回报)在脑内模拟中这个动作平均带来的收益,模拟次数越多数值越可靠。
    Q(s,a)Q(s, a)
  2. P(s, a)(先验策略)预测函数对“这个动作好不好”的第一直觉,引导搜索关注有希望的分支。
    P(s,a)P(s, a)
  3. N(s, a) 与分母项(访问计数)动作被模拟的次数。被试得少的动作获得额外加分,分母 1+N 防止加分无限膨胀。
    ∑bN(s,b)1+N(s,a)\frac{\sqrt{\sum_{b} N(s, b)}}{1 + N(s, a)}
  4. c(探索系数)权衡“信直觉”和“多尝新”的旋钮,c 越大越爱探索。
    cc
  5. argmax(取最大)在所有动作中挑选综合得分最高者,作为下一步的搜索方向。
    arg⁡max⁡a\mathop{\arg\max}_{a}

价值等价原理

老杨的沙盘并不精确还原棋盘,为什么推演依然可靠?他说:沙盘只要能准确告诉我“哪种走法最后能赢”,至于沙盘里的山是不是真的山、河是不是真的河,根本不重要。这就是 MuZero 提出的“价值等价原理”的核心:模型与真实环境不必逐像素一致,只需在决策相关的量上等价。

两个模型,只要在“从任意状态出发的决策结果”上一致——产出相同的价值评估、相同的未来回报预测——那么在规划任务上它们就是等价的。因此 MuZero 训练模型时,目标函数不包含任何“像素重建误差”,只包含三类预测误差:价值的误差、回报的误差、策略的误差。

这样一来,模型的学习压力大大降低:它不需要记住整张棋盘,只需要记住“影响胜负的信息”。这也是 MuZero 能在只有奖励信号、没有规则的前提下,从零学会围棋和雅达利游戏的根本原因。

价值等价,其实是对教学目标的重定义:与其训练一个“复读机”把世界背下来,不如训练一个“判官”把世界的利害关系判断准确。世界模型的价值,不在还原,而在决策。

min⁡h,g,f  E[∑k=0K(zt+k−vtk)2+∑k=1K(ut+k−rtk)2−c⋅πt+kTlog⁡ptk]\min_{h,g,f} \; \mathbb{E}\left[ \sum_{k=0}^{K} (z_{t+k} - v^k_t)^2 + \sum_{k=1}^{K} (u_{t+k} - r^k_t)^2 - c \cdot \pi_{t+k}^T \log p^k_t \right]
通俗理解:这个目标函数是 MuZero 的“考试标准”——只考价值预测准不准、回报预测准不准、策略对不对,不考“画面还原得漂不漂亮”。
  1. zₜ₊ₖ(价值标杆)由自我对弈的真实结果(如 n 步回报加最终胜负)算出的“标准答案”。
    zt+kz_{t+k}
  2. vᵏₜ 与平方差(价值误差)预测函数在隐状态上估计的价值,与标杆的平方距离,越小越好。
    (zt+k−vtk)2(z_{t+k} - v^k_t)^2
  3. u 与 r(回报误差)环境给出的真实即时回报与动态函数预测回报的差距。
    (ut+k−rtk)2(u_{t+k} - r^k_t)^2
  4. π 与 p(策略交叉熵)让预测函数的策略趋近 MCTS 搜索出的更优策略,形成“搜索引导学习、学习服务搜索”的正反馈。
    −πt+kTlog⁡ptk- \pi_{t+k}^T \log p^k_t
  5. c(权重)控制策略损失在总损失中的占比。

模型学习机制

老杨的棋感不是天生的。年轻时他每天和自己下棋,输多了就长记性:哪种下法容易被吃、哪种布局能占优。MuZero 的学习也是这样一场“和自己的漫长对弈”。

训练流程是一个闭环:先用当前模型加 MCTS 在环境中自我对弈,收集(观测、动作、回报)轨迹;然后用这些轨迹联合训练三个函数;训练后的模型继续对弈,数据越来越强,模型也越来越强。这个“自举”过程不需要任何人类棋谱。

训练目标中,价值标签 z 通常用 n 步回报加自举(bootstrapping)计算:已发生的真实回报先取,更远的回报用当前价值网络来估。此外 MuZero 引入“重分析”(Reanalyze)技术:用训练好的最新模型重新为旧棋局计算价值标签,好比老杨复盘时用今天的棋力重新评判当年的棋局。

自我对弈、联合训练、重分析,三招合起来让 MuZero 的沙盘越用越准。就像老杨的复盘习惯,每一局无论输赢,都会变成下一次推演的养料。

zt=rt+1+γrt+2+⋯+γn−1rt+n+γnv(st+n)z_t = r_{t+1} + \gamma r_{t+2} + \dots + \gamma^{n-1} r_{t+n} + \gamma^n v(s_{t+n})
通俗理解:价值标签像“带后视镜的天气预报”——近几步用已发生的事实,更远的用当前模型的判断来补。
  1. r 系列(即时回报)已发生的真实奖励,如赢了 +1、输了 -1,是最可靠的证据。
    rt+1+γrt+2+⋯+γn−1rt+nr_{t+1} + \gamma r_{t+2} + \dots + \gamma^{n-1} r_{t+n}
  2. γ(折扣因子)给未来的奖励打折,体现“眼前的收益比遥远的收益更实在”。
    γ\gamma
  3. n(回看步数)观察多少步真实回报后切换到模型估值。
    nn
  4. v(sₜ₊ₙ)(自举估值)用当前价值网络估算第 n 步之后的状态价值,让标签无需等到对局结束就能生成。
    γnv(st+n)\gamma^n v(s_{t+n})

世界模型启示

老杨的故事讲完了,但它给研究者留下一个更广的问题:世界模型到底应该长什么样?在 MuZero 之前,主流世界模型(如 Dreamer)走“显式重建”路线——模型必须学会在像素空间里预测下一帧画面。MuZero 则证明了另一条路:模型只需在与决策相关的量上与真实世界等价。

显式模型像一版精细的沙盘,把山川河流都做成逼真的微缩景观,画面预测能力强、可解释性好,但训练开销大;隐式模型像老杨的态势图,只画关键的等高线和兵力对比,训练高效、聚焦决策,但难以直接“读懂”画面的物理细节。

这给世界模型研究带来三点启发:第一,模型的表示不必绑定观测空间,可以绑定“决策效用空间”;第二,“规划验证”是训练世界模型的天然信号源,MCTS 搜索出的更优策略反过来教预测函数;第三,“决策基础模型”的概念应运而生——一个跨任务、跨环境的隐式世界模型加规划器,或许能成为通用智能体的“脑内沙盘”。

如果说世界模型研究是一场“建造沙盘”的竞赛,那么 MuZero 用价值等价告诉我们:最好的沙盘不一定是最逼真的微缩景观,而是最能帮助主帅做出正确决断的那一张图。未来,世界模型大概率会走向“按需建图”——为决策而建模,而不是为还原而建模。

o^t+1=D(zt+1)    (explicit)vt+1=F(zt+1)    (implicit)\hat{o}_{t+1} = D(z_{t+1}) \;\; \text{(explicit)}\qquad v_{t+1} = F(z_{t+1}) \;\; \text{(implicit)}
通俗理解:左边的模型要求把隐状态解码成完整画面,右边的模型只要求得出下一个决策的价值——两个沙盘,两种精度观。
  1. zₜ₊₁(推演后隐状态)两种世界模型共享的中间表示,由动态函数推出。
    zt+1z_{t+1}
  2. D(解码器)显式路线中的重建头,把隐状态画成完整图像,训练时用像素级损失监督。
    D(zt+1)D(z_{t+1})
  3. F(隐式预测头)MuZero 路线中的价值头,只输出价值、回报与策略,训练时用决策相关损失监督。
    F(zt+1)F(z_{t+1})
  4. 两种路线对比显式模型信息量大但冗余多;隐式模型信息少而精,训练目标与任务目标完全一致。
    explicit↔implicit\text{explicit} \leftrightarrow \text{implicit}

AI 应用场景

机器人操控的隐式物理模型

阶段:模型学习 / 决策规划

解决的问题:传统机器人控制需要精确的物理仿真器(显式模型),计算昂贵且存在 sim-to-real 差距。MuZero 式隐式模型直接从真实交互中学习潜在动态,只需预测任务相关信号(如“这一步会不会碰到障碍物”“离目标近了还是远了”)。

具体案例:机械臂抓取任务中部署 MuZero 式规划器——机械臂先用少量真实交互学出隐式动态,每次抓取前在脑内 MCTS 推演几十条轨迹,选出成功率高的一条。相比逐帧渲染的预测模型,推理速度快一个数量级。

自动驾驶路口决策

阶段:规划与控制

解决的问题:传统规划依赖高清地图和精确的周围车辆状态预测(相当于显式模型),计算重、对感知噪声敏感。可以用隐式世界模型把路口态势压缩成隐状态,直接预测“安全通过”的价值。

具体案例:车辆到达无信号灯路口时,模型把周围车辆位置等信息压缩为隐状态,MCTS 在隐空间推演 3~5 秒内的多种决策(让行、通过、减速),选择价值最高的动作。遇到训练分布之外的场景,价值评估会自然变低,从而偏向保守策略。

游戏 AI 的通用决策引擎

阶段:训练与部署

解决的问题:过去游戏 AI 每个关卡都要单独调参、单独训练。MuZero 式方法只输入屏幕像素和得分,不需要关卡规则即可学会通关策略,且天然支持跨关卡迁移。

具体案例:某开放世界游戏 NPC 使用 MuZero 式算法,在沙盒环境中从像素学习导航与战斗动作,上线后继续用重分析技术利用新对局数据更新模型。每周仅需约 100 小时等效 GPU 时间就能适应新地图。

Python 演示

python91 行
# -*- coding: utf-8 -*-"""TinyMuZero: 极简隐式世界模型 + MCTS 规划。在3x3网格里, 智能体用自我对弈学隐式动态,再靠MCTS在脑内推演, 从起点快速找到终点。""" import randomimport math SIZE = 3DIRS = [(1, 0), (-1, 0), (0, 1), (0, -1)]GOAL = (SIZE - 1, SIZE - 1)GAMMA = 0.9  class TinyMuZero:    """动态表 + 奖励表 + 价值表, 三函数合体演示。"""     def __init__(self):        self.dynamic_s = {}   # (state, action) -> 下一隐状态        self.reward_m = {}    # (state, action) -> 奖励        self.value_v = {}     # state -> 价值     def reset(self):        self.state = (0, 0)        return self.state     def real_step(self, action):        x, y = self.state        dx, dy = DIRS[action]        nx = max(0, min(SIZE - 1, x + dx))        ny = max(0, min(SIZE - 1, y + dy))        self.state = (nx, ny)        r = 1.0 if (nx, ny) == GOAL else 0.0        return self.state, r     def learn(self, episodes=800):        """自我对弈: 试错经验写入隐式模型三张表。"""        for _ in range(episodes):            s = self.reset()            while True:                a = random.randrange(4)                sp, r = self.real_step(a)                self.dynamic_s[(s, a)] = sp                self.reward_m[(s, a)] = r                old = self.value_v.get(s, 0.0)                self.value_v[s] = old + 0.1 * (r + GAMMA * self.value_v.get(sp, 0.0) - old)                s = sp                if s == GOAL:                    break     def simulate(self, state, action, depth=3):        """用隐式模型脑补: 从state走action, 后面会怎样。"""        s = state        total = 0.0        scale = 1.0        for _ in range(depth):            if (s, action) not in self.dynamic_s:                break            total += scale * self.reward_m.get((s, action), 0.0)            s = self.dynamic_s[(s, action)]            scale *= GAMMA        return total + scale * self.value_v.get(s, 0.0)     def plan(self, state, iters=30):        """MCTS: 在隐式模型上反复推演, 找最优动作。"""        counts = [0] * 4        sums = [0.0] * 4        for _ in range(iters):            a = random.randrange(4)            counts[a] += 1            sums[a] += self.simulate(state, a)        best, best_score = 0, -1e9        for a in range(4):            avg = sums[a] / max(1, counts[a])            bonus = 0.5 * math.sqrt(math.log(iters + 1) / (1 + counts[a]))            score = avg + bonus            if score > best_score:                best_score, best = score, a        return best  if __name__ == "__main__":    agent = TinyMuZero()    agent.learn(episodes=800)    s = agent.reset()    steps = 0    while s != GOAL and steps < 20:        a = agent.plan(s, iters=30)        s, r = agent.real_step(a)        steps += 1    print("到达终点步数:", steps)
目的:用一张字典表模拟 MuZero 的隐式世界模型,在 3×3 网格上演示“自我对弈学动态 + MCTS 脑内推演”的完整闭环。
  1. self.dynamic_s = {} # (state, action) -> 下一隐状态这张表就是动态函数的记忆化身:记录“从某局面走某步会到哪”,是脑内沙盘的地基。
  2. self.value_v = {} # state -> 价值价值表只记“这个局面值多少”,不记任何画面,呼应价值等价原理。
  3. sp, r = self.real_step(a)在真实环境走一步,拿到下一状态和即时奖励,成为模型学习的“事实依据”。
  4. self.value_v[s] = old + 0.1 * (r + GAMMA * self.value_v.get(sp, 0.0) - old)价值等价的在线学习:用真实结果一点点矫正预测值,完全不关心状态长什么样。
  5. total += scale * self.reward_m.get((s, action), 0.0)模拟时在隐式模型上逐跳累加奖励,这就是“脑内推演”的积分器。
  6. bonus = 0.5 * math.sqrt(math.log(iters + 1) / (1 + counts[a]))UCB 探索加成项:模拟次数越少的动作,越值得被多看几眼。
  7. print("到达终点步数:", steps)验证:学会隐式模型后,MCTS 规划能让智能体从起点直达终点。

常见误区

误区MuZero 证明了 AI 能在脑子里想象出下一帧画面,所以它跟视频预测模型一样,会生成整局游戏的“脑内录像”来帮助决策。

正解MuZero 的模型是“隐式”的:动态函数在隐空间里输出新的隐状态和回报,从来不输出像素。它学的是“局面如何影响胜负”的抽象规律,而不是画面本身。价值等价原理更是明确:模型只需在决策相关的量上与真实环境一致。打个比方,老杨的态势图不需要画出一颗颗棋子,只需要画出“哪里厚、哪里薄”。

为何常见:“世界模型”一词容易让人联想到“脑海里放电影”,加上视频预测本来就是早期世界模型研究的主流路线,人们常把两者混为一谈。

误区MuZero 每次下棋前要在真实游戏环境里模拟几千盘,否则它没法知道某个走法好不好。

正解恰恰相反,MuZero 的最大贡献就是在训练好动态函数后,把真实模拟器彻底扔掉了。所有 MCTS 模拟都在学出来的隐式动态模型上完成,这正是“规划”与“亲历”分离的体现:先在脑内沙盘上反复推演,最后只把选中的动作放到真实环境执行。AlphaGo 早期版本确实需要棋盘模拟器,但 MuZero 不需要。

为何常见:很多人沿用了 AlphaGo 时代的旧印象——那时 MCTS 确实要调用真实规则来展开棋局,于是以为 MuZero 也这么做。

误区一个模型如果不能重建下一帧画面,就不配叫世界模型。隐式模型只是偷懒的近似。

正解MuZero 指出了一条合法路径:只要模型在价值、回报、策略这些与决策直接相关的量上与真实环境等价,它就是有效的世界模型。追求像素级重建反而会把模型容量浪费在无关细节上。本质上,世界模型可以定义为“对决策有用的动态预测器”,而不是“对像素的重建器”。沙盘不必像照片,只要推演结果靠谱。

为何常见:早期世界模型研究(如视频预测)以重建为目标,形成了“模型 = 生成器”的习惯思维。

误区重分析(Reanalyze)就是拿旧棋谱数据多跑几个 epoch,相当于早停之后再训练。

正解重分析的关键是用“当前最新的模型”重新为旧棋局生成价值标签,再把这些更新后的目标用于训练。旧轨迹里的观测和动作不变,但“标准答案”被新版模型重算,使数据始终带着最新棋力的判断。这好比老师用今天的教案给去年的作业重新打分。

为何常见:从字面上看“重分析”很像“重复训练”,而实际上它的创新点在于目标值(标签)的重新生成,而非简单重复。

面试题

Q1. MuZero 的三个核心函数分别负责什么?

单选题 · easy

  • A.表示、动态、预测← 正确答案
  • B.编码、解码、重建
  • C.卷积、池化、全连接
  • D.记忆、注意、输出

答案:A。MuZero 的三函数架构是表示函数 h(观测压缩为隐状态)、动态函数 g(隐空间推演)、预测函数 f(输出策略与价值)。B 是自编码器的职责,C 是卷积网络的基本层,D 是注意力机制的概念,均不符合。

Q2. MuZero 与 AlphaZero 最大的区别是什么?

单选题 · easy

  • A.不需要规则和模拟器,动态模型自学← 正确答案
  • B.使用更强的卷积神经网络结构
  • C.完全不需要自我对弈的数据
  • D.只能玩围棋不能玩雅达利游戏

答案:A。AlphaZero 推演依赖真实游戏规则模拟器,MuZero 用学到的隐式动态模型代替它,因此被称为“不需要规则的强化学习”。B 不是本质区别,C 错误(一样要自我对弈),D 错误(MuZero 恰恰覆盖雅达利游戏)。

Q3. 隐式世界模型中“隐”的含义是什么?

单选题 · mid

  • A.不重建像素,只在隐空间预测决策← 正确答案
  • B.模型参数是隐藏的不可训练
  • C.模型只能处理部分可观测环境
  • D.模型隐藏了动态函数不进行预测

答案:A。“隐”指隐空间(latent space),动态在低维向量上进行,输出下一隐状态和回报,而不是像素画面。B 错误(参数可训练),C 与隐式无关,D 错误(动态函数恰是核心)。

Q4. MCTS 选择阶段采用 UCB 公式,主要目的是什么?

单选题 · easy

  • A.平衡利用已知优势与探索未知动作← 正确答案
  • B.使每个动作都以相同概率被选中
  • C.只挑选价值最高的一个动作
  • D.降低搜索深度以减少计算量

答案:A。UCB 由三部分组成:Q 利用历史平均回报,P 利用模型先验,N 小的动作获得探索加成,本质是探索与利用的平衡。B 没有探索导向,C 忘掉探索,D 与公式无关。

Q5. 价值等价原理的核心观点是什么?

单选题 · mid

  • A.模型只需在决策量上与环境等价← 正确答案
  • B.模型必须在像素层面完全复刻环境
  • C.模型价值函数必须等于策略函数
  • D.模型越小价值必然越高

答案:A。价值等价说,只要两个模型从任意状态得到的价值、回报、策略预测一致,在规划任务上就是等价的,不必重建观测。B 是显式模型的要求,C 混淆了价值与策略,D 毫无根据。就像老杨的沙盘不用像照片一样精细。

Q6. 重分析(Reanalyze)技术改进的是哪一环?

单选题 · hard

  • A.用当前模型为旧棋局重新生成价值标签← 正确答案
  • B.用更大批量重新训练每个 epoch
  • C.把旧棋局的像素改成新像素
  • D.增加 MCTS 模拟次数的上限

答案:A。重分析保持旧轨迹的观测与动作不变,但用最新版模型重新计算价值目标 z,让旧数据受益于最新的价值网络,相当于用今天的棋力重新评判当年的棋局。B 是训练细节,C 不成立,D 是搜索配置。

Q7. MuZero 训练中的价值标签 z_t 通常如何获取?

单选题 · mid

  • A.n 步真实回报加上未来价值自举← 正确答案
  • B.直接使用最终的胜负结果
  • C.使用人类专家的手动标注
  • D.使用随机数生成作为标签

答案:A。价值标签用 z_t = r_{t+1} + γr_{t+2} + …… + γ^{n-1}r_{t+n} + γ^n v(s_{t+n}) 计算,近 n 步采用真实回报,之后用价值网络自举估计,无需等到对局结束。B 要等终局,效率低;C 需要人类数据;D 毫无意义。

Q8. 以下哪些是 MuZero 架构的组成部分?

多选题 · mid

  • A.表示函数← 正确答案
  • B.动态函数← 正确答案
  • C.预测函数← 正确答案
  • D.像素解码器

答案:ABC。三函数 h、g、f 构成 MuZero 核心。像素解码器是显式世界模型(如 Dreamer)的组件,MuZero 不需要重建像素,故不选 D。

Q9. 关于 MCTS 在 MuZero 中的使用,下列说法正确的是?

多选题 · hard

  • A.选择阶段使用 UCB 平衡探索利用← 正确答案
  • B.扩展阶段在隐空间创建新节点← 正确答案
  • C.回溯阶段把评估结果更新到路径节点← 正确答案
  • D.全部模拟必须依赖真实环境

答案:ABC。A、B、C 分别对应 MCTS 的选择、扩展、回溯阶段,描述正确。D 错误:MuZero 的所有模拟都在学到的隐式动态模型上进行,不依赖真实环境,这是它与旧版 MCTS 最本质的区别。

Q10. 关于世界模型研究,MuZero 提供了哪些启发?

多选题 · hard

  • A.模型表示可以不绑定观测空间,绑定决策效用空间← 正确答案
  • B.规划搜索的结果可以作为训练预测函数的监督信号← 正确答案
  • C.世界模型可以走向跨任务的决策基础模型← 正确答案
  • D.只有像素重建模型才称得上世界模型

答案:ABC。A 体现隐式表示观,B 体现“搜索增强训练”的自举机制,C 是决策基础模型的发展趋势。D 与价值等价原理相悖——显式重建只是建模世界的一条路线,而非唯一标准。