实体排序论文-2
知识图谱中实体相似度计算研究
知识图谱
本质是一种语义网络,结点代表实体或概念,边代表实体或概念间的各种语义关系.一个含有大量实体的知识库,如果构建得当,实体信息表示得当,可以很方便的供我们分析处理.
相似实体
对于实体间关系的研究,目前较多的集中在相似性的度量.判断实体之间的相似度首先要理解实体的语义信息,传统的字符串匹配不可行,例如让你从刘德华和马德华和张学友中选两个相似度较高的,你肯定会说是刘德华和张学友,尽管从字符串匹配的角度看,刘德华和马德华匹配度更高.
在数据结构化存储的知识库中,实体属性可以作为相似度判断的主要依据.而如何度量属性上的相似度是解决问题的关键.文本型属性的相似度计算是更研究重点.
本文贡献
- 提出知识图谱中实体相似度的通用方法,可以处理各种类型的属性值,包括数值型,列表型,文本型;
- 文本型数据的相似度计算中使用了语义模型,增加了实体在语义上的相似度;
- 实体的相似度计算中,使用了集成学习的方法,提高分类的正确率;
相关工作
- 相似实体推荐在诸多领域得到广泛应用.如电商和搜索引擎中的推荐系统;医疗领域可以评注病人之间的相似度,辅助医生决策.
- 对于文本相似度计算,有基于统计的方法和基于语义分析的方法.基于统计的方法通常采用VSM进行文本表示,将文本表示为特征词集合,根据词频提取关键特征词,计算在关键特征词向量空间上的相似度,来代表文本相似度.基于语义分析的方法,考虑了词语间的语义关系,即近义词.
算法设计
假设:
- 不同类别实体对相似度为0;
- 实体与自身相似度为4;
- 实体对相似度满足对称性,即实体1和实体2的相似度等于实体2和实体1的相似度;
数据预处理
剔除不满足上述假设的数据,占比0.9%;
列表型数据中属性表达不一致的进行归一化,例如普通话,中文,汉语,简体中文等归为汉语;
特征生成
对于不同类型的属性值,采用不同的计算方法:
- 对于数值型的属性:
$$
D(d_i,d_j)=\frac{|d_j-d_i|}{Max(d_n)-Min(d_n)}
$$
D的值域在[0,1],di和dj差值越大D越大,表示它们之间的相似度越小. - 对于列表型的属性,采用Jaccard计算相似度:
$$
Jaccard(A,B)=\frac{|A\cap B|}{|A\cup B|}
$$
Jaccard的值域在[0,1],越大相似度越高. - 对于文本型的属性,首先进行分词,计算得到TF-IDF向量.使用余弦相似度衡量相似性:
$$
CosSim=\frac{\sum_{i=1}^n(A_i*B_i)}{\sqrt{\sum_{i=1}^N(A_i)^2}*\sqrt{\sum_{i=1}^N(B_i)^2}}
$$
引入LDA得到降维了的主题模型向量,使用余弦相似度和Hellinger距离衡量向量间的相似性:
$$
H(P,Q)=\frac1{\sqrt2}\sqrt{\sum_{i=1}^{k}(\sqrt{p_i}-\sqrt{q_i})^2}
$$
模型选择
提到了机器学习中涉及到的一些基本方法.
算法总结
主要是2个模块:特征生成和分类器训练
数据约束:不同类别下的实体,属性会有不同,维度也有差异;同类别下的实体特征维度相同;
需要对不同类别的实体训练不同的分类器;
实验结果
引入集成学习效果并不明显,但是比单一分类效果好.
TODO
特征之间加区分度.