0x00 概要DIVLDistributional Implicit Value Learning是 LWD 框架中承担核心价值评估使命的引擎。如果说 IQL 解决了如何在已知动作中提取价值上限的问题那么 DIVL 则在此基础上迈出了关键一步——它不再输出单一的标量分数而是输出一个完整的概率分布。这看似简单的变化在真机部署场景中意味着从盲人摸象到全息透视的跨越。0x01 从 IQL 到 DIVL为什么标量不够用1.1 IQL 的遗产在已知数据中沙里淘金在深入 DIVL 之前我们先快速回顾 IQL 的核心思路因为 DIVL 正是建立在 IQL 的思想基础之上。IQL 解决了一个根本问题传统 Q-learning 的maxaQ(s′,a′)在离线设定下会查询未见过的动作OOD导致价值崩盘。IQL 的解决方案是引入一个 V 网络用rγV(s′)替代rγmaxaQ(s′,a′)而 V 通过 Expectile 回归从数据集中提取高价值基准——只盯上限不看平均。但 IQL 的 V 输出的是一个标量。这个标量代表当前状态下表现较好的动作所能达到的价值水平。它的问题是当数据本身存在多峰分布时一个数字无法描述全貌。1.2 为什么平均数会骗人我们来思考一个具体的场景。传统强化学习的目标是学习一个期望值——裁判看一眼动作给个平均分50 分。这个数字代表某种期望回报。但在真实机器人场景中平均数经常掩盖关键信息。信息丢失50 分可能代表稳拿 50 分也可能代表一半几率拿 100 分大获全胜一半几率拿 0 分电机烧毁。对机器人而言这两种情况的风险天差地别。多峰分布的本性在机器人抓取中结果只有成功或失败。期望值给出的中间分在物理世界中根本不存在——物体不可能处于半抓起状态。平均值把两种截然不同的物理结果压成了一团模糊的中间态。风险视而不见传统 RL 是风险中性的。一个动作如果平均分很高但存在 1% 的概率导致设备报废这个动作就是毁灭性的。标量价值无法表达这种风险——它只告诉你还行但说不出那 1% 的灾难在哪。1.3 从给平均分到看清各种可能性普通 RL 的做法裁判看一眼机器人的动作给出一个分数80 分这是平均分。DIVL 的做法裁判会说“这个动作有 80% 的概率得 100 分成功但有 20% 的概率得 0 分摔倒或撞机。”为什么要这么做因为在真机环境里风险比平均分更重要。分布式价值学习让机器人有了物理常识——它能避开那些高回报但极度不稳定的赌博式动作同时保留了那些罕见但可复现的高回报模式不被平均掉。0x02 DIVL 的核心设计两种数学手段的融合DIVL 将两种高级的数学手段结合在一起手段 来源 作用 类比Implicit隐式 IQL 不采样 OOD 动作只在已有数据中提取上限 只看录像不瞎猜Distributional分布式 C51 / QR-DQN 捕捉回报分布、感知风险 看透风险不冒险2.1 “Implicit”仍然不瞎猜 OOD 动作DIVL 名字里有Implicit这和 IQL 一脉相承。它意味着在更新 V 时不通过显式动作最大化去查询数据集外动作而是直接从数据集中的动作(s,a)出发利用现成的Q(s,a)。在 LWD 的部署数据中机器人已经收集了大量真实轨迹包括成功、失败、恢复和人类干预。DIVL 的做法不是在动作空间里凭空搜索而是从 Replay Buffer 中已有动作学习价值结构。这对真机安全非常关键。真实机器人不允许算法为了探索一个可能高分但从未验证过的动作就直接让机械臂去尝试。DIVL 坚持 IQL 的底线只看真实发生过的物理经验不在没见过的动作上做危险幻想。2.2 “Distributional”从单一数值到概率分布这是 DIVL 最核心的突破——它不再输出一个确切的数字而是输出一个完整的概率分布。在给定状态s下DIVL 的 Value 网络Vψ(s)输出的是一个概率向量。假设我们将价值范围[−10,100]分成 101 个格子Atoms输出就是[p0,p1,…,p100]。经过 softmax 归一化后它告诉你在这个状态下动作价值有 5% 概率是 10 分有 20% 概率是 50 分以此类推。这个分布的深刻意义体现在四个方面捕获了统计信息模型记住的是在当前状态下数据里的动作价值如何分布而非在当前状态下动作价值平均是多少。它保留的是数据集中关于这个状态的全部模式信息。提供了不确定性度量当面对未知状态时分布会变得平坦高熵。这说明模型不知道自己不知道——这正是标量价值无法做到的事情。一个自信的状态分布尖锐一个不确定的状态分布弥散。支持风险调节可以根据分布的不确定性选择更保守或更乐观的目标。分布尖锐时放心追高分布发散时谨慎保守。保留多峰结构不会把偶发的超高回报和常见的低回报压成平均值而是保留这两种模式各自的形态。2.3 两者结合的效果隐式学习保证了在杂乱数据面前不学歪只看录像不瞎猜分布学习保证了在物理世界面前不冒险看透风险。这就是 DIVL 名字的由来——Distributional Implicit Value Learning。0x03 网络架构3.1 双头结构在 LWD 的架构中DIVL 对应两个价值头Head它们共享同一个骨干网络Backbone但承担不同的角色。Value HeadVψ分布蒸馏器Value Head 是 DIVL 的本体——它不再输出一个数字而是输出一个分类概率分布。核心功能提取高光基准。V 头使用分位数回归不学平均分。它的任务是回答在当前状态下数据集中的动作通常能拿多少分但它给出的不是一个数字而是一个分布——告诉你在不同得分上的概率。训练机制V 的 Loss 是 Categorical Cross-Entropy。具体逻辑是把当前 Q 网络输出的值作为一个标签看这个标签落在了哪个格子Atom上然后让 V 在这个格子上的概率变大。输入输出结构输入状态 s视觉特征 z_s 语言嵌入 e_l注V 头不看动作它只评估处境的潜力输出概率向量 p ∈ R^{|A|}例如 101 个格子的概率分布直觉理解V 在背书。它背下了这个状态下已知的动作好坏分布。当 Q 网络给出某个 Q 值时V 会对这个 Q 值的合理性进行判断——如果这个 Q 值在数据集中经常出现V 就会给它高概率如果是 OOD 的离谱值V 就会给它低概率。Critic HeadQϕ动作评估员核心功能评价具体某个动作的好坏并提供改进方向的梯度。Critic Head 输入的是状态 具体的动作 a。它不仅给这个动作打分更重要的是——它要被拿来求导。QAMAdjoint Matching算法会向 Q 头询问如果我把目前的动作 a 稍微往左挪一点Q 值会涨吗Q 头提供的这个分值梯度就像一股引力直接拉着 Action Head 里的向量往高分方向走。训练机制Q 的 Loss 是 Mean Squared Error但真正的关键在于目标值的构造。Q 的目标值yQ是通过从Vψ(s′)分布中提取一个分位数Quantile得到的。这里τ就是乐观滤镜强度的调节旋钮——τ接近 1 时取高分位数乐观τ较低时取中低分位数保守。与传统 Q-learning 的区别维度 传统 Q-learning DIVL 的 Q-learning学习目标 平均期望回报 潜在最高回报受τ调节对低质量数据的敏感性 容易被低分拉低 通过分位数过滤保持对好动作的敏感性风险感知 无 通过 V 分布的熵感知不确定性具体对应公式如下DIVL-公式3.2 双头协作评价闭环Algorithm Structure在架构图中这两个 Head 配合完成了一个完整的闭环蒸馏DistillationV 网络观察Q(s,a)输出的每一个值并把它们存进自己的概率格子Atoms里。这是 Implicit 的体现——V 不需要尝试新动作只需要看已有动作的 Q 值。乐观引导Bootstrap当需要更新 Q 的未来期望时不再用maxQ而是从 V 的分布中通过τ挖出一个高分位置。如果分布发散熵大τ自动变小取值变保守如果分布集中τ变大取值变激进。梯度产出GradientQAM 拿走 Q_phi 在当前动作点产生的梯度以此作为导航指令来优化动作生成。通俗比喻Value Head (V) 像是一个睿智的观众它不干活但它看透了全局知道在某个时刻能拿到的最好结果是多少为训练提供了一个稳健的参照系。Critic Head (Q) 像是一个严厉的教练——它紧盯着机器人每一步的动作 a并不断通过梯度推一把机器人的手强迫动作向更高价值的方向演进。3.3 输入体系DIVL 的输入可以分为两个层面。推理层面的输入[ 编码特征 ] [ DIVL 输出 ]图像RGB ──→ [ ViT ] ──┐本体感受 ──→ [ MLP ] ──┼──────→ [ z_s, e_l ] ──→ Value Head (V) ─→ 状态价值分布语言指令 ──→ [ LLM ] ──┘动作a ──────────────────────────────────────→ Critic Head (Q) ─→ 动作价值Value Head 输入视觉特征和语言嵌入不看动作只评估处境的潜力。Critic Head 除了视觉和语言特征外还输入具体的动作矢量。训练层面的输入当 DIVL 在后台 Learner 进行训练更新时它从 Replay Buffer 中抽取完整的五元组当前状态 s、执行动作 a、即时奖励 r、下一时刻状态 s’、终止标志 done。特殊的隐藏输入分位数采样τ。由于 DIVL 是分布式的它还有一个数学层面的输入——分位数采样点。为了描绘概率分布模型会输入不同的分位点比如从 0 到 1 之间的多个采样点让模型预测在不同风险概率下的回报。特殊的隐性输入Intervention 信号。在 LWD 这种真机部署框架中有一个非常特殊的信号——人类接管标志位。当检测到人类接管时系统会强制给出一个负的 Reward。这个信号让 DIVL 意识到虽然最后任务成功了人替我干完了但刚才那一刻我的价值是暴跌的。这解决了机器人由于人类补救而产生的自我感觉良好的错觉。3.4 组件关系图LWD-组件关系图三个核心信号流蒸馏信号 1V 观察 Q 的输出并存入概率格子Loss 为交叉熵乐观引导信号 2从 V 分布中根据τ提取分位数作为 Q 的 bootstrap target梯度产出信号 3QAM 获取Qϕ在动作点的导数作为导航指令0x04 Adaptiveτ根据不确定性调节乐观程度IQL 中的τ是一个固定的保守性旋钮——τ越高V 越乐观越偏向数据中的高价值动作。但在真实部署中不同状态的不确定性并不一样。有些状态非常熟悉数据充足价值分布集中有些状态很陌生数据稀少价值分布分散。如果对所有状态都使用同一个乐观程度就容易出问题对于熟悉状态我们可以更激进对于不确定状态应该更保守。DIVL 的解决思路是利用价值分布的归一化熵H(s)来动态调整τ。τ(stH)clip(τbase−αH(stH),τmin,τmax)分布弥散高熵当前状态不确定τ自动降低 → 保守估计避免被噪声误导分布集中低熵价值分布逐渐收敛τ自动升高 → 更乐观地追求高回报轨迹这种自适应机制在在线阶段表现出明确的退火行为初期在线数据分布混乱自动降低τ后期随着策略改善和数据积累自动升高τ。通俗说当裁判很有把握时可以相信高分当裁判自己都不确定时就别太乐观。 这就是 DIVL 比普通 IQL 更适合车队级部署数据的原因——它能根据现场情况实时调整自己的自信程度。0x05 Reward 信号DIVL 如何识别正确DIVL 本身并不具备判断是非的能力——它像是一个极其聪明的会计通过处理三种不同的外部信号来悟出什么是正确的。5.1 明确的最终奖励Sparse Reward这是最直接的判定。在任务的最后一帧环境或判定器给出一个信号成功 1.0失败 0。虽然这只有一瞬间但 DIVL 通过 Bellman 倒推把这个 1.0 的信号像墨水滴进水里一样沿着时间轴往回扩散。它会意识到“只要我能走到离终点很近的这步我的价值就非常接近 1.0。”5.2 人类的干预信号Intervention在 LWD 框架中被骂就是最大的正确指引。干预瞬间被接管的那一刻系统自动标记负奖励如 -1.0。告诉 DIVL刚才那段自主策略是死路一条。