2.2 知识表示与推理


2.2 知识表示与推理

本节摘要:知识表示决定智能体「能理解什么」,知识推理决定「能从已知推出什么」。本节先讲符号、亚符号、混合三种知识表示方法(逻辑/语义网络/框架/本体 vs 神经网络 vs 神经符号),再讲演绎、归纳、溯因、概率、基于案例五种推理,最后给出「知识表示+推理」的选型思路与贝叶斯网络查询示例。

本节地图

阅读完本节,你应当能够:

  1. 说出知识表示的五项评价特性(表达力、推理效率、组织性、可扩展性、可理解性)
  2. 区分逻辑、语义网络、框架、本体四种符号表示及其优劣
  3. 解释亚符号表示为什么「知识不直观」但「擅长模式识别」
  4. 区分演绎、归纳、溯因、概率、基于案例五种推理方法
  5. 用 pgmpy 定义一个贝叶斯网络并做一次概率查询
  6. 根据应用场景选择「表示 + 推理」的组合

问题与直觉

智能体靠感知拿到一堆事实:「草地上湿的」「苏格拉底是人」。但这些孤立的感知数据还不能支撑「要不要带伞」「苏格拉底会不会死」这种结论。缺什么?缺两样:把知识组织起来的形式(知识表示),和从已知推出未知的机制(知识推理)。

SOURCE 原文把知识表示称为智能体的「认知框架」——它决定智能体「看到什么、理解什么、如何用这些理解去推理和行动」。同样一条信息,用逻辑表示和用神经网络权重表示,智能体的推理方式完全不同。所以知识表示的选择不只是技术选型,而是「智能体怎么思考」的路线选择。举个直觉例子:专家系统靠符号规则推理,能解释「为什么下这个诊断」;深度学习模型靠权重推理,答得快但说不清理由。没有绝对的对错,只有场景的适配。

核心原理

知识表示的五项评价特性

SOURCE 列出了判断一种表示好不好用的五条标准:表达力(能不能充分表达概念、事实、规则、关系)、推理效率(支不支持高效推导新知识)、组织性(能不能结构化存储检索)、可扩展性(知识增长时好不好更新)、可理解性(人能不能读懂)。这五条常常互相冲突:符号表示可理解但表达力受限,神经网络表达力强但完全不可理解。选表示的本质就是在这五条之间做权衡。

符号表示

符号表示用符号、逻辑规则抽象表示知识,强调显式与结构化。

  • 逻辑表示:用命题逻辑、谓词逻辑表示知识,可做严格的演绎推理。SOUCE 的「苏格拉底」例子是教科书级的:is_a(Socrates, man) 加上 forall x: is_a(x, man) → will_die(x),推出 will_die(Socrates)。清晰、可验证,但表达复杂知识时要写很多公式。
  • 语义网络:用节点表示概念、边表示关系,图形化、直观,适合关联推理和检索。SOURCE 用 RDFlib 建了一个「Alice knows Bob」的图并查询。缺点是推理能力弱,更多是存储和检索。
  • 框架:把知识组织成「框架 + 槽 + 槽值」。SOURCE 里的 frame_person 定义了 Person 类型的 name/age/occupation 三个槽,frame_alice 是它的实例。结构化程度高,适合表示对象属性。
  • 本体:更规范化的语义网络+框架,含概念层次、属性约束、推理规则,是领域知识的完整模型。语义 Web、知识图谱用它,通常配 OWL 语言和 Protégé 编辑器。

符号表示最大的价值是可解释——每一步推理都有据可查。代价是难以处理感知和模糊信息,知识获取要靠人手工编,泛化能力弱。这正是第 1 章「符号主义」流派的写照。

符号表示的维护成本经常被低估。规则一旦多起来,规则之间可能互相冲突、覆盖,知识的「一致性」很难保证——改一条规则可能连锁影响几十条规则的触发。所以工程上符号知识库要配版本管理和测试套件:把「已知事实 + 期望结论」写成用例,每次改规则跑一遍回归。SOUCE 的 Prolog 例子虽然只有三条规则,但生产级的规则库动辄几千条,没有测试保护的修改等于埋雷。

语义网络的工程形态:知识图谱

语义网络在现代工程里最成熟的形态是知识图谱。它把「实体—关系—实体」三元组(如 Alice—knows—Bob)存储成图,配图数据库和查询语言。SOUCE 用 RDFlib 演示的就是这个概念的最小版本:定义命名空间、添加三元组、按模式查询。知识图谱相比关系数据库的优势在于关系即一等公民——「Alice 认识谁」这类多跳查询天然高效,还能支持「朋友的朋友」这类推理。推荐系统、问答系统、风险控制里都大量用知识图谱做结构化知识层。不过要注意,知识图谱的「推理」大多是图遍历和规则推导,不是逻辑学意义上的严格演绎——两者的边界别搞混。

亚符号表示的权衡细节

亚符号表示(神经网络)的「知识分布式存储」带来一个工程后果:无法局部修改知识。符号知识库里改一条规则只影响相关推理;神经网络想「忘掉」某条错误知识,几乎只能重新训练。这在需要动态更新知识的场景(法规变化、产品改版)里是硬伤。另外,神经网络的「知识」质量完全取决于训练数据——数据里的偏见会被学进去,这埋下了第 6 章安全伦理里「算法偏见」的伏笔。

但亚符号表示也有符号表示做不到的事:从原始感知里自动提取特征。图像、语音、文本这类低层次数据,没有神经网络几乎没法变成机器可用的表示。所以工程实践里最常见的形态不是「二选一」,而是「符号壳 + 亚符号核」:神经网络把图像翻译成「有猫、有人、猫在沙发上」的符号事实,符号引擎再基于这些事实做推理。SOUCE 把这种形态叫神经符号系统,它解决的是「既想会看图,又想讲道理」的现实需求。

亚符号表示

亚符号表示主要指神经网络。知识隐含编码在连接权重里,是分布式存储——「知识分散在网络各处,难以直接提取和解释」。SOURCE 用 PyTorch 训了一个线性模型学习 y = 2x + 1:1000 轮后输入 5 预测接近 11。这个例子虽小,但「知识在权重里」的感觉很具体——你没法把模型的「规律」打印出来看,只能通过预测行为间接验证。

亚符号表示的长处是自动学习特征、擅长感知和模式识别;短处是黑箱、不可解释、需要大量数据。它在感知任务(图像、语音、文本)上碾压符号表示,但在需要逻辑推理的任务上无能为力。

混合表示

混合表示把两者结合,是当前研究热点。两个代表方向:神经符号系统(符号知识指导神经网络学习,或神经网络增强符号推理)、知识图谱嵌入(把实体和关系映射到低维向量空间,用向量距离表示语义,可用于知识图谱补全和关系预测)。简单说,混合表示想让智能体「既会看图,又会讲道理」。

五种推理方法

  • 演绎推理:前提为真则结论必真。所有人会死 + 苏格拉底是人 → 苏格拉底会死。SOUCE 给出了 Prolog 代码:will_die(X) :- is_a(X, man). 加事实 is_a(socrates, man).,查询返回 true。严谨但需要完备的规则库。
  • 归纳推理:从具体事例概括一般规律,结论「很可能」但不保证。看到五只白天鹅归纳出「天鹅都是白的」,实际存在黑天鹅——这个例子说明归纳本质是概率性的,机器学习就是归纳的自动化。
  • 溯因推理:从结果推断最佳原因,结论是假设性的。看到地上湿,推断「可能下雨、可能洒水、可能水管破裂」。SOUCE 用三行代码列了可能原因——诊断、故障排查是它的主场。
  • 概率推理:用概率模型处理不确定性。贝叶斯网络、马尔可夫模型是代表,适合「明天下雨概率 80%」这类知识。
  • 基于案例的推理(CBR):检索相似案例、借鉴或调整其解。「电脑开不了机」→ 检索到「检查电源线和开关」的案例。适合经验丰富的领域(法律咨询、技术支持),依赖案例库质量和相似度计算。

工程实践要点

贝叶斯网络查询示例

SOURCE 用 pgmpy 建了一个经典的「草湿」贝叶斯网络——阴天影响洒水器和下雨,两者共同影响草是否湿:

from pgmpy.models import BayesianModel from pgmpy.factors.discrete import TabularCPD from pgmpy.inference import VariableElimination model = BayesianModel([ ('Cloudy', 'Sprinkler'), ('Cloudy', 'Rain'), ('Sprinkler', 'WetGrass'), ('Rain', 'WetGrass') ]) # ... 省略各节点条件概率表的定义 ... infer = VariableElimination(model) result = infer.query(variables=['Rain'], evidence={'WetGrass': 'T'})

核心动作是「给定证据反向推理」:已知草地湿,问下雨概率。变量消元(VariableElimination)算法自动完成贝叶斯公式的传播。工程上这类模型的价值在于把领域因果结构显式编码——医生知道「感冒→咳嗽」「过敏→咳嗽」,证据是咳嗽,系统能算出感冒和过敏各自的后验。比起端到端神经网络,这种模型可解释、样本需求小,代价是需要人来指定结构。

「表示 + 推理」的选型表

场景需求 推荐表示 推荐推理
规则明确的专家系统 逻辑/产生式规则 演绎
关系丰富的知识库 知识图谱/本体 图查询 + 推理
从数据学规律 亚符号(神经网络) 归纳(学习)
诊断/故障排查 符号 + 概率 溯因 + 贝叶斯
经验丰富领域 案例库 基于案例
感知 + 推理混合 神经符号 混合

⚠️ 常见坑:把「神经网络能回答」误当成「它在推理」。多数语言模型是在做模式匹配与生成,不是严格的逻辑推理——让它做多步演绎容易一本正经地出错。需要严格推理的任务,用符号工具(逻辑编程、规划器)更可靠。
💡 关键直觉:表示和推理是配对选择的。符号表示配演绎推理(规则进规则出),亚符号表示配归纳推理(数据进模式出),概率表示配概率推理(证据进后验出)。配对错了,整个知识层就转不起来。

知识层在智能体里的位置

回到第 2 章的开篇图:感知结果进入知识层,知识层支撑规划决策。SOUCE 列出知识表示与推理在 NLP、专家系统、机器人、知识图谱、推荐系统五个方向的应用——这些正是第 5 章要讲的领域。所以本节是「承上启下」的枢纽:它承接 2.1 的感知输出,又为 2.3 的规划决策、第 5 章的行业落地提供认知地基。做智能体时,先问「知识怎么存、怎么推」,再往下设计决策逻辑,顺序不要反。

本章回顾

  • 五项特性:表达力、推理效率、组织性、可扩展性、可理解性,彼此常冲突
  • 符号表示:逻辑/语义网络/框架/本体,可解释但难处理感知
  • 亚符号表示:知识藏在权重里,擅感知不擅推理
  • 混合表示:神经符号、知识图谱嵌入,取长补短
  • 五种推理:演绎(必然)、归纳(概率)、溯因(假设)、概率(不确定)、CBR(经验)
  • 贝叶斯网络:显式编码因果结构,证据反向推理,可解释且样本需求小
  • 配对选型:表示与推理按场景配对,别混搭

知识层就绪了,下一节让智能体「做决定」——规划与决策。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U