关系抽取(Relation Extraction)是信息抽取(Information Extraction)里的一项基础任务:给定一句话,找出其中两个实体,并判断它们之间是什么关系。
打个比方,你读到一个句子:“张伟在腾讯担任产品经理。”你的大脑会自动拆出两个关键对象——张伟和腾讯——然后给它们连一条线:任职关系。关系抽取就是让机器学会做这件事。它通常不是一步完成,而是先做命名实体识别(Named Entity Recognition, NER),把“张伟”“腾讯”这些实体圈出来,再看它们之间的词和上下文,判断关系类别。常见的关系类别包括:任职于、创始人、位于、拥有、父母、配偶、合作等。输出往往是一个三元组:(张伟,任职于,腾讯)。
关系抽取和相邻任务容易混淆。命名实体识别只负责“找东西”,关系抽取负责“连线条”。事件抽取(Event Extraction)则更复杂,它要抽出一个完整事件,包括时间、地点、多个参与者。比如“苹果公司发布了一款手机”,事件抽取要识别“发布”事件、发布者、产品、时间;关系抽取只关心两个实体间的关系。在知识图谱(Knowledge Graph)构建中,关系抽取是核心步骤——把一篇篇文本变成“实体—关系—实体”的网状知识。信息抽取是更大的筐,NER、关系抽取、事件抽取都装在里面。
| 任务 | 做什么 | 例子 |
|---|---|---|
| 命名实体识别 | 找出文本中的实体 | “乔布斯”是人,“苹果公司”是组织 |
| 关系抽取 | 判断两个实体之间是什么关系 | 乔布斯 — 创始人 — 苹果公司 |
| 事件抽取 | 抽出完整事件及角色 | “乔布斯创立苹果公司” → 创立事件 |
对从业者来说,关系抽取是搜索、问答、推荐、风控等系统的常见组件。比如搜索引擎右侧的知识面板、电商把商品评论里的“电池续航”和“手机”关联起来、招聘平台从简历里抽“某人—就职于—某公司”,都靠它。对普通人来说,它让机器从“认字”进阶到“读懂关系”,但别指望它百分之百准确:一句话里出现多个关系、代词指代、隐式表达,都会让它犯难。具体实现方案和最新进展,以各工具官方页面和论文为准。
