知识图谱概述
Views: --
对应 PPT:第1讲 知识图谱课程的”开篇定位章”,回答 4 个问题:为什么要有 KG / KG 是什么 / KG 怎么来的 / KG 怎么造怎么用。
1. 为什么需要知识图谱
1.1 信号 → 数据 → 信息 → 知识(4 层概念,期末辨析题常考)
| 层级 | 是什么 | 例子 |
|---|---|---|
| 信号 | 传感器测量的物理量,信息的物理载体 | 电流、电压、温度 |
| 数据 | 信号被存储/显示出来的内容 | 文本”226”、连续温度值 |
| 信息 | 数据 + 解释,带语义 | ”姚明身高 2.26 米” → “姚明很高” |
| 知识 | 被验证、正确、被相信的有价值信息 | ”中国的首都是北京” |
关键区分:
- 数据 = 字面量;
- 信息 = 理解后的数据;
- 知识 = 验证过的信息。
1.2 感知智能 vs 认知智能
- 深度学习擅长”感知”(看、听、识别);
- 知识是”认知”(理解、推理、决策)的燃料;
- 例:“特朗普住哪?“——纯 DL 答不出;引入”美国总统住白宫”这条常识即可推理。
1.3 知识驱动 vs 数据驱动
| 维度 | 知识驱动 | 数据驱动 |
|---|---|---|
| 依赖 | 预定义规则和逻辑 | 从数据中学模式 |
| 擅长 | 结构化、定义明确的任务 | 复杂、非结构化任务 |
| 代表 | 专家系统、规则系统、KG | 深度学习、大模型 |
大模型幻觉的根因之一是知识不全/不准;KG 给机器外挂结构化、可推理的知识库。
2. 知识图谱的定义
知识图谱是一种用有向图模型来描述知识和建模世界万物之间的关联关系的技术方法,由节点和边组成。
- 2012 年 Google 在搜索引擎中首次提出”Knowledge Graph”;
- 以图数据结构描述概念、实体及其关系,更接近人类认知形式。
3. 基本概念
3.1 三元组(KG 最基本单位)
关系事实 = (头实体, 关系/属性, 尾实体) = RDF 三元组 = SPO 三元组。
- 头实体 = Subject
- 关系/属性 = Predicate
- 尾实体 = Object
例:
(北京航空航天大学, 成立于, 1952年)
(北京航空航天大学, 教职工人数, 4266)
(北京航空航天大学, 学生人数, 37000)
3.2 两层结构(最重要的一张图)
| 层 | 内容 | 作用 | 例子 |
|---|---|---|---|
| 概念层 / 模式层 | 抽象的”类”、本体、本体间关系 | KG 骨架,约束实例 | 体育人物、娱乐人物、城市 |
| 实例层 / 数据层 | 真实实体 + 实体间关系 | KG 血肉,存事实 | 姚明、韩寒、上海 |
连接关系:
- 概念层之间用 Subclass(体育人物 Subclass 人物);
- 概念↔实例用 Instance Of / Type(姚明 Type 体育人物);
- 实例之间用 Relation(姚明 出生于 上海)。
为什么要分两层:
- 概念层约束实例层,防”姚明属于水果”;
- 支持基于概念的推理(“体育人物会打篮球” → “姚明会打篮球”);
- 本体可独立复用和扩展。
3.3 节点的层次化表示
领域(Domain/Topic) 人物、自然、文化…
└─ 概念(Concept) 体育人物、娱乐人物…
└─ 实体(Entity/Instance) 姚明、韩寒…
3.4 节点类型
| 类型 | 含义 | 例子 |
|---|---|---|
| 实例(Instance) | 真实实体 | (姚明,出生地,上海市) |
| 字符串(String) | 文本值 | (北京大学,学术传统,兼容并包、思想自由) |
| 数值(Number) | 数字 | (北京市,面积,1.641万)、(姚明,身高,2.29米) |
| 时间(Date) | 日期 | (姚明,出生年份,1981年) |
3.5 边类型
| 类型 | 连接什么 | 例子 |
|---|---|---|
| Subclass(子类) | 本体之间 | (体育人物,Subclass,人物) |
| Type(类型) | 实体 ↔ 本体 | (姚明,Type,体育人物) |
| Relation(关系) | 实体之间 | (姚明,出生于,上海)、(姚明,朋友,奥尼尔) |
属性 vs 关系:属性图里都叫”边”;RDF 里属性要加一个特殊节点表示。
4. 发展历史(5 个里程碑)
| 阶段 | 时间 | 核心 | 关键人物/事件 |
|---|---|---|---|
| 专家系统(ES) | 1970s | 知识库 + 推理机,人工写规则 | MYCIN(医疗) |
| 本体(Ontology) | — | 结构化术语集,概念间关系 | 哲学起源 → AI |
| 万维网(WWW) | 1989 | 文档靠超链接互联 | Tim Berners-Lee |
| 语义网(Semantic Web) | 2001 W3C | 给网页加机器可读语义 | W3C |
| 链接数据(Linked Data) | — | URI 标识万物 + RDF 互联 | 语义网落地 |
| 知识图谱 | 2012~ | Google 正式命名 KG | YAGO/DBpedia/Wikidata 等百花齐放 |
知识工程 vs 知识图谱(要背)
| 维度 | 知识工程 | 知识图谱 |
|---|---|---|
| 构建 | 人工 | 自动 + 众包 |
| 数据量 | 万~十万 | 数十亿~数万亿三元组 |
| 表示 | 一阶逻辑/产生式/描述逻辑 | RDF/属性图/分布式表示 |
| 任务 | 逻辑推理 | 检索 + 推理,赋能搜索/问答/推荐 |
KG vs 传统知识库 vs 数据库
| 类型 | 主要任务 | 备注 |
|---|---|---|
| 数据库 | 数据处理 | 表结构、强 schema |
| 传统知识库 | 知识处理 | 重推理、量小 |
| 知识图谱 | 知识应用 | 量大、含语义、可推理、形式灵活 |
KG 不替代数据库,KG 是更高层的语义层。
5. 典型知识图谱(期末选择题重灾区)
5.1 通用 KG vs 领域 KG
| 维度 | 通用 KG | 领域 KG |
|---|---|---|
| 知识来源 | Wikipedia/众包 | 行业/企业内部数据 |
| 规模化 | 渐进 | 快速大规模 |
| 表示 | 三元组事实型 | 复杂本体 + 规则 |
| 质量 | 开放域 + 容忍度 | 抽+人工审核、质量高 |
| 融合 | 提升质量 | 多源融合扩展 |
| 应用 | 搜索/问答 | 决策/业务管理(重推理) |
| 举例 | DBpedia、Yago、百度、谷歌 | 电商、医疗、金融、农业、安全 |
互补:通用提供基础 → 行业复用+加深 → 回流补充通用。
5.2 代表项目速记表
| 名称 | 类别 | 核心特点 | 关键记忆点 |
|---|---|---|---|
| WordNet | 早期词典 | 1985 普林斯顿,按”词义”组织,词义簇 synset | 词义聚类 |
| ConceptNet | 常识 | MIT OMCS,多语言、开放常识 | 词-词关系多 |
| BabelNet | 跨语言 | YAGO 思路 + 多语言 Wiki + 机器翻译 | 最大多语言百科 |
| Wikidata | 众包 | 免费开放、多语言、机器可编辑、三元组 | 维基数据 |
| YAGO | 融合 | WordNet 词汇 + Wikipedia 分类 | WordNet+Wiki |
| DBpedia | 早期 | KG 版的 Wikipedia | 结构化抽取 Wiki |
| Freebase | 众包 | 开放共享、协同构建、链接数据库 | 众包先驱 |
| Schema.org | 词汇标准 | 本体,覆盖人/组织/地点/时间/医疗/商品 | 互联网本体标准 |
| NELL | 自动抽取 | 互联网挖掘自动抽三元组 | Never-Ending Learning |
| OpenKG | 中文社区 | 18 个领域中文 KG | 中文 KG 联盟 |
| cnSchema | 中文标准 | OpenKG 发起、中文本体标准 | 中文版 Schema.org |
| OpenBase.AI | 中文众包 | 类似 Wikidata,中文为主,机+人协同 | 中文 Wiki |
5.3 行业代表
- 阿里巴巴电商 KG:用户需求 ↔ 商品特性,提升搜索/推荐;
- 美团大脑:挖掘人-店家-商品关联,餐饮娱乐决策;
- AMiner(清华):学者-论文关联,KDD 2020 时间检验奖;
- 中医药 KG:医案抽取,临床知识;
- 天眼查:商业情报,挖掘公司/负责人隐式关系。
速记口诀:WordNet-词典,ConceptNet-常识,Wikidata-众包最大,YAGO-融合最巧,DBpedia-维基版,Freebase-众包先驱,NELL-自动抽,OpenKG-中文联盟。
6. 技术流程(4 个关键问题)
6.1 整体架构
应用层 语义搜索 / 智能问答 / 辅助决策
服务层 知识存储 / 知识检索 / 知识推理
支撑层 NLP / 知识抽取 / 知识表示 / ML / DL / 图数据库
知识融合 / 知识众包 / 知识建模 / 大模型
数据层 非结构化 / 半结构 / 结构化 / 多媒体结构 / 众包
6.2 四个关键问题(4 个动词)
| 关键问题 | 解决什么 | 主流方法 |
|---|---|---|
| 知识表示 | 知识怎么”写”成机器能懂的符号 | RDF / 属性图 / OWL / 表示学习 |
| 知识抽取 | 怎么从数据里把知识挖出来 | 实体识别 / 关系抽取 / 事件抽取 |
| 知识融合 | 多源 KG 怎么合并成一个 | 实体对齐 / 消歧 / 共指 |
| 知识服务 | 怎么用知识 | 补全 / 推理 / 语义检索 / 问答 |
6.3 4 个问题展开
① 知识表示
- 本体:类集、属性集、关系集、词汇集;
- 实体:实体间关系 + 描述术语;
- 事件:实体关联 + 发生时间;
- 基本描述框架:W3C 的 RDF = 主谓宾三元组。
② 知识抽取
- 结构化数据 → D2R 工具:Triplify、D2RServer、OpenLink、SparqlMap、Ontop;
- 文本数据 → 实体识别 + 关系抽取;
- 关系抽取方法演进:特征模板 → 核函数监督 → 远程监督 → 联合抽取 → LLM。
③ 知识融合
- 模式层:新本体融入已有本体;
- 数据层:实体指称、属性、关系、类别融合;
- 实体消歧:同名实体不同含义(“苹果”公司 vs 水果);
- 共指消解:不同命名指同一实体(“北航” = “北京航空航天大学”)。
④ 知识服务
- 本体推理:基于描述逻辑,对概念/关系补全;
- 例:
(X,出生于,Y) ∧ (Y,属于国家,Z) ⇒ (X,国籍,Z); - 事实:姚明出生于上海 + 上海属于国家中国 → 推出姚明国籍中国。
- 例:
- 图结构推理:实体间路径 + 周围图结构预测关系;
- 表示学习推理:实体/关系嵌成向量,h + r ≈ t(TransE);
- 知识检索:语义搜索,给出精确答案 + 相关推荐;
- 辅助决策:KG 嵌入分析/推荐流程。
6.4 知识存储两条路线
- 三元组库(Semantic Web 出身):存 RDF,代表 Apache Jena、OpenLink Virtuoso;
- 图数据库(数据库出身):存属性图,代表 Neo4j、JanusGraph、OrientDB;
- 核心区别:RDF 边/点无属性,要加属性得新加节点;属性图原生支持键值对属性。
7. 本章脑图
知识图谱概述
├── 为什么需要知识
│ ├── 信号→数据→信息→知识
│ ├── 感知 vs 认知
│ ├── 大模型幻觉根因
│ └── 知识驱动 vs 数据驱动
├── 基本概念
│ ├── 节点=实体/概念,边=关系/属性
│ ├── 三元组 (h, r, t)
│ ├── 概念层(Subclass/Type)+实例层(Relation)
│ ├── 节点类型:实例/字符串/数值/时间
│ └── 边类型:Subclass/Type/Relation
├── 发展历史
│ ├── 专家系统(70s)→本体→万维网→语义网
│ ├── →链接数据→KG(2012 Google)
│ └── KG vs 知识工程 vs 数据库
├── 典型项目
│ ├── 通用:WordNet/ConceptNet/YAGO/DBpedia/Wikidata/Freebase/NELL/BabelNet
│ ├── 中文:OpenKG/cnSchema/OpenBase
│ └── 领域:阿里电商/美团/AMiner/中医药/天眼查
└── 技术流程(4 关键问题)
├── 知识表示 → RDF/属性图/OWL
├── 知识抽取 → 实体/关系/事件
├── 知识融合 → 实体对齐/消歧/共指
└── 知识服务 → 推理/检索/问答