跳至主要內容

第四次课

周子力大约 19 分钟教学文档知识图谱, NLP

知识图谱:从基础到大语言模型时代

知识图谱与NLP讨论班讲义

课程信息:本科生讨论班 · 3小时 · 知识图谱专题


目录

  1. 什么是知识图谱
  2. 知识图谱的历史
  3. 知识图谱的核心技术
  4. 知识图谱的应用
  5. 大语言模型与知识图谱
  6. 讨论与思考题
  7. 参考资料

一、什么是知识图谱

1.1 直觉理解

想象你在搜索引擎中输入"爱因斯坦",你会看到一个信息卡片:他的出生日期、国籍、主要成就、相关人物……这背后支撑的数据结构,就是知识图谱。

知识图谱(Knowledge Graph)是一种以图结构组织知识的技术,它将现实世界中的实体(人、地点、事件、概念)及其关系结构化地表示出来。

1.2 形式化定义

知识图谱本质上是一个有向标注图,其基本组成单元是三元组(Triple)

(头实体, 关系, 尾实体)
(Subject, Predicate, Object)
(s, r, o)

示例:

头实体关系尾实体
爱因斯坦出生于德国
爱因斯坦提出了相对论
相对论属于物理学
诺贝尔奖颁发给爱因斯坦

将这些三元组连接起来,就形成了一张知识的"网络"——知识图谱。

1.3 知识图谱 vs. 传统数据库

维度关系型数据库知识图谱
数据模型表格(行列)图(节点+边)
模式严格固定模式灵活开放模式
关系表达JOIN操作边直接表示关系
推理能力强(支持逻辑推理)
异构数据难以处理天然支持
查询语言SQLSPARQL / Cypher

1.4 知识的表示层次

原始数据(Raw Data)
    ↓  信息提取
信息(Information):结构化的事实
    ↓  组织与关联
知识(Knowledge):关联的信息网络
    ↓  推理与抽象
智慧(Wisdom):可以推理与决策的系统

知识图谱的目标是在信息层知识层之间建立桥梁,并支持一定程度的推理。


二、知识图谱的历史

2.1 前史:知识表示的探索(1950s–1990s)

知识图谱并非凭空出现,它继承了人工智能早期对知识表示的大量研究。

语义网络(Semantic Network)(1960s)

  • Ross Quillian(1966)提出语义网络,用节点和弧线表示概念及其关系
  • 是知识图谱最早的前身
  • 例:dog → is-a → animaldog → has → legs

框架理论(Frame Theory)(1970s)

  • Minsky(1974)提出框架,将知识组织成结构化的数据结构
  • 类似于今天面向对象编程中的"类"

本体论(Ontology)(1980s–1990s)

  • 从哲学借用"本体"概念,用于形式化描述某一领域的概念及其关系
  • 代表成果:WordNet(1985–)、Cyc(1984–)

WordNet:由普林斯顿大学构建的英语词汇数据库,将词语按照同义词集(synset)组织,并标注词语间的语义关系(上下位、同义、反义等),至今仍是NLP研究的重要资源。

Cyc:Douglas Lenat发起的超大规模常识知识库项目,试图将人类的"常识"编码成机器可读的形式。耗时数十年,积累了数百万条规则,但由于知识获取瓶颈(Knowledge Acquisition Bottleneck),难以规模化。

2.2 语义网时代(2000s)

Tim Berners-Lee(万维网发明者)在2001年提出**语义网(Semantic Web)**愿景:

让机器也能理解网页上的信息,实现机器可读的万维网。

为此,W3C推出了一系列标准:

  • RDF(Resource Description Framework):用三元组描述资源
  • OWL(Web Ontology Language):本体描述语言
  • SPARQL:RDF图的查询语言

这一时期建立了知识图谱的技术基础,但语义网的宏大愿景并未完全实现——主要原因是构建和维护成本太高,且缺乏商业驱动力。

2.3 现代知识图谱的崛起(2010s)

2010年:Freebase被Google收购

  • Freebase是一个开放的协作知识库,包含数千万实体
  • Google将其用于构建自己的知识图谱

2012年:Google Knowledge Graph正式发布

  • Google正式提出"Knowledge Graph"这一术语
  • 搜索结果页面出现知识卡片(Knowledge Panel)
  • 标志着知识图谱从学术走向工业界主流

同期涌现的重要知识图谱:

名称机构特点
Google Knowledge GraphGoogle搜索驱动,规模最大
WikidataWikimedia基金会开放、众包、多语言
DBpedia学术界从Wikipedia抽取,RDF格式
YAGOMPI / ETH Zürich高精度,融合WordNet与Wikipedia
Freebase→ Google协作构建,已并入Wikidata
百度知识图谱百度中文,搜索应用
阿里知识图谱阿里巴巴商品与电商领域
CN-DBpedia复旦大学中文百科知识图谱

2.4 深度学习赋能阶段(2015–2022)

随着深度学习的崛起,知识图谱研究进入新阶段:

  • **知识图谱嵌入(KG Embedding)**成为研究热点(TransE, RotatE等)
  • **图神经网络(GNN)**与知识图谱结合
  • 知识图谱开始服务于下游NLP任务(问答、对话、推荐)

2.5 大语言模型时代(2022–至今)

ChatGPT等大语言模型的出现,引发了知识图谱领域的深刻变革——这也是本课的重点之一,后文详细展开。


三、知识图谱的核心技术

3.1 知识图谱的构建

构建知识图谱通常分为以下几个步骤:

原始文本/数据
    ↓
① 实体识别(NER)
    ↓
② 关系抽取(RE)
    ↓
③ 实体链接(EL)
    ↓
④ 知识融合(KF)
    ↓
⑤ 知识存储与推理
    ↓
知识图谱

3.1.1 命名实体识别(Named Entity Recognition, NER)

任务:从文本中识别出具有特定意义的实体,并标注其类型。

常见实体类型:人名(PER)、地名(LOC)、机构名(ORG)、时间(TIME)、数字(NUM)等。

示例:

"2024年,OpenAI发布了GPT-4o,Sam Altman在旧金山宣布了这一消息。"
         ORG         产品名             PER            LOC

主流方法:

  • 早期:CRF(条件随机场)+ 人工特征
  • 现在:BERT/RoBERTa + 序列标注(BIO/BIOES标注方案)
  • 前沿:大语言模型(few-shot/zero-shot NER)

3.1.2 关系抽取(Relation Extraction, RE)

任务:识别文本中两个实体之间的语义关系。

示例:

"马云创立了阿里巴巴。"
→ (马云, 创立, 阿里巴巴)

两种场景:

  • 有监督关系抽取:预定义关系类型,训练分类器
  • 开放域关系抽取(OpenIE):不预定义关系,自动抽取关系短语

主流方法:

  • Pipeline方法:先NER,再对实体对分类
  • 联合抽取(Joint Extraction):同时完成实体识别和关系抽取
  • 远程监督(Distant Supervision):利用已有知识图谱自动生成训练数据

3.1.3 实体链接(Entity Linking / Entity Disambiguation)

任务:将文本中识别出的实体指称(mention)链接到知识图谱中的对应实体。

挑战:

  • 歧义性:"苹果"→ 水果 or 苹果公司?
  • 多样性:同一实体可能有多种称呼("北京"="首都"="Beijing")

流程:

  1. 候选实体生成(Candidate Generation)
  2. 候选实体排序(Candidate Ranking)
  3. NIL检测(实体是否在知识图谱中)

3.1.4 知识融合与对齐

当从多个来源构建知识图谱时,需要:

  • 实体对齐:判断不同知识库中的实体是否指同一现实对象
  • 关系对齐:统一不同来源中语义相同但表述不同的关系
  • 冲突消解:处理来自不同来源的矛盾知识

3.2 知识图谱的表示学习

3.2.1 为什么需要嵌入表示?

符号化的知识图谱难以直接用于机器学习任务。知识图谱嵌入(KG Embedding)将实体和关系映射到低维连续向量空间,从而:

  • 支持相似性计算
  • 实现知识图谱补全(链接预测)
  • 与神经网络模型集成

3.2.2 经典模型

TransE(2013)

  • 将关系建模为向量空间中的平移操作
  • 核心假设:h+rt\mathbf{h} + \mathbf{r} \approx \mathbf{t}(若三元组(h,r,t)(h,r,t)成立)
  • 简洁高效,但难以处理一对多/多对多关系

TransR / TransH(2014)

  • 对TransE的改进,在关系特定的空间中进行平移

DistMult(2015)

  • 用双线性函数建模:f(h,r,t)=hTMrtf(h,r,t) = \mathbf{h}^T \mathbf{M}_r \mathbf{t}

RotatE(2019)

  • 将关系建模为复数向量空间中的旋转
  • 可以建模对称、反对称、逆、组合等关系模式

图神经网络方法(R-GCN, CompGCN等)

  • 利用图结构信息,通过消息传递更新实体表示
  • 更好地利用多跳邻居信息

任务:预测知识图谱中缺失的三元组。

示例:已知(爱因斯坦,出生于,?),预测尾实体。

这是知识图谱嵌入最重要的评测任务,常用指标:

  • MRR(Mean Reciprocal Rank):平均倒数排名
  • Hits@K:正确实体出现在前K个候选中的比例

3.3 知识图谱的推理

3.3.1 本体推理(Ontology-based Reasoning)

基于预定义的规则和本体公理进行推理:

规则:X 是 Y 的父母 ∧ Y 是 Z 的父母 → X 是 Z 的祖父母
已知:(张三, 父母, 李四), (李四, 父母, 王五)
推出:(张三, 祖父母, 王五)

常用推理引擎:Pellet、HermiT(基于OWL)

3.3.2 路径推理

在知识图谱中寻找实体间的推理路径:

爱因斯坦 → [任职于] → 普林斯顿高等研究院
         → [位于]  → 美国新泽西州

代表工作:Path-RNN, MINERVA(强化学习路径推理)

3.3.3 多跳问答

在知识图谱上回答需要多步推理的问题:

问:"爱因斯坦的导师的导师是谁?"
路径:爱因斯坦 → [导师] → 韦伯 → [导师] → ?

3.4 知识图谱的存储与查询

3.4.1 图数据库

常用图数据库:

  • Neo4j:最流行的图数据库,查询语言Cypher
  • Amazon Neptune:云端图数据库,支持RDF和属性图
  • Apache Jena:开源RDF框架,支持SPARQL

3.4.2 SPARQL查询示例

PREFIX dbo: <http://dbpedia.org/ontology/>
PREFIX dbr: <http://dbpedia.org/resource/>

SELECT ?award WHERE {
    dbr:Albert_Einstein dbo:award ?award .
}

3.4.3 Cypher查询示例(Neo4j)

MATCH (p:Person {name: "爱因斯坦"})-[:AWARDED]->(a:Award)
RETURN a.name

四、知识图谱的应用

4.1 搜索引擎增强

Google Knowledge Panel 是知识图谱最广为人知的应用:

  • 搜索"奥巴马"时,右侧显示其职业、家庭、任期等结构化信息
  • 直接回答事实类问题,无需点击网页
  • 支持语义搜索(理解查询意图,而非关键词匹配)

背后原理

  1. 识别查询中的实体
  2. 在知识图谱中查找相关信息
  3. 生成结构化的答案卡片

4.2 问答系统(KGQA)

**知识图谱问答(KGQA)**是将自然语言问题转化为知识图谱查询的任务。

两种主流范式:

方法思路优点缺点
语义解析(SP-based)将问题解析为逻辑查询(SPARQL等)可解释,精准覆盖范围有限
信息检索(IR-based)检索子图后用神经网络推理更灵活,鲁棒可解释性差

代表数据集

  • WebQuestions:从Freebase回答的网页问题
  • FreebaseQA
  • ComplexWebQuestions(多跳推理)

4.3 推荐系统

知识图谱为推荐系统提供丰富的语义信息:

用户 → [购买] → 《三体》(科幻小说)
《三体》 → [作者] → 刘慈欣
刘慈欣 → [其他作品] → 《流浪地球》
→ 推荐《流浪地球》给该用户

代表工作:KGCN、KGNN-LS、RippleNet

4.4 医疗健康领域

医学知识图谱在医疗AI中有重要应用:

  • 疾病-症状-药物关系图谱:辅助诊断
  • 药物相互作用预测:发现潜在药物副作用
  • 医学文献挖掘:自动从文献中抽取医学知识

代表知识图谱

  • UMLS(统一医学语言系统)
  • DrugBank
  • 中文医学知识图谱(CMeKG)

4.5 金融领域

  • 企业关系图谱:股权穿透、关联方识别(反欺诈)
  • 事件知识图谱:财经事件分析、影响链推理
  • 风险传导分析:金融风险的图上传播建模

4.6 对话系统

知识图谱为对话系统提供事实基础:

  • 任务型对话:酒店预订、机票查询(结构化知识查询)
  • 闲聊系统:使对话更有"知识含量"
  • 问答机器人:企业客服、智能助手

五、大语言模型与知识图谱

这是本课最前沿、也最值得深入讨论的部分。

5.1 大语言模型作为"隐式知识库"

大语言模型(如GPT-4、Claude、LLaMA)在预训练过程中,已经从海量文本中隐式地学习了大量世界知识

你可以直接问ChatGPT:

"爱因斯坦在哪所大学工作?"

它能给出正确答案,但这些知识是以参数权重的形式分布存储的,而非显式的三元组。

LLM的知识特点:

维度LLM(隐式知识)知识图谱(显式知识)
存储形式参数权重结构化三元组
可解释性差(黑盒)强(可查询)
时效性受训练截止日期限制可实时更新
精确性存在幻觉(hallucination)精确可靠
推理能力强(灵活推理)有限(规则推理)
覆盖范围极广有限(需手动构建)
更新成本高(需重新训练)低(可增量更新)

5.2 LLM对知识图谱构建的影响

5.2.1 LLM大幅提升信息抽取能力

传统方法的痛点

  • NER和关系抽取需要大量标注数据
  • 对新领域、新关系类型的泛化能力弱
  • Pipeline误差累积

LLM带来的改变

Few-shot/Zero-shot信息抽取

Prompt示例:
"从以下文本中抽取人物与职位的关系,以JSON格式输出:
文本:'2024年1月,李明接任华为消费者业务总裁一职。'
输出:{"entity1": "李明", "relation": "担任", "entity2": "华为消费者业务总裁"}"

LLM可以在无需专门训练的情况下,完成高质量的信息抽取。

代表工作:

  • GPT-NER(2023):用LLM做NER,性能超过监督模型
  • UniversalNER(2023):专为NER微调的LLM
  • InstructIE(2023):基于指令的开放信息抽取

5.2.2 LLM辅助知识图谱补全

传统方法:依赖结构信息(图结构、嵌入)

LLM方法:利用文本描述和上下文理解

任务:预测 (Marie Curie, educated_at, ?)
LLM可以基于文本知识推断:巴黎大学(索邦大学)

代表工作:KG-BERT, LMKE, ChatRule

5.2.3 自动化知识图谱构建管道

LLM使得"端到端"构建知识图谱成为可能:

原始文本
   ↓ LLM (one-pass extraction)
实体 + 关系 + 事件
   ↓ 实体链接(LLM + 检索)
链接到已有KG
   ↓ LLM辅助质量验证
高质量知识图谱

代表项目

  • JARVIS/AutoKG:自动化知识图谱构建
  • GraphGPT:利用GPT构建领域知识图谱

5.3 LLM对知识图谱应用的影响

5.3.1 KGQA的范式转变

传统KGQA管道

自然语言问题 → 语义解析 → SPARQL → 执行 → 答案

LLM时代的KGQA

方法一:LLM生成查询(Text2SPARQL)

  • LLM直接将自然语言转为SPARQL/Cypher
  • 优点:灵活,可处理复杂问题
  • 代表:DAIL-SQL(类似思路用于KGQA)

方法二:检索增强生成(RAG + KG)

  • 从知识图谱中检索相关子图
  • 将子图作为上下文输入LLM
  • LLM基于知识图谱生成答案

方法三:LLM + 知识图谱协同推理

  • LLM负责自然语言理解和推理规划
  • 知识图谱负责提供精确事实
  • 两者互补,取长补短

5.3.2 RAG与知识图谱的结合(GraphRAG)

背景:标准RAG(Retrieval Augmented Generation)通过检索文本块辅助LLM,但存在局限:

  • 文本块之间缺乏结构关系
  • 难以支持多跳推理
  • 全局信息难以整合

GraphRAG(微软,2024年):

  • 将文档解析为知识图谱(实体+关系+社区)
  • 检索时利用图结构进行跳跃推理
  • 适合需要综合多处信息的复杂问题
问题:"这家公司的核心竞争优势是什么?"
     ↓
GraphRAG 遍历图结构:
公司 → 产品线 → 技术专利 → 市场份额 → ...
     ↓
汇总子图信息 → LLM生成综合回答

与标准RAG对比:

维度标准RAGGraphRAG
信息单元文本块(chunk)实体+关系+社区
多跳推理
全局问题
构建成本较高
局部问题相当

5.3.3 知识图谱增强LLM

知识图谱可以解决LLM的关键问题:

1. 缓解幻觉(Hallucination)

  • LLM有时"一本正经地胡说八道"
  • 知识图谱提供可靠的事实锚点
  • LLM生成时以知识图谱为约束

2. 提升时效性

  • LLM知识有截止日期
  • 知识图谱可以实时更新
  • 动态知识图谱 + LLM = 时效性强的智能系统

3. 增强可解释性

  • LLM的推理过程不透明
  • 知识图谱提供可追溯的推理路径
  • "为什么给出这个答案?" → 展示图谱推理路径

4. 领域适应

  • 通用LLM对特定领域(医疗、法律、金融)知识不足
  • 领域知识图谱补充专业知识
  • 垂直行业应用的关键技术路线

5.4 LLM是否会取代知识图谱?

这是当前学界和工业界热烈讨论的问题。

"取代论"的观点

  • LLM已经隐式学习了大量知识,无需显式知识图谱
  • 构建和维护知识图谱成本高
  • LLM的灵活性远超符号系统

"互补论"的观点(主流):

  • LLM存在幻觉,知识图谱提供可靠事实基础
  • 关键决策场景(医疗、法律、金融)需要可解释、可追溯的知识
  • 实时更新的需求无法靠重新训练LLM满足
  • 结构化查询、精确计算等任务LLM不擅长

当前学界共识

  • LLM + KG 是互补关系,不是替代关系
  • "神经符号"融合(Neuro-symbolic AI)是未来方向
  • 两者各有优势,协同发挥最大价值

5.5 前沿研究方向

研究方向核心问题代表工作
LLM辅助KG构建如何用LLM自动构建高质量KG?AutoKG, GraphGPT
KG增强LLM推理如何让LLM在推理时调用KG?KAPING, ToG
GraphRAG如何用KG结构改善RAG效果?GraphRAG (Microsoft)
时序知识图谱如何处理随时间变化的知识?TKG系列工作
多模态知识图谱如何融合图像、文本、结构知识?MMKG系列
可信知识图谱如何评估知识的可信度?Credibility KG

六、讨论与思考题

讨论题 A:知识获取瓶颈

Cyc项目耗费数十年、数亿美元,试图手工编码常识知识,最终未能实现最初愿景。知识获取瓶颈(Knowledge Acquisition Bottleneck)是知识工程的历史难题。LLM的出现是否从根本上解决了这一问题?还是只是绕过了它?

讨论题 B:幻觉与可靠性

LLM有时会自信地给出错误答案(幻觉)。在医疗问答场景中,你会如何设计一个系统,让LLM的生成能力与知识图谱的可靠性相结合,同时保证答案的准确性和可解释性?

讨论题 C:开放信息抽取

传统关系抽取需要预定义关系类型,而开放信息抽取(OpenIE)可以抽取任意关系。随着LLM的出现,你认为未来知识图谱的关系体系应该是封闭的还是开放的?各有什么优缺点?

讨论题 D:GraphRAG的局限

GraphRAG需要先将文档转化为知识图谱,再进行检索。这个过程本身会引入信息损失和错误。你认为在什么场景下GraphRAG优于标准RAG?在什么场景下标准RAG更合适?

小组练习

练习1(15分钟):选择一个领域(如电影、体育、医药),设计一个小型知识图谱的Schema:

  • 定义3-5种实体类型
  • 定义5-10种关系类型
  • 给出5条示例三元组

练习2(20分钟):给定以下段落,手动进行信息抽取,并与LLM(如ChatGPT)的抽取结果比较:

"2024年,英伟达(NVIDIA)的市值一度超过3万亿美元,超过了微软,成为全球市值最高的公司。这一成就主要得益于其GPU在人工智能训练中的广泛应用,其中H100芯片成为各大AI实验室的抢手产品。英伟达CEO黄仁勋表示,AI基础设施的需求仍将持续增长。"


七、参考资料

综述与教材

  • Hogan, A. et al. (2021). Knowledge Graphs. ACM Computing Surveys. (知识图谱领域最权威综述之一)
  • Pan, J.Z. et al. (2023). Unifying Large Language Models and Knowledge Graphs: A Roadmap. IEEE Transactions on Knowledge and Data Engineering.
  • Ji, S. et al. (2022). A Survey on Knowledge Graphs: Representation, Acquisition, and Applications. IEEE TNNLS.

LLM与知识图谱

  • Edge, D. et al. (2024). From Local to Global: A Graph RAG Approach to Query-Focused Summarization. arXiv:2404.16130. (GraphRAG原论文)
  • Pan, S. et al. (2024). Large Language Models and Knowledge Graphs: Opportunities and Challenges. TKDE.
  • Sun, J. et al. (2024). Think-on-Graph: Deep and Responsible Reasoning of Large Language Models with Knowledge Graph. ICLR 2024.

经典知识图谱论文

  • Bordes, A. et al. (2013). Translating Embeddings for Modeling Multi-relational Data. NeurIPS. (TransE)
  • Sun, Z. et al. (2019). RotatE: Knowledge Graph Embedding by Relational Rotation in Complex Space. ICLR. (RotatE)
  • Devlin, J. et al. (2019). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. NAACL.

工具与资源

  • Wikidata:https://www.wikidata.org
  • DBpedia:https://dbpedia.org
  • Neo4j(图数据库):https://neo4j.com
  • OpenKE(知识图谱嵌入工具包):https://github.com/thunlp/OpenKE
  • DeepKE(知识图谱构建工具):https://github.com/zjunlp/DeepKE

中文资源

  • 刘峤等. (2016). 知识图谱构建技术综述. 计算机研究与发展.
  • CN-DBpedia:http://openkg.cn/dataset/cndbpedia
  • OpenKG(中文开放知识图谱):http://openkg.cn

讲义版本:2025年 · 知识图谱与NLP讨论班

如有问题,欢迎课后讨论。

上次编辑于:
贡献者: zilizhou