欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

知识图谱多数据源融合

程序员文章站 2022-03-04 13:17:15
...

知识图谱的实体往往面临数据融合的问题,因为知识图谱的数据源可能有多个,在不同数据源有对同一实体的不同表达,即使在同一个数据源里也可能存在这种情况,需要通过一定手段将其合并。

  知识图谱的数据融合过程通常如下:

知识图谱多数据源融合
1,数据预处理:输入的原始数据源往往存在脏数据和格式不一致数据,需要进行人工进行规整,这一步过程是实际工程中比较费时但是作用很大的工作,没有好的数据处理后续的算法效果往往也不会好。

2,数据分组:我们的目标是找出所有相同的实体,如果不进行数据分组,我们的计算量会是两两比较,对于海量数据的时候计算量过于庞大,所以要事先进行分组。分组的效果既要保证能够比较均衡地分而治之,又要尽量保证不要漏分。

常见的方法包括通过数据本身的类目信息进行分组,比如在融合商品数据的时候可以根据商品的类目信息进行分组;或者根据数据的关键信息,比如在融合人物数据的时候可以根据其出生日期进行分组。

3,属性相似度:经过上一步的分组,每个分组下的实体是有可能是相同的实体的集合,接下来需要对实体的属性进行计算相似度,有了实体各个属性的相似度才容易进行下一步的实体相似度计算。

常见的方法包括:

3.1)纯字符串的:计算编辑距离,levenshtein distance,计算字符串A通过插入/删除/替换操作变换到字符串B的距离;

3.2)集合类型:计算Jaccard相似度,计算集合交集个数/集合并集个数;

3.3)文档类型:通过tf-idf找出每篇文档的关键词,再通过余弦相似度计算关键词集合的相似度。

4,实体相似度:

有了实体各个属性的相似度,可以来计算实体相似度了。常见的方法分为两种:

4.1)回归:通过实体各个属性的相似度,直接判断实体的相似度。可以直接对各个属性相似度拍权重,也可以通过逻辑回归的方式计算出各个属性相似度的权重。

4.2)聚类:直接通过聚类操作,计算出相似实体。可以进行层次聚类,相关性聚类,Canopy+K-means聚类等。

链接:https://www.jianshu.com/p/2b8f15a4eac7