发布时间:2026/7/22 6:48:47
【NLP】POMDP 与马尔可夫基础 POMDP 与马尔可夫基础用于理解 Agent、world model、强化学习与部分可观测决策问题。一句话总览马尔可夫性完整当前状态已经包含预测未来所需的历史。 MDPAgent 能看见完整状态因此可依据当前状态选动作。 POMDPAgent 看不见完整状态只能用观察、动作和历史推断真实状态。1. 什么是马尔可夫性马尔可夫性最核心的说法是在知道当前完整状态的前提下未来不再依赖更早的历史。设StS_tSt​表示时刻ttt的状态马尔可夫性质写作P(St1∣St,St−1,…,S0)P(St1∣St) P(S_{t1}\mid S_t,S_{t-1},\ldots,S_0)P(S_{t1}\mid S_t)P(St1​∣St​,St−1​,…,S0​)P(St1​∣St​)它不是说历史不重要而是说有用历史已经被压缩进StS_tSt​。例子走格子当前位置第 5 格 动作向右走一步若规则固定下一位置只取决于当前位置和动作不取决于五分钟前从哪里走来。因为“当前位置”已概括了影响下一步的信息。2. 马尔可夫链、MDP 与 POMDP模型有状态有动作Agent 是否看见完整状态马尔可夫链是否不涉及决策 AgentMDP是是是POMDP是是否只看见部分观察2.1 马尔可夫链马尔可夫链描述系统自行演化今天的天气 → 明天的天气例如在一个简化模型中明天天气只依赖今天天气而不依赖更早天气。它有状态转移但没有主动选择动作的 Agent。2.2 MDP加入动作与奖励MDPMarkov Decision Process是在马尔可夫链上加入决策M(S,A,P,R,γ) \mathcal{M}(\mathcal{S},\mathcal{A},P,R,\gamma)M(S,A,P,R,γ)记号含义S\mathcal{S}S所有可能的世界状态A\mathcal{A}A所有可能的动作P(s′∣s,a)P(s\mid s,a)P(s′∣s,a)在状态sss执行动作aaa后到达s′ss′的概率R(s,a)R(s,a)R(s,a)该动作的奖励γ\gammaγ折扣因子衡量未来奖励的重要性MDP 的转移假设是P(St1∣St,At,历史)P(St1∣St,At)P(S_{t1}\mid S_t,A_t,\text{历史})P(S_{t1}\mid S_t,A_t)P(St1​∣St​,At​,历史)P(St1​∣St​,At​)直观上完整当前状态加当前动作就足以决定下一状态的分布。2.3 POMDPAgent 看不全世界POMDPPartially Observable Markov Decision Process比 MDP 多了观察P(S,A,P,R,O,Z,γ) \mathcal{P}(\mathcal{S},\mathcal{A},P,R,\mathcal{O},Z,\gamma)P(S,A,P,R,O,Z,γ)新增记号含义O\mathcal{O}O观察空间即 Agent 可能看到的信息Z(o∣s,a)Z(o\mid s,a)Z(o∣s,a)观察模型真实状态为sss、执行动作后Agent 看到ooo的概率这里要区分真实状态 st世界实际是什么样 观察 otAgent 当前能看见或读到什么真实环境仍可以满足马尔可夫性但 Agent 看不到完整sts_tst​因此只靠当前观察oto_tot​无法可靠预测未来。3. 状态设计决定“是否马尔可夫”马尔可夫性依赖状态是否包含关键变量。例如只写机器人在厨房抽屉关闭。对动作open drawer结果不确定情形 A抽屉中有钥匙 → 打开后看到钥匙。 情形 B钥匙已被拿走 → 打开后抽屉为空。原因是状态遗漏了“钥匙在哪里”。因此它不是充分状态。若扩充为机器人位置抽屉开闭状态钥匙位置门锁状态Agent 是否持钥匙。那么“完整状态 当前动作”就更接近足以预测未来问题重新近似满足马尔可夫性。状态信息足够完整 → 未来只依赖当前状态和动作 → 马尔可夫 状态遗漏关键变量 → 未来仍依赖遗漏的历史 → 对 Agent 而言不马尔可夫4. 一阶、二阶马尔可夫通常所说的马尔可夫是“一阶”未来只依赖当前状态。P(St1∣St,St−1,…)P(St1∣St) P(S_{t1}\mid S_t,S_{t-1},\ldots)P(S_{t1}\mid S_t)P(St1​∣St​,St−1​,…)P(St1​∣St​)二阶马尔可夫则要求当前和前一状态P(St1∣St,St−1,…)P(St1∣St,St−1) P(S_{t1}\mid S_t,S_{t-1},\ldots)P(S_{t1}\mid S_t,S_{t-1})P(St1​∣St​,St−1​,…)P(St1​∣St​,St−1​)在实际建模中更常见的处理方式不是不断增加“几阶”而是把必要历史加入状态。例如只记录位置不够时把“位置 速度”作为状态此时又可用一阶 MDP 表示。5. belief state对隐藏状态的概率判断POMDP 中 Agent 看不见真实状态需要维护 belief statebt(s)P(sts∣o1:t,a1:t−1) b_t(s)P(s_ts\mid o_{1:t},a_{1:t-1})bt​(s)P(st​s∣o1:t​,a1:t−1​)含义是在看到至今全部观察、并知道自己此前做过的动作后当前真实状态是sss的概率。例如70%钥匙在抽屉中 20%钥匙在其他位置 10%钥匙已被拿走belief 更新可理解为两步预测旧 belief 当前动作 → 推测可能的新状态 校正新观察到来 → 降低与观察不一致的状态概率形式上bt1(s′)∝Z(ot1∣s′,at)∑sP(s′∣s,at)bt(s) b_{t1}(s) \propto Z(o_{t1}\mid s,a_t) \sum_s P(s\mid s,a_t)b_t(s)bt1​(s′)∝Z(ot1​∣s′,at​)s∑​P(s′∣s,at​)bt​(s)不必死记公式。它表达的就是旧的世界猜测 刚做的动作 新收到的观察 → 更新后的世界猜测若 belief state 足够完整那么它本身可被当作一个新的“状态”。于是 POMDP 可以转写为 belief-MDP当前 belief 当前动作 → 下一个 belief6. POMDP 与本文的 LLM world model在From Word to World中Agent 接收的StS_tSt​是文本观察而不是完整的真实环境状态。观察房间里有一个关闭的抽屉。 隐藏信息抽屉中有什么钥匙是否已被拿走门是否锁着因此论文中的文本环境天然是 POMDP。论文的 world model 学习(S0,A1,S1,…,At)→St1 (S_0,A_1,S_1,\ldots,A_t)\rightarrow S_{t1}(S0​,A1​,S1​,…,At​)→St1​即根据历史观察、历史动作和当前动作预测下一观察。它没有显式维护传统 POMDP 方法中的概率分布btb_tbt​而是把类似的状态估计隐式编码在长上下文中的历史 模型参数中的环境规律传统 POMDP 方法论文中的 LLM world model显式维护 belief 概率分布隐式编码在上下文与网络表征中通常有明确状态变量状态主要是自由文本belief 更新规则可写出由模型生成行为近似更新不确定性可较直接分析不确定性更不透明、更难校准这也解释了 rollout drift若模型在早期错误判断隐藏状态后续会把错误预测当作事实继续生成使动作和状态逐步偏离真实环境。7. 对 Agent 工程的启示POMDP 视角下很多 Agent 失败不一定是不会推理而是对当前世界状态判断错了。较实用的系统设计包括保留足够的行动历史和关键状态。将重要事实写入外部 memory而非只依赖上下文窗口。在不确定性高时主动调用工具获取新观察。对不可逆动作使用预执行验证和规则约束。通过真实反馈定期校正内部状态避免长 rollout 漂移。可以概括为world model用于内部推演、比较候选动作 真实观察用于校正隐藏状态与限制模拟漂移最简复习马尔可夫性当前完整状态已携带有用历史。 MDPAgent 看得到完整状态。 POMDPAgent 看不全状态只能利用历史推断。 belief stateAgent 对隐藏真实状态的概率判断。 LLM world model以自然语言历史和模型表征隐式近似状态估计与状态转移。

相关新闻

2026/7/22 6:43:47

高校热水系统节能方案:光热+热泵复合能源实践

1. 项目背景与核心价值在高校后勤管理中,学生公寓热水供应一直是个能耗大户。传统电热水器或燃气锅炉不仅运行成本高,还存在安全隐患和碳排放问题。常州大学这个案例中,采用"光热热泵"的复合能源方案,实现了全年稳定供热…

2026/7/22 6:43:47

C++高性能容器设计:从STL通用性到量化交易领域定制的进化之路

1. 项目概述:从“轮子”到“引擎”的容器进化论如果你写过C,尤其是写过一些对性能有要求的交易系统、游戏服务器或者高频数据处理程序,那你一定对STL(标准模板库)又爱又恨。爱的是它提供了现成的轮子,vecto…

2026/7/22 6:43:47

医美行业观察|从技术角度聊聊外科手术的“微创化”趋势

一、微创化是外科手术的通用趋势 微创化不只是某个细分领域的方向,整个外科手术都在朝这个方向发展——更小的创伤、更少的组织损伤、更快的恢复周期。 在胸部整形领域,这个趋势体现在几个技术维度:精细剥离技术减少组织创伤、多维方案控制不…

2026/7/22 8:13:51

MySQL InnoDB索引机制与优化实践详解

1. MySQL InnoDB索引机制深度解析聚簇索引和非聚簇索引是MySQL InnoDB引擎中两种核心的索引类型,它们的存储结构和查询效率有着本质区别。聚簇索引的叶子节点直接包含完整数据行,而非聚簇索引的叶子节点仅存储主键值。这种差异直接影响着数据库的查询性能…

2026/7/22 8:13:51

Vibe Coding:自然语言编程的实践指南

1. Vibe Coding:用自然语言编程的新范式去年夏天,我在重构一个老旧的后台管理系统时,突然意识到自己花了整整三天时间,仅仅是在处理各种边界条件和异常处理。那一刻,我忍不住想:如果我能直接用自然语言描述…

2026/7/22 8:13:51

低代码与YOLOv8融合的AI视觉规则平台开发实践

1. 项目概述:低代码与AI视觉的融合创新这个项目将Java低代码开发与YOLOv8目标检测技术相结合,打造了一个面向非技术人员的可视化规则生成平台。核心创新点在于通过拖拽方式配置检测规则,后端采用Spring Boot框架,前端使用Vue.js实…

2026/7/22 8:13:51

知识图谱如何革新AI代码理解:从412k到3.4k token的优化实践

1. 项目概述:用知识图谱重构AI Agent的代码理解方式当AI Agent需要理解一个代码库时,传统做法是让Agent像人类开发者一样逐行阅读源代码——打开文件、解析内容、追踪引用关系。这种模式在Claude Code等AI编程工具中尤为常见,但存在明显的效率…

2026/7/22 8:13:51

Nginx+uWSGI+Django构建高性能壁纸站实战

1. 项目概述与核心价值这个项目通过NginxuWSGIDjango的技术栈构建了一个必应高清壁纸站,实现了高性能的图片展示和下载服务。选择这套技术组合主要基于以下几个核心考量:Nginx:作为前端Web服务器,处理静态文件请求和高并发连接&am…

2026/7/22 8:08:51

ASP.NET邮件发送实战:System.Net.Mail与MailKit对比

1. ASP.NET邮件发送基础与场景分析 在.NET开发中,邮件发送是常见的业务需求,从用户注册验证码到系统告警通知都离不开这个功能。ASP.NET提供了多种邮件发送方案,每种方案都有其适用场景和技术特点。作为有十年经验的.NET开发者,我…

2026/7/20 6:33:00

Unity与Python本地通信:基于Flask的跨语言数据交换实战

1. 项目概述:为什么我们需要一个本地通信服务器?在游戏开发、数字孪生、仿真训练等众多领域,Unity作为强大的实时3D内容创作平台,其核心逻辑通常由C#驱动。然而,当我们需要进行复杂的数据分析、机器学习推理、科学计算…

2026/7/22 0:02:17

抓包代理链路下的 TLS 指纹变化分析 TLSFOWARD抓包工具

抓包代理链路下的 TLS 指纹变化分析:为什么调试环境会影响访问结果 摘要 在网页调试、接口联调、自动化巡检和授权采集排查中,抓包是常见手段。但很多开发者会遇到一个现象:正常访问页面时没有问题,一进入抓包或代理调试环境&…

2026/7/22 0:02:17

微信QQ聊天记录误删恢复与备份方案全指南

1. 聊天记录误删的常见场景与恢复思路作为一名长期关注数据安全的技术博主,我处理过上百起聊天记录误删的求助案例。手机误操作、系统升级失败、设备损坏是三大常见诱因。上周就遇到用户更新微信时断电,导致近两年的工作群聊记录全部消失的极端案例。不同…

2026/7/22 0:02:17

2026最新8款个人AI编程免费工具深度实测

作为一名全栈独立开发者,我最近半年一直在折腾副业项目,每个月在AI编程工具上的订阅费算下来其实也不算便宜。作为个人开发者,我们追求的就是用最少的成本获得最高效的开发体验。TRAE 基础版免费,字节跳动出品的国内首款 AI 原生 …

2026/7/21 20:02:44

3个高效策略:快速掌握Axure中文界面配置

3个高效策略:快速掌握Axure中文界面配置 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的英文界面感…