3. 知识图谱核心技术栈:实体识别、关系抽取、知识融合、知识推理
好,咱们直接切入正题。知识图谱的构建,说白了就是四步走:找实体、抽关系、做融合、搞推理。这四步环环相扣,少一步都不行。我当年刚入行时,总觉得把实体和关系抽出来就完事了,结果做出来的图谱乱七八糟,根本没法用。后来才明白,后面的融合和推理才是真正的灵魂。
3.1 实体识别:从文本中挖出“主角”
实体识别,也叫命名实体识别(NER)。它的任务很简单——从一段话里把人名、地名、机构名、时间、金额这些关键信息拎出来。
举个例子,输入“苹果公司2023年营收3832亿美元”,我们要能识别出:
- 苹果公司 → 机构名
- 2023年 → 时间
- 3832亿美元 → 金额
我个人习惯用BiLSTM-CRF或者BERT+CRF来做。为什么加CRF?因为CRF能学习标签之间的转移关系,比如“B-ORG”后面不能直接跟“I-PER”,这种约束CRF天然就能处理。
核心要点:实体识别不是简单的分类问题,它是个序列标注问题。每个字都要打上标签,比如B-PER(人名开始)、I-PER(人名中间)、O(非实体)。
我在项目中遇到过一个大坑:实体嵌套。比如“北京大学人民医院”,里面既有“北京大学”(机构),又有“人民医院”(机构)。传统的序列标注模型很难同时识别出这两层。后来我改用指针网络才勉强解决。
避坑指南:我曾经在金融公告数据上做实体识别,发现“中国银行”经常被拆成“中国”和“银行”两个实体。后来加了词典匹配做后处理,准确率直接提升了8%。
3.2 关系抽取:把实体之间的“联系”找出来
实体找到了,但它们之间是什么关系?这就是关系抽取要干的事。
比如句子“马云创立了阿里巴巴”,我们要抽取出:
- 实体1:马云
- 关系:创立
- 实体2:阿里巴巴
关系抽取有两种主流做法:
- 流水线方法:先做实体识别,再做关系分类。简单,但容易传播错误。
- 联合抽取方法:实体和关系一起做。我推荐用CasRel或者TPLinker,效果更好。
你想想看,如果实体识别把“阿里巴巴”漏了,那关系抽取肯定也白搭。所以联合抽取才是更靠谱的路子。
我的经验:在投资领域,关系抽取最难处理的是长距离依赖。比如“三年前,这家公司收购了另一家做芯片的企业,如今股价翻了五倍。”——实体之间隔了十几个字,普通模型很难捕捉。我建议用注意力机制或者图神经网络来建模这种长距离关系。
3.3 知识融合:把碎片拼成完整的拼图
实体和关系都抽出来了,但问题来了——同一个实体可能有多种叫法。比如“苹果公司”、“Apple Inc.”、“苹果”其实指的是同一个东西。知识融合就是干这个的:消除歧义、合并同义。
知识融合的核心步骤:
- 实体对齐:判断两个实体是否指向同一个真实世界对象。
- 属性融合:把不同来源的属性合并到一起。
- 冲突消解:当不同来源的信息矛盾时,决定信哪个。
举个例子,我从财报里抽到“营收100亿”,从新闻里抽到“营收10 billion”。融合时就要判断:100亿人民币和10亿美元是不是同一个数?汇率怎么算?
注意:我曾经在融合两个金融知识图谱时,发现同一个公司的“成立日期”差了整整一年。后来查证,一个是工商注册日期,一个是上市日期。这种语义冲突必须靠领域知识来解决,不能简单粗暴地覆盖。
常用的融合方法有:
- 基于规则:比如编辑距离、Jaccard相似度。
- 基于嵌入:把实体映射到向量空间,计算余弦相似度。
- 基于图:利用实体之间的邻居关系做对齐。
3.4 知识推理:从已知推未知
知识推理是知识图谱的“高阶玩法”。说白了,就是利用已有的知识,推导出新的知识。
比如图谱里有:
- “A公司” 投资了 “B公司”
- “B公司” 的 CEO 是 “张三”
推理可以得出:“A公司” 可能认识 “张三”。这在投资决策中非常有用——你可以在二级市场找到潜在的合作方或竞争对手。
推理方法主要有三类:
| 方法 | 原理 | 适用场景 |
|---|---|---|
| 基于规则的推理 | 人工定义逻辑规则 | 领域明确、规则清晰 |
| 基于嵌入的推理 | TransE、RotatE等 | 大规模图谱、自动学习 |
| 基于图的推理 | GCN、GAT等 | 复杂关系、多跳推理 |
我个人最常用的是TransE。它的思想很简单:如果存在关系r,那么头实体h加上关系r应该等于尾实体t。即 h + r ≈ t。嗯,虽然简单,但在很多场景下效果出奇的好。
实战技巧:在投资图谱中,我经常用推理来发现隐性的供应链关系。比如A公司是B公司的股东,B公司是C公司的供应商,那么A和C之间可能存在间接的供应链关系。这种信息在量化选股中非常有价值。
3.5 本章知识体系总览
下面这张图,是我自己梳理的知识图谱核心技术栈。你看一眼就能明白这四步是怎么串起来的。
这张图把整个技术栈串起来了。从原始文本出发,经过实体识别、关系抽取,再到知识融合和推理,最终服务于投资决策。每一步都有坑,但也都有对应的解法。
总结一下:实体识别是基础,关系抽取是骨架,知识融合是打磨,知识推理是升华。四者缺一不可。我见过太多团队只做前两步,结果图谱建出来又乱又没用。记住:没有融合和推理的知识图谱,充其量只是个数据库。