文章目录
1 前言
知识图谱( Knowledge Graph)的概念由谷歌2012年正式提出,旨在实现更智能的搜索引擎,并且于2013年以后开始在学术界和业界普及。目前,随着智能信息服务应用的不断发展,知识图谱已被广泛应用于智能搜索、智能问答、个性化推荐、情报分析、反欺诈等领域。另外,通过知识图谱能够将Web上的信息、数据以及链接关系聚集为知识,使信息资源更易于计算、理解以及评价,并且形成一套Web语义知识库。知识图谱以其强大的语义处理能力与开放互联能力,可为万维网上的知识互联奠定扎实的基础,使Web 3.0提出的“知识之网”愿景成为了可能。
2.知识图谱定义
知识图谱:是结构化的语义知识库,用于迅速描述物理世界中的概念及其相互关系。
知识图谱通过对错综复杂的文档的数据进行有效的加工、处理、整合,转化为简单、清晰的“实体,关系,实体”的三元组,最后聚合大量知识,从而实现知识的快速响应和推理。
知识图谱有自顶向下和自底向上两种构建方式。所谓自顶向下构建是借助百科类网站等结构化数据源,从高质量数据中提取本体和模式信息,加入到知识库中;所谓自底向上构建,则是借助一定的技术手段,从公开采集的数据中提取出资源模式,选择其中置信度较高的新模式,经人工审核之后,加入到知识库中。
看一张简单的知识图谱
如图所示,你可以看到,如果两个节点之间存在关系,他们就会被一条无向边连接在一起,那么这个节点,我们就称为实体(Entity),它们之间的这条边,我们就称为关系(Relationship)。
知识图谱的基本单位,便是“实体(Entity)-关系(Relationship)-实体(Entity)”构成的三元组,这也是知识图谱的核心。
- 实体:
指的是具有可区别性且独立存在的某种事物。实体是知识图谱中的最基本元素,不同的实体间存在不同的关系。如图中的“中国”、“北京”、“16410平方公里”等 - 关系:
关系是连接不同的实体,指代实体之间的联系。通过关系节点把知识图谱中的节点连接起来,形成一张大图。如图中的“人口”、“首都”、“面积”等
3 应用案例
公安情报分析
通过融合企业和个人银行资金交易明细、通话、出行、住宿、工商、税务等信息构建初步的 “ 资金账户-人-公司”关联知识图谱。同时从案件描述、笔录等非结构化文本中抽取人 ( 受害人、嫌疑人、报案人)、事、物、组织、卡号、时间、地点等信息,链接并补充到原有的知识图谱中形成一个完整的证据链。辅助公安刑侦、经侦、银行进行案件线索侦查和挖掘同伙。比如银行和公安经侦监控资金账户,当有一段时间内有大量资金流动并集中到某个账户的时候很可能是非法集资,系统触发预警。
反欺诈情报分析
通过融合来自不同数据源的信息构成知识图谱,同时引入领域专家建立业务专家规则。我们通过数据不一致性检测,利用绘制出的知识图谱可以识别潜在的欺诈风险。比如借款人张 xx 和借款人吴 x 填写信息为同事,但是两个人填写的公司名却不一样 , 以及同一个电话号码属于两个借款人,这些不一致性很可能有欺诈行为。
4 数据类型和存储方式
知识图谱的原始数据类型一般来说有三类(也是互联网上的三类原始数据):
- 结构化数据(Structed Data):如关系数据库
- 半结构化数据(Semi-Structed Data):如XML、JSON、百科
- 非结构化数据(UnStructed Data):如图片、音频、视频、文本
如何存储上面这三类数据类型呢?一般有两种选择:
- 通过RDF(资源描述框架)这样的规范存储格式来进行存储
- 使用图数据库来进行存储,常用的有Neo4j等。
RDF结构:
Neo4j结构:
在知识图谱方面,图数据库比关系数据库灵活的多。
在数据少的时候,关系数据库也没有问题,效率也不低。但是随着知识图谱变的复杂,图数据库的优势会明显增加。当涉及到2,3度的关联查询,基于图数据库的效率会比关系数据库的效率高出几千倍甚至几百万倍。
5 知识图谱整体架构
知识图谱在架构上分,