跳至主要內容

第三次课:知识图谱构建——从领域到小型图谱

周子力大约 14 分钟教学文档知识图谱知识构建Schema知识抽取

第三次课:知识图谱构建——从领域到小型图谱

学习目标

通过本讲学习,学生应能够:

  1. 理解实体、关系、属性和 schema 在知识图谱中的作用。
  2. 了解从文本中获取知识、识别同名实体、融合多来源知识的直观流程。
  3. 认识知识质量和来源记录对知识图谱可信性的意义。
  4. 为一个范围可控的小领域设计知识图谱的基本结构。
  5. 提交实体、关系与数据来源清单,作为课程项目的起点。

本讲强调一个原则:课程项目不追求“大而全”,而追求“小而清楚、真实可做、能够被验证”。


一、从一段文本到一个知识图谱项目

第二次课中,我们已经能够从一段短文本中识别实体、关系并写出三元组。现在需要进一步思考:如果文本变成几十篇课程通知、数百首诗词,或多个网站上的科普资料,如何系统地构建一个知识图谱?

以“课程知识图谱”为例,下面两件事并不相同:

从一段课程介绍中抽取几条三元组
                ≠
围绕课程领域构建一个可持续补充、查询和核验的小型知识图谱

后者需要先回答以下问题:

  • 图谱要服务什么任务?
  • 图谱的边界在哪里?
  • 需要记录哪些实体、关系和属性?
  • 数据从哪里来,是否可信?
  • 不同资料中的同一对象如何识别?
  • 发现错误、重复或冲突信息时如何处理?

这些问题共同构成知识图谱构建的基本流程。


二、选择一个范围可控的领域

知识图谱项目最常见的问题是范围过大。例如,“构建中国文学知识图谱”“构建医学知识图谱”“构建校园知识图谱”听起来很有价值,但课程内难以完成。

更适合大三学生的做法是缩小范围,先从一个明确的小领域开始。

1. 小领域应具备的条件

一个适合课程项目的小领域通常具有以下特点:

  • 对象明确:知道图谱主要描述什么;
  • 边界清楚:能够说明哪些内容包含、哪些不包含;
  • 资料可得:能找到公开、可靠的文本或表格;
  • 规模适中:能在课程内整理约 30–100 个实体和一定数量的关系;
  • 任务明确:可以提出若干可回答的问题;
  • 风险可控:不涉及敏感个人信息、隐私数据或未经授权的材料。

2. 可选小领域示例

大方向不建议直接做可行的小领域项目
教育全国高校课程知识图谱本专业一个年级的课程与先修关系图谱
文学中国古典诗词知识图谱20 首唐诗中的诗人、地点、意象与主题图谱
校园全校校园服务知识图谱一个学院的社团、活动和场地信息图谱
医疗科普常见疾病知识图谱某一种疾病的公开科普资料图谱,不提供诊疗建议
科研人工智能论文知识图谱一个具体主题下的 20 篇论文、作者和方法关系图谱

3. 写清项目边界

以“唐诗中的诗人、地点、意象与主题图谱”为例,可以这样写边界:

本项目选取 20 首唐诗作为语料,记录诗歌、诗人、地点、意象和主题之间的关系。项目不尝试覆盖全部唐诗,不处理复杂的格律分析,也不对诗歌含义作唯一解释。

清晰的边界能避免项目不断膨胀,也能让后续的质量评价具有明确对象。


三、知识图谱的基本结构:实体、关系、属性与 Schema

1. 实体

实体是领域中需要被识别和记录的对象。实体通常是具体的人、地点、事物、作品、课程或事件。

例如,在“校园社团活动图谱”中,实体可能包括:

社团、学生、活动、场地、学院、指导教师、时间

在“课程知识图谱”中,实体可能包括:

课程、教师、知识点、教材、作业、考试、专业

2. 实体类型

实体类型用于说明实体属于哪一类。

例如:

实体类型
认知智能中的知识构建研究课程
周老师教师
知识图谱知识主题
课程论文考核任务

类型可以帮助系统避免混淆。例如,“周老师”和“知识图谱”都可能出现在同一句话中,但一个是教师,另一个是课程主题,它们应使用不同关系连接。

3. 关系

关系用于表示实体之间的联系。

例如:

课程 —— 负责人 —— 教师
课程 —— 包含 —— 知识主题
学生 —— 参加 —— 活动
诗歌 —— 作者 —— 诗人
诗歌 —— 描写 —— 地点

关系名称应简洁、明确,并尽量保持一致。不要同时使用“作者”“创作人”“写作者”表示同一个关系,除非确有不同含义。

4. 属性

属性用于描述实体自身的特征,通常是文字、数字、日期或其他值。

例如:

实体属性属性值
认知智能中的知识构建研究总学时16
课程论文提交阶段学期末
某社团活动举办日期2026-10-15
静夜思体裁五言绝句

一个简单的判断方法是:若信息主要描述“对象自身是什么样”,可作为属性;若信息连接“另一个重要对象”,更适合作为关系。

例如,“课程的学分是 1”适合写成属性;“课程的负责人是周老师”中的“周老师”本身是重要对象,适合写成关系。

5. Schema

Schema 可以理解为知识图谱的“设计图”或“数据规范”。它规定:

  • 图谱中允许出现哪些实体类型;
  • 实体类型之间允许使用哪些关系;
  • 每类实体可以拥有哪些属性;
  • 某些关系的方向和含义是什么。

以课程领域为例:

实体类型:课程、教师、学生、知识主题、考核任务

关系类型:
课程 —— 负责人 —— 教师
课程 —— 面向 —— 学生
课程 —— 包含 —— 知识主题
课程 —— 要求完成 —— 考核任务

属性:
课程:名称、学分、总学时
教师:姓名、所属单位
考核任务:提交阶段、占比

没有 schema 的图谱容易出现名称混乱、关系随意和数据难以使用的问题。对课程项目而言,先完成一个简单 schema,再收集更多数据,通常比先大量摘录三元组更有效。


四、知识图谱构建的直观流程

一个小型知识图谱可以按照如下流程构建:

确定领域与任务
      ↓
设计 schema
      ↓
收集文本、表格或网页资料
      ↓
抽取实体、关系和属性
      ↓
实体链接与去重
      ↓
多来源知识融合
      ↓
质量检查、来源记录与持续补充

下面逐步解释。

1. 确定领域与任务

先说明图谱为谁服务、想回答什么问题。

例如:

构建“人工智能专业课程图谱”,帮助学生查询课程主题、先修关系和考核任务。

这句话已经包含了领域、使用对象和基本任务。

2. 设计 Schema

根据任务确定实体、关系和属性。对于课程项目,schema 不宜过于复杂,优先保留与任务直接相关的部分。

例如,要回答“学习知识图谱前要学习什么”,就需要课程、知识主题和先修关系;不一定要记录每间教室或每位学生的详细信息。

3. 收集资料

资料可以来自:

  • 官方网站、课程大纲、学校通知;
  • 公开出版物、权威百科或机构网页;
  • 经授权的访谈和问卷;
  • 课程提供的样例材料。

应优先使用权威、公开、可核对的资料。每一类资料都应记录来源链接、发布日期或访问日期。

4. 文本知识抽取

知识抽取是指从文本中找出实体、关系、属性或事件。

例如,原文为:

《认知智能中的知识构建研究》面向人工智能专业本科三年级学生开设,由周老师负责。

可以抽取:

实体:认知智能中的知识构建研究、人工智能专业本科三年级学生、周老师
关系:面向、负责人
三元组:
(认知智能中的知识构建研究,面向,人工智能专业本科三年级学生)
(认知智能中的知识构建研究,负责人,周老师)

在本课程前期,可先人工抽取;后续可以比较规则、工具或大语言模型辅助抽取的效果。

5. 实体链接与去重

同一个实体在不同资料中可能有不同名称。例如:

北京大学
北大
Peking University

这些名称可能指同一个学校。实体链接的目标是判断不同提及是否指向同一实体,并用统一名称或唯一编号记录。

对于小型课程项目,可以先采用简单规则:

  • 确定一个规范名称;
  • 将简称、别名记录在“别名”字段中;
  • 遇到无法判断的情况,标记为“待确认”,不要强行合并。

6. 知识融合

知识融合是将多个来源中的信息合并到同一图谱中。

例如,课程大纲记录“课程负责人为周老师”,课程网站也记录同样信息,可以合并为一条事实,并保留两个来源。

若两份资料发生冲突,例如一份资料说负责人为周老师,另一份资料说负责人为李老师,不应直接删除其中一个。应:

  1. 核对资料发布时间和权威性;
  2. 检查是否对应不同学期或不同班级;
  3. 记录版本、时间和来源;
  4. 无法确认时标记为冲突信息。

7. 质量检查与来源记录

完成图谱后,不应只关注三元组数量,还要检查知识质量。


五、知识质量与来源记录

1. 知识质量的基本维度

对初学者而言,可以从以下四个方面检查:

维度含义示例问题
准确性知识是否正确课程负责人是否与官方信息一致?
完整性需要的信息是否缺失每门课程是否都记录了基本主题?
一致性同一事实是否自相矛盾同一课程是否出现两个未经说明的学分?
可追溯性能否找到知识来源这条三元组来自哪篇文章或哪个网页?

2. 为什么要记录来源

没有来源的知识,即使暂时看起来正确,也难以核对、更新和解释。

建议为每条重要三元组至少记录:

字段示例
三元组(认知智能中的知识构建研究,负责人,周老师)
来源名称课程 README
来源链接或文件README.md
位置“课程简介”或具体段落
发布/访问日期2026-08-10
记录者小组成员姓名
备注待与当学期教学安排核对

对课程项目而言,不必一开始为每条数据建立复杂数据库;可以先使用电子表格记录这些字段。

3. 不确定信息如何处理

遇到不确定信息时,应避免“猜测后写入图谱”。可以采用以下标记:

确认:已由权威来源核对
待确认:资料不充分,尚未核对
冲突:不同来源给出不一致结论
过时:信息属于旧版本,仅用于历史记录

这种做法不仅提升图谱质量,也为后续研究“知识更新”“冲突消解”和“大模型事实核验”提供材料。


六、示例:设计一个“唐诗主题小型知识图谱”

1. 项目范围

选择 20 首唐诗,记录诗歌、诗人、地点、意象和主题之间的关系,用于回答“某位诗人写过哪些主题的诗”“哪些诗歌描写了某个地点”等问题。

2. Schema 草案

实体类型示例
诗歌《静夜思》
诗人李白
地点长安
意象月亮
主题思乡
关系类型头实体类型尾实体类型示例
作者诗歌诗人《静夜思》—作者→李白
描写诗歌地点某诗—描写→长安
包含意象诗歌意象《静夜思》—包含意象→月亮
表达主题诗歌主题《静夜思》—表达主题→思乡

3. 数据来源

  • 诗歌原文:公开、权威的古诗文数据库;
  • 作者信息:权威百科或教材资料;
  • 主题与意象:教材、注释资料或小组明确的标注规则。

注意:诗歌主题常具有解释空间。项目应记录“主题判断依据”或标注来源,而不是把某种解释当作唯一事实。


七、课堂练习:确定你的课程项目

从以下方向中选择一个,也可以提出同等规模的其他小领域:

  • 某门课程的课程内容与学习任务图谱;
  • 20 首古典诗词中的人物、地点、意象与主题图谱;
  • 一个学院的社团、活动和场地信息图谱;
  • 某一种疾病的公开科普资料图谱;
  • 某个 AI 主题下 20 篇论文的作者、方法和任务图谱。

小组讨论并完成:

  1. 项目名称;
  2. 项目希望回答的 2–3 个问题;
  3. 项目范围与不包含的内容;
  4. 至少 5 类实体;
  5. 至少 5 类关系;
  6. 可能使用的 2–3 个数据来源;
  7. 一个可能出现的质量问题。

八、课后任务:小型知识图谱项目清单

以小组为单位,提交一份“小型知识图谱项目清单”。建议使用表格完成,内容包括:

1. 项目说明

  • 项目名称;
  • 项目领域与范围;
  • 目标用户或使用场景;
  • 希望回答的 2–3 个问题。

2. 实体清单

至少列出 5 类实体。

实体类型示例实体说明
课程认知智能中的知识构建研究教学资源
教师周老师课程负责人
知识主题知识图谱课程内容

3. 关系清单

至少列出 5 类关系。

| 关系名称 | 头实体类型 | 尾实体类型 | 示例 | | --- | --- | --- | | 负责人 | 课程 | 教师 | 课程—负责人→周老师 | | 包含 | 课程 | 知识主题 | 课程—包含→知识图谱 |

4. 数据来源清单

至少列出 2 个来源,并说明可靠性与使用方式。

来源名称类型用于获取什么知识可靠性说明
课程 README课程文档课程主题、教学方式课程官方材料
课程网站网页通知与更新信息需记录访问日期

5. 初步质量规则

写出至少 3 条规则。例如:

  • 每条重要三元组必须记录来源;
  • 同一实体使用统一名称,并记录常见别名;
  • 不确定或冲突的信息必须标记,不能直接视为确认事实;
  • 使用新版且来源更权威的资料优先更新旧资料。

本任务的目标是完成一个可以执行的图谱设计,而不是立即收集大量数据。下一步将基于这份清单开展文本知识抽取和图谱填充。


九、本讲小结

本讲的核心观点是:

  • 知识图谱构建应从范围明确、数据可得的小领域开始;
  • 实体、关系、属性和 schema 共同决定知识图谱的结构;
  • 构建流程包括领域确定、schema 设计、数据收集、知识抽取、实体链接、知识融合和质量检查;
  • 实体链接用于识别不同名称是否指向同一对象,知识融合用于整合多来源信息;
  • 准确性、完整性、一致性和可追溯性是知识质量的基础;
  • 记录来源、时间和不确定性,是构建可信知识图谱的重要习惯。

下一讲将讨论如何阅读知识构建相关论文,并从已有工作中发现可继续研究的问题。

上次编辑于:
贡献者: zlzhou