知识表示
知识表示(Knowledge Representation, KR)是人工智能的核心问题之一:如何将现实世界中的知识以计算机可以理解和推理的形式进行编码。一个好的知识表示方案需要在表达力(能否表达复杂的知识)、推理效率(能否高效地进行推导)和可获取性(能否方便地获取和维护知识)之间取得平衡。
从早期的语义网络和框架,到现代的知识图谱和本体论,再到与大语言模型结合的知识增强方法,知识表示技术经历了从符号化到混合化的演进。本笔记涵盖语义网络、本体论、知识图谱、规则引擎、知识图谱嵌入以及 KG+LLM 融合等主题。
1. 为什么需要知识表示
| 挑战 | 说明 |
|---|---|
| 知识的多样性 | 事实、规则、层次关系、不确定性知识 |
| 推理的需求 | 从已知知识推导出新知识 |
| 歧义消解 | 同一词语在不同语境下含义不同(如"苹果"是水果还是公司) |
| 常识推理 | 人类"显而易见"的知识对机器而言并不平凡 |
| 可解释性 | 符号化的知识表示天然具有可解释性 |
知识表示假设(KR Hypothesis):任何智能系统都需要某种形式的知识表示,并基于此进行推理。
2. 语义网络与框架
2.1 语义网络
语义网络(Semantic Network)用节点表示概念,用有向边表示概念之间的关系。
[动物] --is-a--> [生物]
[狗] --is-a--> [动物]
[狗] --has--> [四条腿]
[狗] --can--> [吠叫]
核心关系类型:
| 关系 | 含义 | 示例 |
|---|---|---|
| is-a | 类别归属(继承) | 狗 is-a 动物 |
| has-a | 部分-整体 | 汽车 has-a 引擎 |
| instance-of | 实例化 | Fido instance-of 狗 |
| can | 能力 | 鸟 can 飞 |
继承机制:子类自动继承父类的属性。"狗 is-a 动物"且"动物 has 新陈代谢",则推出"狗 has 新陈代谢"。
2.2 框架
框架(Frame)由 Minsky 在 1974 年提出,是一种结构化的知识表示:
Frame: 狗
is-a: 动物
legs: 4
sound: 吠叫
default-color: 棕色(可被具体实例覆盖)
- 槽(Slot):属性名,如
legs,sound - 面(Facet):属性的约束或元数据,如默认值、类型、范围
- 继承:子框架继承父框架的槽值
语义网络 vs 框架 vs 面向对象
框架的思想直接影响了面向对象编程中的"类-属性-继承"机制。三者本质上都是层次化的知识组织方式。
3. 本体论
3.1 什么是本体
在 AI 中,本体(Ontology) 是对某个领域中的概念、关系和约束的形式化规范说明。
其中 \(C\) 为概念集,\(R\) 为关系集,\(A\) 为公理集,\(I\) 为实例集。
3.2 描述逻辑(Description Logic)
描述逻辑(DL)是本体论的数学基础,提供了可判定的推理机制。
| 构造子 | 语法 | 语义 |
|---|---|---|
| 概念交 | \(C \sqcap D\) | \(C^I \cap D^I\) |
| 概念并 | \(C \sqcup D\) | \(C^I \cup D^I\) |
| 存在量化 | \(\exists R.C\) | 存在 \(R\) 关系连接到 \(C\) 的实例 |
| 全称量化 | \(\forall R.C\) | 所有 \(R\) 关系连接的对象都属于 \(C\) |
| 概念否定 | \(\neg C\) | \(\Delta^I \setminus C^I\) |
示例:
- "有孩子的人" = \(\text{Person} \sqcap \exists \text{hasChild}.\top\)
- "所有孩子都是医生的父母" = \(\text{Person} \sqcap \forall \text{hasChild}.\text{Doctor}\)
3.3 OWL(Web Ontology Language)
OWL 是 W3C 推荐的本体描述语言,基于描述逻辑:
| OWL 子语言 | 对应 DL | 推理复杂度 |
|---|---|---|
| OWL Lite | \(\mathcal{SHIF}(D)\) | EXPTIME |
| OWL DL | \(\mathcal{SHOIN}(D)\) | NEXPTIME |
| OWL Full | 无限制 | 不可判定 |
4. 知识图谱
4.1 基本概念
知识图谱(Knowledge Graph, KG)以三元组(subject, predicate, object)为基本单元存储结构化知识:
RDF(Resource Description Framework):W3C 标准的三元组表示格式。
| 组件 | 示例 |
|---|---|
| 主语(Subject) | dbr:Albert_Einstein |
| 谓语(Predicate) | dbo:birthPlace |
| 宾语(Object) | dbr:Ulm |
4.2 SPARQL 查询
SELECT ?person ?birthPlace WHERE {
?person rdf:type dbo:Scientist .
?person dbo:birthPlace ?birthPlace .
?birthPlace dbo:country dbr:Germany .
}
4.3 知识图谱构建流程
原始文本 → 实体抽取(NER) → 关系抽取(RE) → 实体链接(EL) → 知识融合 → 知识图谱
| 步骤 | 任务 | 典型方法 |
|---|---|---|
| 实体抽取 | 识别文本中的实体 | BiLSTM-CRF, BERT-NER |
| 关系抽取 | 判断实体间的关系 | 远程监督, GPT 提示 |
| 实体链接 | 将提及的实体链接到 KG 中的节点 | 候选生成 + 排序 |
| 知识融合 | 合并不同来源的知识 | 实体对齐, 冲突消解 |
主流知识图谱:
| 知识图谱 | 规模 | 特点 |
|---|---|---|
| Wikidata | ~100B 三元组 | 开放、社区维护 |
| DBpedia | ~3B 三元组 | 从 Wikipedia 抽取 |
| YAGO | ~120M 三元组 | 高精度、时空信息 |
| Google KG | 非公开 | 搜索引擎后端 |
| ConceptNet | ~21M 三元组 | 常识知识 |
5. 规则引擎
5.1 产生式规则
产生式系统(Production System)使用 IF-THEN 规则表示知识:
IF 患者体温 > 38.5°C AND 患者有咳嗽
THEN 怀疑患者有呼吸道感染(置信度 0.8)
5.2 推理方向
| 推理方式 | 描述 | 适用场景 |
|---|---|---|
| 前向链推理 | 从已知事实出发,应用规则推出新事实 | 数据驱动、监控告警 |
| 后向链推理 | 从目标出发,反向查找支持目标的事实 | 目标驱动、诊断系统 |
前向链示例(Rete 算法用于高效匹配):
事实:{温度=39, 咳嗽=是, 年龄=65}
规则1:温度>38.5 AND 咳嗽=是 → 呼吸道感染
规则2:呼吸道感染 AND 年龄>60 → 高风险患者
→ 推出:{呼吸道感染, 高风险患者}
6. 知识图谱推理
6.1 嵌入方法
知识图谱嵌入(KG Embedding)将实体和关系映射到低维向量空间,用于链接预测和补全。
| 模型 | 评分函数 | 特点 |
|---|---|---|
| TransE | \(\|\mathbf{h} + \mathbf{r} - \mathbf{t}\|\) | 简单高效,难以处理一对多关系 |
| TransR | \(\|\mathbf{M}_r \mathbf{h} + \mathbf{r} - \mathbf{M}_r \mathbf{t}\|\) | 关系特定投影 |
| DistMult | \(\langle \mathbf{h}, \mathbf{r}, \mathbf{t} \rangle\) | 双线性模型,只能处理对称关系 |
| ComplEx | \(\text{Re}(\langle \mathbf{h}, \mathbf{r}, \bar{\mathbf{t}} \rangle)\) | 复数空间,可处理非对称关系 |
| RotatE | \(\|\mathbf{h} \circ \mathbf{r} - \mathbf{t}\|\) | 旋转建模,可处理多种关系模式 |
训练目标:最大化正三元组的评分,最小化负三元组的评分(对比学习)。
6.2 基于规则的推理
- 路径排名算法(PRA):发现关系间的推理路径
- 归纳逻辑编程(ILP):从数据中学习逻辑规则
- AnyBURL:高效的基于规则的 KG 推理系统
7. 知识图谱 + LLM
7.1 RAG 中的知识图谱
传统 RAG(Retrieval-Augmented Generation)基于非结构化文本检索。将知识图谱引入 RAG 可以:
- 提供结构化的上下文,减少幻觉
- 支持多跳推理(沿着图谱路径推理)
- 增强实体消歧能力
GraphRAG 架构:
用户问题 → 实体识别 → 子图检索 → 子图序列化 → LLM 生成答案
7.2 知识增强生成
| 方法 | 描述 |
|---|---|
| KG-grounded generation | 将 KG 三元组作为提示注入 LLM |
| KG-guided retrieval | 用 KG 结构指导文档检索 |
| LLM-augmented KG | 用 LLM 辅助 KG 构建和补全 |
| Neuro-symbolic reasoning | 结合 LLM 的语言能力和 KG 的推理能力 |
7.3 挑战与展望
| 挑战 | 说明 |
|---|---|
| 知识新鲜度 | KG 更新滞后于现实世界 |
| 规模与效率 | 大规模 KG 的实时查询和推理 |
| 知识冲突 | KG 中的知识与 LLM 参数知识不一致 |
| 不完整性 | 现有 KG 远未覆盖所有知识 |
| 多模态知识 | 文本、图像、表格等多模态知识的统一表示 |
发展趋势
知识表示正从纯符号化走向神经-符号融合(Neuro-Symbolic AI):用神经网络处理感知和语言理解,用符号系统处理精确推理和知识管理。这种融合被认为是通向更强 AI 的关键路径之一。
参考资料
- Brachman & Levesque, Knowledge Representation and Reasoning
- Hogan et al., "Knowledge Graphs" (ACM Computing Surveys, 2021)
- Pan et al., "Unifying Large Language Models and Knowledge Graphs: A Roadmap" (2024)
- W3C OWL 2 Web Ontology Language
- Stanford Protege