知识表示与推理:从四范式基线到推理模型与 Agent

智能系统不直接面对世界。它必须先把世界压成一种可计算的表示,再从这种表示中推出结论、做出行动。预测一个学生未来能长到多高,需要先抽取年龄、性别、父母身高这些相关特征;判断一封邮件是不是垃圾邮件,需要先把它转成模型能识别的向量;让一个浏览器助手帮你买咖啡,它要先把整个屏幕截图,再决定下一步点哪个按钮。

这些任务的背后都藏着同一条主线:输入 → 表示 → 推理 → 输出。本专题沿着这条主线展开,先用预测学生身高立起骨架,再讨论符号范式、决策树、向量范式、知识图谱与神经范式这四条路线各自能做到什么和付出什么代价,最后合流到 LLM、推理模型与浏览器 Agent。

智能系统为什么必须先表示世界

计算机只认 0 和 1,真实世界却是文字、图像、传感器数据这些不能直接相加相减的东西。让计算机处理现实世界的第一步,是把这些信息选择性地压成结构化表示,让系统能算。

预测学生身高就是一个最具体的例子。学生本人有一大堆属性:年龄、性别、当前身高、鞋码、爱好、心情、屏幕时间、朋友数……系统在执行「预测未来身高」这个具体任务时,并不需要把这些全部塞进模型——它真正关心的是年龄、性别、当前身高、骨龄、父母身高、营养状况这几项,其余的鞋码或爱好可以丢掉。

这种「挑出对任务有用的特征,丢掉其余」的过程,就是表示的基本动作。同一个学生在「篮球选材」场景下需要骨龄,因为这关系到未来生长潜力;在「服装尺码」场景下只需要当前身高与体重,因为不需要预测未来变化。

同一学生在两个任务下的不同表示

图注:左侧是同一个学生的卡通形象,分成两条线:上面走「篮球选拔」路径,输入是年龄、性别、骨龄这些生长相关特征,目标是未来身高潜力;下面走「服装尺码规划」路径,输入只是当前身高、体重、体型这些尺寸相关特征,目标是服装尺码。同一名学生在不同任务下要保留的字段完全不同。

上面的抽象命题可以让两张图坐实。同样是预测身高,当输入只有年龄、性别、衣服颜色这类与身高无关的字段时,预测区间会拉成「160–180 cm」这样宽到几乎没用的范围——

弱表示下的预测区间

图注:左侧输入只有年龄 16、性别男、衣服颜色蓝,右侧推理给出 160–180 cm 的预测区间,红色虚线框出整段范围,标注「Less reliable (High uncertainty)」。

等加入父母身高、营养、运动这三条相关特征之后,区间立刻收窄到 171–174 cm——

丰富表示下的预测区间

图注:同样任务,输入加上父母身高 175/162 cm、营养良好、运动规律三条信息,推理结果收窄到 171–174 cm 的区间,绿色虚线框标出,标注「More reliable (Lower uncertainty)」。

表示的丰富程度直接决定推理的可靠程度。从这个意义上说,表示本身就是推理质量的上限——下游模型再精巧,也只能榨出表示里已有的信息。这也是整篇专题反复回到的一个命题。

智能系统的骨架可以概括成四步:输入(接收来自世界的信息)→ 表示(选择性地组织成可计算特征)→ 推理(基于表示进行比较、预测、决策)→ 输出(给出判断、答案或动作)。

智能系统的四步骨架

图注:把一个完整医疗预测流程串成四步骨架:左边是病历、X 光、身高体重这些原始观察;中间筛成年龄、性别、骨龄等结构化特征;右边根据这些特征在身高增长曲线上定位当前点,把虚线延伸得到未来身高的预测 178 cm;最右是最终预测值。这张图把"输入-表示-推理-输出"的每一拍一次性摆出来。

这四步骨架会贯穿后面每一章——只是每一种范式在「表示」的形状和「推理」的策略上做出不同选择。

符号范式走到极限时,代价在哪里

符号范式把世界拆成实体、属性、关系和规则四样零件,再用「IF…THEN…」式的逻辑推理推出新结论。患者有发烧和咳嗽,这是一个事实;IF 发烧 AND 咳嗽 THEN 可能是流感,这是一条规则。把规则套到已知事实上,系统就能给出诊断。

把这种思路推到极限的工程代表是 IBM 的 Deep Blue。它在 1997 年击败国际象棋世界冠军 Kasparov,是符号 AI 的一座里程碑。它的「知识」全部由人类特级大师手工注入:评估函数被切成 8000 个子函数,开局库覆盖 4000 多个局面、来自 70 万盘大师对局,残局库囊括所有 5 子残局和许多 6 子残局,再用 α-β 搜索向前推演 6 到 8 步做出选择DeepBlue。

Deep Blue 机柜实物

图注:一台 IBM RS/6000 SP 双机柜系统,固定在深蓝色底座上,机柜顶部与面板带有「IBM」「RS/6000 SP」标识。这是把符号范式推到极限的那台真实机器。

要让符号范式可信,规则必须长得容易读、容易检查。然而一旦世界变大、规则需要持续重写,这条路就走到了尽头。两个最常见的失灵场景是:规则多到人类专家管不过来、以及外边的世界一变化旧规则就过时——比如手写的「现任美国总统 = Joe Biden」在大选之后就成了过时答案。Deep Blue 把符号范式的强大展示到了天花板,也把这种范式的维护代价暴露到了天花板。

决策树:让规则从数据里长出来

符号范式里最贵的一笔开销是「谁来写规则」。决策树把这件事反过来做:保留「按特征问问题、沿路径推出结论」的符号骨架,但把要问什么问题、什么时候分支,改成从数据里自动学出来。

预测身高增长潜力就是一个标准任务:给定学生的年龄、骨龄、父母身高等结构化特征,预测他属于「Higher / Medium / Lower」三种生长潜力中的一种。决策树从历史样本里学到「骨龄是否小于实际年龄」与「父母是否高」这两个最有判别力的问题,按 yes/no 分支走到叶子节点。

这种树状结构保留了符号范式的关键优势——推理路径仍然可读、结论可追溯。

决策树预测学生生长潜力

图注:左边是学生数据卡(年龄 14、男性、骨龄 13、父母身高高),右边的决策树从「骨龄是否小于实际年龄」起分支,是的话再看「父母高不高」,yes/yes 的路径走到绿色 Higher growth potential 叶子节点;no 路径直接走到灰色 Lower potential。把推理路径画成可走的分支,每一步都是一个可读的是/否判定。

但决策树的舒适区只覆盖边界清晰、特征结构化的场景。一旦任务涉及原始文本、图像、开放语义,简单的特征分裂就不够了,需要换一种更擅长「吞下脏数据」的范式。

从 one-hot 到 embedding:向量如何找回相似度

符号范式让规则显式可读;决策树让规则从数据里长出来。两条路在「能不能表达相似度」这件事上同时卡住——符号标签之间要么相等、要么不等,没有「红比紫更近」这样的语义距离。要让机器对相似度有感觉,必须换到向量路线。

最朴素的向量版本是 one-hot 编码:把红色、紫色、黄色三个类别分别映射成 [1, 0, 0]、[0, 1, 0]、[0, 0, 1]。每个类别有一个机器可读的 ID,模型能算;但任意两个类别的向量距离都相等,红并不比紫更接近另一个颜色——人眼觉得明显相似,机器眼里完全看不出word2vec。

one-hot 之后真正改变游戏规则的是 dense embedding:把对象映射成稠密连续向量。在新的向量空间里,红和紫的坐标靠近,黄色偏远,距离编码相似度。word2vec 在 2013 年把这件事变成可训练的模型——Skip-gram 用当前词预测上下文,CBOW 用上下文预测当前词,二者都只有一层投影层,结构极简却足以在 300 维、十几亿词的语料里学到词的语义Mikolov2013。

embedding 的真正魅力在于方向有时也编码关系。word2vec 的论文里给出了一个标志性例子:vector("biggest") - vector("big") + vector("small") 这一通向量代数的最近邻恰好是 smallest。同类关系也出现在 king - man + woman ≈ queen 这类首都、性别、所有格对应里——几何减法对应语义关系,这才是「向量找回相似度」的最终含义。

Paris−France+Italy≈Rome 的向量投影

图注:横轴上 france 与 italy 在左侧,paris 在中央,粉色点 paris-france+italy 落在右侧 rome 的位置。从 france 到 paris 的蓝色箭头和从 italy 到粉色点的蓝色箭头是平行的——这两个箭头把"首都"这一语义关系在向量空间里映射成同一段位移。

投影图把抽象的类比变成二维几何:france → paris 的位移和 italy → rome 的位移方向一致,几何减法直接表达"两国首都"这一关系。

embedding 不是银弹。数值不可读、训练数据里的偏差会传染——这是它的两条主要代价。但它把相似度编进距离、把关系编进方向这件事做对了一次,后续所有深度学习时代的语言模型都建立在这套向量表示之上。

知识图谱:让关系推理重新可解释

embedding 用距离和方向找回相似度,却把一切都压成连续向量后丢失了显式的「关系」这一概念。知识图谱走的是另一条路:用 (实体, 关系, 实体) 这种三元组显式地记录关系,让推理沿着图的边走。

Eiffel Tower locatedIn Paris 是一个三元组,Paris locatedIn France 是另一个。把两个三元组连起来,沿着边走两步:埃菲尔铁塔 → 巴黎 → 法国,于是「埃菲尔铁塔在哪个国家」这个看起来要分好几步想的问题,沿着图走两步就有了答案。

把这三步走画出来,可以看到答案怎么从三元组里推出来:

知识图谱的多跳推理链

图注:上半部分把 Eiffel Tower 出发、沿 locatedIn 边到 Paris、再沿 locatedIn 边到 France 串成一条两跳链;下半部分把链映射成逻辑推理框,已知事实写在左,问「Which country is the Eiffel Tower in?」写在中,答案 France 由箭头从推理框指向右侧。每一步都能在图里指认一条具体的三元组作为证据。

知识图谱推理最大的优势是推理路径可解释:每一步都对应一条已知三元组,答案可以由证据链直接支撑。代价是图本身需要持续构建与更新——schema 定义要合法、实体抽取要准确、外边的世界一变化图就要重写。

TransE 把「关系」翻译成几何语言:如果三元组 (h, r, t) 成立,那么头实体向量加上关系向量应该接近尾实体向量,也就是 h + r ≈ tTransE。Eiffel → Paris → France 的多跳链,对应的就是 e_Eiffel + r_locatedIn ≈ e_Paris、e_Paris + r_locatedIn ≈ e_France 两次向量加法。几何可加性让多跳推理第一次具备了可以量化的表达。

TransE 翻译假设几何示意

图注:头实体向量 h 加关系向量 r 等于尾实体向量 t。绿色表示头、红色表示关系、蓝色表示尾,三者首尾相接构成 h + r = t 的几何结构。社区再绘示意图,原论文中并未给出这张几何图。

知识图谱像符号规则一样显式可解释,又比符号规则灵活——三元组可以自由组合出任意路径。代价是图谱构建昂贵,开放世界里模糊的语义难以穷尽。所以实际系统常把知识图谱当作一张稀疏的显式骨架,把 dense embedding 当作稠密的隐式补充,两者各司其职。

神经推理:用层层数值变换换可扩展性

符号范式可解释、维护贵;embedding 表达相似度、不可解释;知识图谱显式灵活、构建贵。每条路线都有各自的强项与代价。神经网络走第四条路:放弃显式规则,扛下符号、决策树、知识图谱都扛不住的大而脏的数据。

每一层神经网络都把上一个向量用一组学到的权重重新映射成新向量,逐层重写表示的形状。最后一层的输出映射回任务相关的预测。这是神经网络与符号、决策树、知识图谱最本质的区别——一切语义都藏在权重矩阵里,没有显式规则可读Transformer。

神经网络逐层改写表示

图注:从输入的原始特征向量出发,每经过一个隐藏层就被改写成一个新的表示向量:h1 捕捉低层模式,h2 捕捉更复杂的模式,h3 接近任务相关,最后一层输出 178.6 cm 的预测值。每一层都是一个独立的数值变换,上一层的输出就是下一层的输入。

Transformer 整体架构

图注:左侧是堆叠的 encoder,每层含 Multi-Head Self-Attention 与 Feed-Forward;右侧是堆叠的 decoder,每层在 self-attention 与 encoder-decoder cross-attention 之间交替;输入输出都先经过 Embedding + Positional Encoding。

Transformer 是现代神经推理的代表架构。它的关键设计是把序列里每个 token 的表示用 self-attention 重新加权,让上下文信息融入当前 token 的向量。Scaled Dot-Product Attention 的公式 softmax(QKᵀ/√d_k)V 是把「对当前 token 而言,序列中其他位置各有多重要」一次性算出来;Multi-Head 把这个过程并行拆成 h 个子空间,每个头关注不同的语义关系,最后再拼接起来。

Scaled Dot-Product 与 Multi-Head Attention

图注:上半部分是 Scaled Dot-Product Attention 的公式框图(Q、K、V 经 MatMul、Scale、Softmax、MatMul 四个步骤合流);下半部分是 Multi-Head Attention,把输入并行拆成多个子空间同时做 attention,再 Concat 起来。

神经网络最大的优势是能扛住原始文本、图像、传感器数据这些脏输入,最大的代价是推理过程不可解释——

神经网络推理的黑盒性

图注:左侧是年龄、身高曲线、骨龄、父母身高、营养记录这些丰富的输入;右侧是最终预测 178 cm,但中间的神经网络被一个放大镜问号聚焦,旁边三条注释同时点出"Hidden representation?" / "Weight meaning?" / "Not directly readable"。能扛大而脏的数据、能给出正确预测,但中间这一步到底怎么算出来的,看不出来。

同样的输入进去,为什么中间隐藏层会有这些特征,人类读不出来。这也是后续 LLM 时代「可解释性」问题的真正源头。

LLM 合流:token、推理模型与 Agent 循环

神经网络把序列语言问题用 self-attention 撑起来之后,自然的下一步是把它做成大语言模型:让一个极大的 Transformer 在海量文本上学出语言模式,再对外回答问题。但要做到这一点,必须先解决「文本怎么变成模型能算的输入」这一关。

tokenization 是这一关的核心。一个真实文本不是被切成单词,而是被切成子词——unhappiness 经常被切成 un 和 happiness,tokenization 可能切成 token + ization,每个子词对应词表里的一个数字 ID。这个过程叫 BPE(Byte Pair Encoding),是当代 LLM 的事实标准tiktokenizer。

Raw Text 到 LLM Input 的五步管道

图注:左到右依次是 Raw Text "I am a student."、Tokens (I / am / a / student / .)、Token IDs (40 / 716 / 264 / 3710 / 13)、Embeddings (五个三维向量)、最后汇聚到 LLM 芯片表示的输入端。每一拍都给具体数值示例,把材料里讲的抽象管道一次性画完。

把 ID 喂给 embedding table,查表得到每个 token 的稠密向量——这就把文本变成了 LLM 能处理的输入。LLM 拿到这些向量后,用自回归的方式逐 token 生成答案:当前上下文已经在手,先预测下一个最可能的 token,把它并入上下文,再预测下一个——一次又一次,直到答案生成完整。

LLM 的自回归生成过程

图注:把"The cat sat on the mat."这一句的生成过程拆成循环的"当前上下文 → 预测下一个 token → 更新上下文"三步:从"The cat"开始,预出 sat 并入;从"The cat sat"预出 on 并入;一路推到完整句子。整条链没有跳跃,每一拍都是"在已生成内容上加一个 token"。

这是普通 LLM 的推理形态——逐 token 预测、答案即推理。但 2024 年起出现的新型 LLM——OpenAI o1、DeepSeek-R1 这些所谓推理模型——在最终答案前先生成一段「思考过程」,可长可达上万 token,再输出最终答案。这条思考文本不是提前写好的脚本文本,是 RL 训练中从模型内部涌现出来的DeepSeekR1。

DeepSeek-R1 的特别之处在于:思考文本不是「脚本」,而是模型用 GRPO + 规则奖励在训练中自动涌现——奖励只关心最终答对答错,不约束推理过程的形式,模型自己发展出「wait, let me re-check」式的反思能力。这条机制让 test-time scaling 真正落地——简单问题思考 7000 token 就够,难题可以分配 18000 token,平均动态分配,而不是简单做多次采样取多数。

思考过程可见不等于完全可解释——底层 Transformer 仍是黑盒,可见的思考只是文本层的显式化,不是权重层的解释。这是 LLM 这条线的真实边界。

LLM 之外的另一条合流是 Agent。LLM 局限在自己的上下文里——它有知识,但没法主动看一个新网页、调一个工具、查一个数据库。Agent 把 LLM 套一个外壳:让它先观察环境(截图、工具返回、网页内容),把新观察更新进任务表示,再据此推出下一步动作ReAct。

ReAct 把这个循环形式化为 Thought / Action / Observation 三段:思考不直接改变环境,但会更新上下文;动作是给环境的指令;观察是环境返回的新信息,三者循环往复直到目标达成ReAct。

Agent 的表示-推理-行动闭环

图注:六个节点排成一个闭环:Goal(靶心)→ Observation(地球、文档、数据库图标)→ Updated Task State(拼图)→ Reasoning(大脑+齿轮)→ Action(扳手)→ Feedback(绿色对勾)→ 回到 Goal。底部一行把这串名字串成 Goal → Observation → Updated Task State → Reasoning → Action → Feedback 的总结,方便读者一眼把循环和文字对齐。

把这段循环搬到真实浏览器里,就是 Google DeepMind 的 Project Mariner——一个 Chrome 扩展,截当前标签页发给后端 Gemini 2.0,由模型给出下一步的鼠标点击或键盘输入,执行后再截图、再发回。

Project Mariner 浏览器 Agent 演示

图注:左侧是 Google Arts & Culture 网页,右侧是 Project Mariner 侧边栏,列出当前任务「Locate a well-known Post-Impressionist artist's colorful... Running」与每一步的执行情况。侧栏能逐条看到模型在做什么、为什么这么做,正是 ReAct 在真实浏览器里的展示。

Agent 把整篇专题的「输入 → 表示 → 推理 → 输出」骨架重新接通成一个会随环境反馈自更新的闭环。智能系统始终不直接面对世界这条主线,在 2022 到 2025 的 LLM / 推理模型 / Agent 浪潮里被推到了一个新的位置:不再只是预测一个学生身高或者判断一封邮件,而是真的能在环境里跑一圈再交差。

参考文献

本专题引用的核心资料如下,建议深入学习时阅读原文:

  1. Deep Blue (Wikipedia Good Article) — https://en.wikipedia.org/wiki/Deep_Blue_(chess_computer)
  2. Efficient Estimation of Word Representations in Vector Space (Mikolov et al., 2013) — https://arxiv.org/abs/1301.3781
  3. Translating Embeddings for Modeling Multi-relational Data (Bordes et al., NeurIPS 2013) — https://proceedings.neurips.cc/paper/2013/hash/1cecc7a77928ca8133fa24680a88d2f9-Abstract.html
  4. Attention Is All You Need (Vaswani et al., NeurIPS 2017) — https://arxiv.org/abs/1706.03762
  5. DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning (DeepSeek, Nature 2025) — https://arxiv.org/abs/2501.12948
  6. ReAct: Synergizing Reasoning and Acting in Language Models (Yao et al., ICLR 2023) — https://arxiv.org/abs/2210.03629
  7. Project Mariner (Google DeepMind, 2024-12-11) — https://deepmind.google/models/project-mariner/
  8. Tiktokenizer — Interactive GPT Tokenizer Visualizer — https://tiktokenizer.com/
知识表示与推理:从四范式基线到推理模型与 Agent