知识图谱入门:概念、架构与典型应用

“知识图谱让机器理解世界的方式,从’记住事实’升级为’理解关系’。”

一、为什么需要知识图谱?

1.1 传统数据存储的局限

传统数据库以”表”为单位存储数据,关系通过外键建立。但面对复杂的关系查询时,SQL 需要大量 JOIN 操作,性能急剧下降。

更复杂的关系(如”朋友的朋友的父亲”)在 SQL 中几乎无法高效表达。

1.2 知识图谱的解决思路

知识图谱用的结构表示知识:

1
2
3
节点(Entity):实体,如"马化腾"、"腾讯"
边(Relation):关系,如"创办"、"股东"
属性(Attribute):实体的特征,如年龄、创立时间

查询”马化腾创办的公司股东是谁?”在图上就是两步遍历:马化腾 → 创办 → 腾讯 → 股东 → ???

二、知识图谱的核心概念

2.1 知识表示:三元组(Triple)

知识图谱的基本单元是三元组

1
2
(主语, 谓语, 宾语)
Head Relation Tail

任何一个知识都可以分解为三元组,多个三元组组合成知识网络

2.2 本体(Ontology)

本体定义了知识图谱的 schema —— 有哪些类型的实体,它们之间有哪些类型的关系。

2.3 知识图谱的类型

类型 特点 代表
通用知识图谱 覆盖广,深度浅 Wikidata、百度百科
领域知识图谱 垂直领域,专业深度 医疗知识图谱、金融风控图谱
企业知识图谱 围绕企业业务定制 客服知识库、商品知识图谱

三、知识图谱的技术架构

3.1 整体架构

1
2
3
4
5
应用层:智能问答 / 推荐系统 / 搜索 / 风险控制
推理层:知识推理 / 路径查询 / 子图匹配 / 图嵌入
存储层:图数据库(Neo4j/JanusGraph)、RDF存储(Jena/Virtuoso)
构建层:实体识别 / 关系抽取 / 实体链接 / 知识融合
数据源:文本 / 数据库 / 表格 / 外部知识库

3.2 知识构建流程

1
2
3
4
Step 1: 知识抽取 — 从文本、表格、数据库中提取实体和关系
Step 2: 知识融合 — 合并来自不同来源的重复实体,解决实体歧义
Step 3: 知识补全 — 通过知识推理发现缺失的知识
Step 4: 质量评估 — 检测错误和冲突知识

四、知识图谱的典型应用

4.1 智能问答

1
2
3
4
用户:谁是小米的创始人?
知识图谱:
小米 → 创始人 → 雷军
小米 → 创始人 → 林斌

4.2 搜索引擎增强

Google 在 2012 年提出”知识图谱”概念,用于增强搜索结果。搜索”特斯拉”时,右侧显示知识卡片,包括创始人、总部、成立时间、代表产品等关键关系。

4.3 推荐系统

基于知识图谱的推荐可以发现实体间的深层关联,比如买了 iPhone 15 后,推荐同品牌的 MacBook Pro、同价位的竞品 Samsung S24,以及配套的 AirPods。

4.4 风控与反欺诈

1
2
3
4
5
6
用户A → 申请贷款 → 公司X
用户B → 申请贷款 → 公司X
用户A → 担保人 → 用户C
用户C → 关联公司 → 公司Y

发现:用户A和用户B都与公司Y有关联,存在团伙欺诈风险!

五、知识图谱的挑战

  1. 知识获取:文本歧义、隐含关系难以识别、低资源场景标注数据稀缺
  2. 知识融合:实体消解(不同写法是否同一实体)、关系冲突
  3. 可扩展性:超大规模图(10亿+实体)的存储和查询

六、知识图谱与向量数据库的关系

1
2
3
4
知识图谱:精确、推理强、可解释,但构建成本高
向量检索:语义理解强、灵活,但缺乏精确关系

融合方案:GraphRAG = 知识图谱 + 向量检索

总结

  1. 知识图谱用图结构表示知识,由实体(节点)和关系(边)组成的三元组是基本单元
  2. 核心价值:让机器能够理解实体之间的关系,实现多跳推理和复杂查询
  3. 典型应用:智能问答、搜索增强、推荐系统、风控反欺诈
  4. 未来趋势:与大模型结合(GraphRAG),发挥结构化和语义化的各自优势

相关文章: