基于本体和相似图的概念语义相似度计算

基于本体和相似图的概念语义相似度计算
基于本体和相似图的概念语义相似度计算

1.信息检索中的重要发明TF-IDF 1.1TF Term frequency即关键词词频,是指一篇文章中关键词出现的频率,比如在一篇M个词的文章中有N个该关键词,则 (公式1.1-1) 为该关键词在这篇文章中的词频。 1.2IDF Inverse document frequency指逆向文本频率,是用于衡量关键词权重的指数,由公式 (公式1.2-1) 计算而得,其中D为文章总数,Dw为关键词出现过的文章数。2.基于空间向量的余弦算法 2.1算法步骤 预处理→文本特征项选择→加权→生成向量空间模型后计算余弦。 2.2步骤简介 2.2.1预处理 预处理主要是进行中文分词和去停用词,分词的开源代码有:ICTCLAS。 然后按照停用词表中的词语将语料中对文本内容识别意义不大但出

现频率很高的词、符号、标点及乱码等去掉。如“这,的,和,会,为”等词几乎出现在任何一篇中文文本中,但是它们对这个文本所表达的意思几乎没有任何贡献。使用停用词列表来剔除停用词的过程很简单,就是一个查询过程:对每一个词条,看其是否位于停用词列表中,如果是则将其从词条串中删除。 图2.2.1-1中文文本相似度算法预处理流程 2.2.2文本特征项选择与加权 过滤掉常用副词、助词等频度高的词之后,根据剩下词的频度确定若干关键词。频度计算参照TF公式。 加权是针对每个关键词对文本特征的体现效果大小不同而设置的机制,权值计算参照IDF公式。 2.2.3向量空间模型VSM及余弦计算 向量空间模型的基本思想是把文档简化为以特征项(关键词)的权重为分量的N维向量表示。

这个模型假设词与词间不相关(这个前提造成这个模型无法进行语义相关的判断,向量空间模型的缺点在于关键词之间的线性无关的假说前提),用向量来表示文本,从而简化了文本中的关键词之间的复杂关系,文档用十分简单的向量表示,使得模型具备了可计算性。 在向量空间模型中,文本泛指各种机器可读的记录。 用D(Document)表示文本,特征项(Term,用t表示)指出现在文档D中且能够代表该文档内容的基本语言单位,主要是由词或者短语构成,文本可以用特征项集表示为D(T1,T2,…,Tn),其中Tk是特征项,要求满足1<=k<=N。 下面是向量空间模型(特指权值向量空间)的解释。 假设一篇文档中有a、b、c、d四个特征项,那么这篇文档就可以表示为 D(a,b,c,d) 对于其它要与之比较的文本,也将遵从这个特征项顺序。对含有n 个特征项的文本而言,通常会给每个特征项赋予一定的权重表示其重要程度,即 D=D(T1,W1;T2,W2;…,Tn,Wn) 简记为 D=D(W1,W2,…,Wn) 我们把它叫做文本D的权值向量表示,其中Wk是Tk的权重,

图像相似度计算主要用于对于两幅图像之间内容的相似程度进行打分,根据分数的高低来判断图像内容的相近程度。 可以用于计算机视觉中的检测跟踪中目标位置的获取,根据已有模板在图像中找到一个与之最接近的区域。然后一直跟着。已有的一些算法比如BlobTracking,Meanshift,Camshift,粒子滤波等等也都是需要这方面的理论去支撑。 还有一方面就是基于图像内容的图像检索,也就是通常说的以图检图。比如给你某一个人在海量的图像数据库中罗列出与之最匹配的一些图像,当然这项技术可能也会这样做,将图像抽象为几个特征值,比如Trace变换,图像哈希或者Sift特征向量等等,来根据数据库中存得这些特征匹配再返回相应的图像来提高效率。 下面就一些自己看到过的算法进行一些算法原理和效果上的介绍。 (1)直方图匹配。 比如有图像A和图像B,分别计算两幅图像的直方图,HistA,HistB,然后计算两个直方图的归一化相关系数(巴氏距离,直方图相交距离)等等。 这种思想是基于简单的数学上的向量之间的差异来进行图像相似程度的度量,这种方法是目前用的比较多的一种方法,第一,直方图能够很好的归一化,比如通常的256个bin条的。那么两幅分辨率不同的图像可以直接通过计算直方图来计算相似度很方便。而且计算量比较小。 这种方法的缺点: 1、直方图反映的是图像像素灰度值的概率分布,比如灰度值为200的像素有多少个,但是对于这些像素原来的位置在直方图中并没有体现,所以图像的骨架,也就是图像内部到底存在什么样的物体,形状是什么,每一块的灰度分布式什么样的这些在直方图信息中是被省略掉得。那么造成的一个问题就是,比如一个上黑下白的图像和上白下黑的图像其直方图分布是一模一样的,其相似度为100%。 2、两幅图像之间的距离度量,采用的是巴氏距离或者归一化相关系数,这种用分析数学向量的方法去分析图像本身就是一个很不好的办法。 3、就信息量的道理来说,采用一个数值来判断两幅图像的相似程度本身就是一个信息压缩的过程,那么两个256个元素的向量(假定直方图有256个bin条)的距离用一个数值表示那么肯定就会存在不准确性。 下面是一个基于直方图距离的图像相似度计算的Matlab Demo和实验结果. %计算图像直方图距离 %巴氏系数计算法 M=imread('1.jpg'); N=imread('2.jpg'); I=rgb2gray(M); J=rgb2gray(N); [Count1,x]=imhist(I); [Count2,x]=imhist(J); Sum1=sum(Count1);Sum2=sum(Count2); Sumup = sqrt(Count1.*Count2); SumDown = sqrt(Sum1*Sum2); Sumup = sum(Sumup); figure(1); subplot(2,2,1);imshow(I); subplot(2,2,2);imshow(J);

图像相似度计算 图像相似度计算主要用于对于两幅图像之间内容的相似程度进行打分,根据分数的高低来判断图像内容的相近程度。 可以用于计算机视觉中的检测跟踪中目标位置的获取,根据已有模板在图像中找到一个与之最接近的区域。然后一直跟着。已有的一些算法比如BlobTracking,Meanshift,Camshift,粒子滤波等等也都是需要这方面的理论去支撑。 还有一方面就是基于图像内容的图像检索,也就是通常说的以图检图。比如给你某一个人在海量的图像数据库中罗列出与之最匹配的一些图像,当然这项技术可能也会这样做,将图像抽象为几个特征值,比如Trace变换,图像哈希或者Sift特征向量等等,来根据数据库中存得这些特征匹配再返回相应的图像来提高效率。 下面就一些自己看到过的算法进行一些算法原理和效果上的介绍。 (1)直方图匹配。 比如有图像A和图像B,分别计算两幅图像的直方图,HistA,HistB,然后计算两个直方图的归一化相关系数(巴氏距离,直方图相交距离)等等。 这种思想是基于简单的数学上的向量之间的差异来进行图像相似程度的度量,这种方法是目前用的比较多的一种方法,第一,直方图能够很好的归一化,比如通常的256个bin条的。那么两幅分辨率不同的图像可以直接通过计算直方图来计算相似度很方便。而且计算量比较小。 这种方法的缺点: 1、直方图反映的是图像像素灰度值的概率分布,比如灰度值为200的像素有多少个,但是对于这些像素原来的位置在直方图中并没有体现,所以图像的骨架,也就是图像内部到底存在什么样的物体,形状是什么,每一块的灰度分布式什么样的这些在直方图信息中是被省略掉得。那么造成的一个问题就是,比如一个上黑下白的图像和上白下黑的图像其直方图分布是一模一样的,其相似度为100%。 2、两幅图像之间的距离度量,采用的是巴氏距离或者归一化相关系数,这种用分析数学向量的方法去分析图像本身就是一个很不好的办法。 3、就信息量的道理来说,采用一个数值来判断两幅图像的相似程度本身就是一个信息压缩的过程,那么两个256个元素的向量(假定直方图有256个bin条)的距离用一个数值表示那么肯定就会存在不准确性。 下面是一个基于直方图距离的图像相似度计算的Matlab Demo和实验结果.

基于距离的计算方法 1. 欧氏距离(Euclidean Distance) 欧氏距离是最易于理解的一种距离计算方法,源自欧氏空间中两点间的距离公式。 (1)二维平面上两点a(x1,y1)与b(x2,y2)间的欧氏距离: (2)三维空间两点a(x1,y1,z1)与b(x2,y2,z2)间的欧氏距离: (3)两个n维向量a(x11,x12,…,x1n)与b(x21,x22,…,x2n)间的欧氏距离: 也可以用表示成向量运算的形式: (4)Matlab计算欧氏距离 Matlab计算距离主要使用pdist函数。若X是一个M×N的矩阵,则pdist(X)将X矩阵M行的每一行作为一个N维向量,然后计算这M个向量两两间的距离。例子:计算向量(0,0)、(1,0)、(0,2)两两间的欧式距离 X = [0 0 ; 1 0 ; 0 2] D = pdist(X,'euclidean') 结果: D = 1.0000 2.0000 2.2361 2. 曼哈顿距离(Manhattan Distance) 从名字就可以猜出这种距离的计算方法了。想象你在曼哈顿要从一个十字路口开车到另外一个十字路口,驾驶距离是两点间的直线距离吗?显然不是,除

非你能穿越大楼。实际驾驶距离就是这个“曼哈顿距离”。而这也是曼哈顿距离名称的来源,曼哈顿距离也称为城市街区距离(City Block distance)。 (1)二维平面两点a(x1,y1)与b(x2,y2)间的曼哈顿距离 (2)两个n维向量a(x11,x12,…,x1n)与b(x21,x22,…,x2n)间的曼哈顿距离 (3) Matlab计算曼哈顿距离 例子:计算向量(0,0)、(1,0)、(0,2)两两间的曼哈顿距离 X = [0 0 ; 1 0 ; 0 2] D = pdist(X, 'cityblock') 结果: D = 1 2 3 5. 标准化欧氏距离 (Standardized Euclidean distance ) (1)标准欧氏距离的定义 标准化欧氏距离是针对简单欧氏距离的缺点而作的一种改进方案。标准欧氏距离的思路:既然数据各维分量的分布不一样,好吧!那我先将各个分量都“标准化”到均值、方差相等吧。均值和方差标准化到多少呢?这里先复习点统计学知识吧,假设样本集X的均值(mean)为m,标准差(standard deviation)为s,那么X的“标准化变量”表示为: 而且标准化变量的数学期望为0,方差为1。因此样本集的标准化过程(standardization)用公式描述就是: 标准化后的值= ( 标准化前的值-分量的均值) /分量的标准差 经过简单的推导就可以得到两个n维向量a(x11,x12,…,x1n)与 b(x21,x22,…,x2n)间的标准化欧氏距离的公式: 如果将方差的倒数看成是一个权重,这个公式可以看成是一种加权欧氏距离(Weighted Euclidean distance)。

浅议语义相似度计算 摘要语义相似度研究的是两个词语的相似性,被广 泛应用于信息检索、信息提取、文本词义消歧、机器翻译等领域中。本文介绍几种主要的语义相似度计算方法,以供大 一^, 家参考。 关键词语义相似度词义相似度语义距离 、引言 自然语言的词语之间关系比较复杂,我们又时常要把这 种复杂关系进行比较,所以要将其转化为简单的数量关系,再进行比较。语音相似度计算正是这样的方法。 词语的语义相似度计算有3 种方法:基于知识体系的方 法、基于语料库的方法、基于网络的方法。基于知识体系的方法,大多以WordNet 作为基础。WordNet 是语义字典,它根据词条的意义将词语分组,每一个具有相同意义的字条组称为一个synset (同义词集合)。WordNet为每一个synset提 供了简短,概要的定义,并记录不同synset之间的语义关系。 它用概念之间的语义关系形成符合常识和语法的语义关系图。基于信息量的方法主要是通过词语上下文的信息,用统计的方法求解。基于网络的方法,主要是利用搜索引擎的搜索结果进行计算。 二、语义相似度概念

信息论中任何两个词语的相似度取决于它们的共性 Commonality )和个性( Differences )。公式如下: 其中,分子表示描述A,B 共性所需要的信息量;分母表 示完整地描述A,B 所需要的信息量。 刘群、李素建认为语义相似度就是两个词语在不同的上 文中可以互相替换使用而不改变文本的句法语义结构的程度。两个词语,如果在不同的上下文中可以互相替换且不改变文本的句法语义结构的可能性越大,二者的相似度就越高,否则相似度就越低。对于两个词语 W1,W2 如果记其相似度为Sim (W1 , W2),其词语距离为Dis (W1 , Wz),根 据刘群、李素建的公式: 其中a 是一个可变参数,含义是当相似度为0.5 时的词 语距离值。 相似度被定义为一个0到1 之间的实数,当两个词语完 全一样时,相似度为1 ;是完全不同的概念时,它们的相似度 接近于0。 三、语义相似度的计算方法常用计算方法有基于知识体系的计算,基 于大规模语料 库的计算,基于网络的计算。 一)根据分类体系计算词语语义距离的方法 这种方法也称为基于树的语义相似度计算方法,大体分 为两种:一是基于距离的语义相似性测度是基于信息内容

词语相似度算法的分析与改进 摘要:对现有的词语相似度算法进行分析,提出一种基于知网,面向语义、可扩展的词语相似度计算方法,通过对实验结果进行分析,所提出的词语语义相似度计算方法比以前的方法更好,在计算词语相似度时,准确率更高。 关键词:词语相似度算法;义原相似度计算;概念词的相似度计算;非概念词的相似度计算 在建立主观题评分模型时,要判断句子的相似度,计算句子的相似度时,首先要处理的就是词语的相似度计算工作。目前对词语的相似度计算人们已经做了大量的研究,提出了一些较有代表性的计算方法。主要包括以下几种: 1)基于字面信息的词语相似度计算 这种算法的核心内容是:中文词语的构成句子中,一般较核心的内容都放在句子的后面。句子后面的词语在句子中所起到的作用比靠前的词语大。因此在对句子进行分析时需要给后面的字或词赋予较高的权值。 假设a和b分别代表两个词语,按照此算法,词语之间的相似度计算公式可以表示为公式1。 使用字面信息作为相似度计算的算法较简单,实现起来也方便。但该算法准确率不高,尤其是对于语义相似的词语更是难于处理。2)基于词林的词语相似度计算 对于以同义词词林作为语义分类体系进行词语相似度计算的研

究,王斌和章成志都曾作了相关探讨[1]。其核心思想是使用两个词语的语义距离来表示词语间相似度。当处理对象是一个词组或短语时,首先将其切分为义类词,并将义类词在词林的树状结构中提取出相关的语义编码,并对两个词语的语义编码进行相似度计算。基于词林的词语相似度计算较好的解决了语义相似、词形不同的词语相似度计算,但由于语义词典的完备性问题,必然会存在部分不在语义词典中的词语而无法处理。 3)基于知网的词语相似度计算 知网以概念作为描述对象,从关系层次上揭示词语的概念含义,并建立了概念关系网络,包含词语属性以及属性间关系[2]。刘群、李素建从知网的关系描述出发,研究了同一个词义所具有的多个义原间的关系,并试图计算出这些义原在计算相似度时所起到的作用,并根据这种思想提出了使用知网的语义信息来计算词语相似度的算法。 该算法在计算概念词的相似度时较准确,但在计算概念词与非概念词,非概念词与非概念词的相似度时,准确率不高。 为克服这些问题,我们采用知网作为语义资源,结合信息论中的相关理论,提出了一种面向语义的、可扩展的、多策略混合的词语相似度计算模型。 1 义原相似度计算 词语的相似度计算,最终还是要计算各词语的义源相似度。在知网中,所有词语都包含义原信息,应用知网进行相似度计算时,第

基于《知网》的语义相似度计算 软件使用手册 1 功能简介 本软件是根据[刘群2002]一文中的原理编写的词汇语义相似度计算程序。 主要实现了以下功能: 1.1基于交互输入的义原查询、义原距离计算、义原相似度计算 1.2基于交互输入的词语义项查询、义项相似度计算、词语相似度计算; 1.3基于文件输入的词语义项查询、词语相似度计算; 1.4相似度计算中的参数调整。 2 安装说明 本软件包一共有四个文件: 《基于<知网>的词汇语义相似度计算》软件使用手册.doc:本使用手册 《基于<知网>的词汇语义相似度计算》论文.pdf:本软件所依据的论文,采用pdf 格式,用Acrobat Reader阅读时需要安装简体中文支持包。 自然语言处理开放资源许可证.doc:本软件包的授权许可证 WordSimilarity.zip:程序文件 软件安装时,将文件WordSimilarity.zip文件解压缩一个目录下即可,解压缩后有以下几个文件: WordSimilarity.exe:可执行程序; Glossary.dat:《知网》数据文件 Semdict.dat:《知网》数据文件 Whole.dat:《知网》数据文件 必须确保《知网》数据文件在程序执行时的当前目录下。 3 界面说明 软件使用简单的对话框界面,如下所示:

4 功能说明 4.1义原操作 4.1.1 义原查询 1.首先在“输入1”框中输入义原名称; 2.点击“察看义原1”按钮; 3.在“义项1”框中将依次显示出该义原及其所有上位义原的编号、中文、英文;类似的方法可以查询“输入2”框中的义原; 4.1.2 义原距离计算 1.首先在“输入1”和“输入2”框中输入两个义原; 2.点击“计算义原距离”按钮; 3.在“输出”框中显示两个义原的距离;

基于《知网》的词汇语义相似度计算1 刘群??李素建? {liuqun,lisujian}@https://www.360docs.net/doc/e518368807.html, ?中国科学院计算技术研究所 ?北京大学计算语言学研究所 摘要: 《知网》是一部比较详尽的语义知识词典。在基于实例的机器翻译中,词语相似度计算是一个重要的环节。不过,由于《知网》中对于一个词的语义采用的是一种多维的知识表示形式,这给词语相似度的计算带来了麻烦。这一点与WordNet和《同义词词林》不同。在WordNet和《同义词词林》中,所有同类的语义项(WordNet的synset或《同义词词林》的词群)构成一个树状结构,要计算语义项之间的距离,只要计算树状结构中相应结点的距离即可。而在《知网》中词语相似度的计算存在以下问题: 1.每一个词的语义描述由多个义原组成,例如“暗箱”一词的语义描述为:part|部件,%tool|用具,body|身,“写信”一词的语义描述为: #TakePicture|拍摄write|写,ContentProduct=letter|信件; 2.词语的语义描述中各个义原并不是平等的,它们之间有着复杂的关系,通过一种专门的知识描述语言来表示。 我们的工作主要包括: 1.研究《知网》中知识描述语言的语法,了解其描述一个词义所用的多个义原之间的关系,区分其在词语相似度计算中所起的作用; 2.提出利用《知网》进行词语相似度计算的算法; 3.通过实验验证该算法的有效性,并与其他算法进行比较。 关键词:《知网》词汇语义相似度计算自然语言处理 1 引言 在基于实例的机器翻译中,词语相似度的计算有着重要的作用。例如要翻译“张三写的小说”这个短语,通过语料库检索得到译例: 1)李四写的小说/the novel written by Li Si 2)去年写的小说/the novel written last year 通过相似度计算我们发现,“张三”和“李四”都是具体的人,语义上非常相似,而“去年”的语义是时间,和“张三”相似度较低,因此我们选用“李四写的小说”这个实例进行类比翻译,就可以得到正确的译文: the novel written by Zhang San 1本项研究受国家重点基础研究计划(973)支持,项目编号是G1998030507-4和G1998030510。

词语相似度计算方法分析 崔韬世麦范金 桂林理工大学广西 541004 摘要:词语相似度计算是自然语言处理、智能检索、文档聚类、文档分类、自动应答、词义排歧和机器翻译等很多领域的基础研究课题。词语相似度计算在理论研究和实际应用中具有重要意义。本文对词语相似度进行总结,分别阐述了基于大规模语料库的词语相似度计算方法和基于本体的词语相似度计算方法,重点对后者进行详细分析。最后对两类方法进行简单对比,指出各自优缺点。 关键词:词语相似度;语料库;本体 0 引言 词语相似度计算研究的是用什么样的方法来计算或比较两个词语的相似性。词语相似度计算在自然语言处理、智能检索、文本聚类、文本分类、自动应答、词义排歧和机器翻译等领域都有广泛的应用,它是一个基础研究课题,正在为越来越多的研究人员所关注。笔者对词语相似度计算的应用背景、研究成果进行了归纳和总结,包括每种策略的基本思想、依赖的工具和主要的方法等,以供自然语言处理、智能检索、文本聚类、文本分类、数据挖掘、信息提取、自动应答、词义排歧和机器翻译等领域的研究人员参考和应用。词语相似度计算的应用主要有以下几点: (1) 在基于实例的机器翻译中,词语相似度主要用于衡量文本中词语的可替换程度。 (2) 在信息检索中,相似度更多的是反映文本与用户查询在意义上的符合程度。 (3) 在多文档文摘系统中,相似度可以反映出局部主题信息的拟合程度。 (4) 在自动应答系统领域,相似度的计算主要体现在计算用户问句和领域文本内容的相似度上。 (5) 在文本分类研究中,相似度可以反映文本与给定的分类体系中某类别的相关程度。 (6) 相似度计算是文本聚类的基础,通过相似度计算,把文档集合按照文档间的相似度大小分成更小的文本簇。1 基于语料库的词语相似度计算方法 基于统计方法计算词语相似度通常是利用词语的相关性来计算词语的相似度。其理论假设凡是语义相近的词,它们的上下文也应该相似。因此统计的方法对于两个词的相似度算建立在计算它们的相关词向量相似度基础上。首先要选择一组特征词,然后计算这一组特征词与每一个词的相关性(一般用这组词在实际的大规模语料中在该词的上下文中出现的频率来度量),于是,对于每一个词都可以得到一个相关性的特征词向量,然后计算这些向量之间的相似度,一般用向量夹角余弦的计算结果作为这两个词的相似度。 Lee利用相关熵,Brown采用平均互信息来计算词语之间的相似度。李涓子(1999)利用这种思想来实现语义的自动排歧;鲁松(2001)研究了如何利用词语的相关性来计算词语的相似度。PBrownetc采用平均互信息来计算词语之间的相似度。基于统计的定量分析方法能够对词汇间的语义相似性进行比较精确和有效的度量。基于大规模语料库进行的获取受制于所采用的语料库,难以避免数据稀疏问题,由于汉语的一词多义现象,统计的方法得到的结果中含有的噪声是相当大的,常常会出现明显的错误。 2 基于本体库的词语相似度计算方法 2.1 常用本体库 关于Ontology的定义有许多,目前获得较多认同的是R.Studer的解释:“Ontology是对概念体系的明确的、形式

导语 在NLP领域,语义相似度的计算一直是个难题:搜索场景下query和Doc的语义相似度、feeds场景下Doc和Doc的语义相似度、机器翻译场景下A句子和B句子的语义相似度等等。本文通过介绍DSSM、CNN-DSSM、LSTM-DSSM 等深度学习模型在计算语义相似度上的应用,希望给读者带来帮助。 0. 提纲 1. 背景 2. DSSM 3. CNN-DSSM 4. LSTM-DSSM 5. 后记 6. 引用 1. 背景 以搜索引擎和搜索广告为例,最重要的也最难解决的问题是语义相似度,这里主要体现在两个方面:召回和排序。

在召回时,传统的文本相似性如BM25,无法有效发现语义类query-Doc 结果对,如"从北京到上海的机票"与"携程网"的相似性、"快递软件"与"菜鸟裹裹"的相似性。 在排序时,一些细微的语言变化往往带来巨大的语义变化,如"小宝宝生病怎么办"和"狗宝宝生病怎么办"、"深度学习"和"学习深度"。 DSSM(Deep Structured Semantic Models)为计算语义相似度提供了一种思路。 本文的最后,笔者结合自身业务,对DSSM 的使用场景做了一些总结,不是所有的业务都适合用DSSM。 2. DSSM DSSM [1](Deep Structured Semantic Models)的原理很简单,通过搜索引擎里Query 和Title 的海量的点击曝光日志,用DNN 把Query 和Title 表达为低纬语义向量,并通过cosine 距离来计算两个语义向量的距离,最终训练出语义相似度模型。该模型既可以用来预测两个句子的语义相似度,又可以获得某句子的低纬语义向量表达。 DSSM 从下往上可以分为三层结构:输入层、表示层、匹配层

2012.12 52 本体相似度计算方法研究 张路 长江大学工程技术学院 湖北 434020 摘要:MD3模型是一种系统的跨本体概念间相似度的计算方法,这种方法无需建立一个集成的共享本体。本文在MD3 模型的基础上,充分利用本体对概念的描述信息,重点讨论了跨本体概念间非层次关系相似度的计算,把MD3 模型扩展到 EMD3 模型,使得概念间相似度的计算理论上更全面、更精确。 关键词:本体;元数据模型;语义相似度;MD3模型 0 引言 本体映射算法以两个本体作为输入,然后为这两个本体的各个元素(概念、属性或者关系) 建立相应的语义关系。相似性提取是本体映射的一个重要步骤,它主要是进行概念相似度的计算,提高语义相似度计算精度成为提高语义信息检索质量的关键之一。语义相似度一般是指计算本体概念间的相似度,多数方法所考虑的概念是基于一个本体的,跨本体 概念间的方法比较少。MD3模型是一种典型的计算跨本体概念间相似度的方法。 1 MD3模型 Triple Matching-Distance Model(MD3)模型是一种跨本体概念间相似度计算框架。计算实体类a 和b 之间的相似度通过计算同义词集、特征属性和语义邻居之间的加权和,公式如下: Sim(a,b)=wS synsets (a,b)+uS features (a, b)+vS neighborhoods (a,b) 其中w, u, v 表示了各组成部分的重要性。特征属性细化为组成部分、功能以及其他属性。概念a 和b 的语义邻居及其特征属性(即概念的部分、功能及其他属性)也通过同义词集合描述,每一个相似度的计算都通过Tversky 公式: (,)(,)(1(,))A B S a b A B a b A B a b B A αα=+-+-- 其中A, B 分别表示概念a 和b 的描述集合,A-B 表示属于A 但不属于B 的术语集(B-A 相反)。参数(,)a b α由概念a 和b 和在各自层次结构中的深度确定。 2 EMD3模型 MD3模型的不足在于没有考虑对象实例对概念的影响,同 时其语义邻居只考虑语义关系中层次之间的相似度,没有考虑非层次之间的相似度。本文在MD3模型的基础上,参考了其概念名称相似度、特征属性,对本体的结构以及概念描述两方面做了扩充,重点讨论了跨本体概念间非层次关系的相似度的比较和实例对概念相似度的影响,把MD3模型扩展到Extension of Triple Mapping Distance model (EMD3)模型。 2.1 概念属性的相似度 属性有属性名称、属性数据类型、属性实例数据等要素,因此判断两个属性是否相似主要从这三个要素来考虑。属性名称、属性类型本身是文本类型,是字符串,因此可以采用字符串相似度计算方法进行判定。例如用Humming distance 来比较两字符串。设两字符串s 和t ,则它们之间的相似度可由下式给出: min(,) 1 (,)1[( ())]/max(,)s t i Sim s t f i s t s t ==-+-∑ 其中:若s[i]=t[i],则f(i)=0;否则f(i)=1。由于每个概念的实例对该概念的每个属性都分配了一个相应的值,对于其他类型的数据,可以采用下面介绍的方法进行计算。 设概念A 的属性为a i ,概念B 的属性为b j ,两个属性之间的相似度的计算公式为: Sim(a i ,b j )= w 1s 1(a i ,b j )+ w 2s 2(a i ,b j )+ w 3s 3(a i ,b j ) 其中w i 是权重,代表属性名称、数据类型、属性实例数据对属性相似度计算的重要程度,且和为1。设概念A,B 之间总共计算出m 个sim(a i ,b j ),并设置相应的权值k l ,则概念之间基于属性的相似度为: 1 1 (,)/(,)m m l i j l l l k Sim a b k Sim A B ==∑∑ =

语义相似度的计算方法研究 信息与计算科学余牛指导教师:冉延平 摘要语义相似度计算在信息检索、信息抽取、文本分类、词义排歧、基于实例的机器翻译等很多领域中都有广泛的应用.特别是近几十年来随着Internet技术的高速发展,语义相似度计算成为自然语言处理和信息检索研究的重要组成部分.本文介绍了几种典型的语义相似度的计算方法,总结了语义相似度计算的两类策略,其中重点介绍了一种基于树状结构中语义词典Hownet的语义相似度计算方法,最后对两类主要策略进行了简单的比较.关键词语义相似度;语义距离;知网;语料库 The Reseach of Computing Methods about Semantic Similarity YU Niu (Department of Mathematics and Statistics,Tianshui Normal University , 741000) Abstract Semantic similarity is broadly used in many applications such as information retrieval, information extraction, text classification, word sense disambiguation, example-based machine translation and so on.Especially with the rapid development of Internet technology in recent decades, Calculation of semantic similarity has always been an important part of natural language processing and information retrieval research .This paper introduces several main methods of calculating semantic similarity , then two strategies of semantic similarity measurement are summarized, and we focuse on the Hownet based on the stucture of tree and use them to calculate the semantic similarity ,and finally the two strategies are easily compared . Key words Semantic similarity, Semantic distance,Hownet, Corpus

相似度计算方面 Jaccard相似度:集合之间的Jaccard相似度等于交集大小与并集大小的比例。适合的应用包括文档文本相似度以及顾客购物习惯的相似度计算等。 Shingling:k-shingle是指文档中连续出现的任意k个字符。如果将文档表示成其k-shingle集合,那么就可以基于集合之间的Jaccard相似度来计算文档之间的文本相似度。有时,将shingle哈希成更短的位串非常有用,可以基于这些哈希值的集合来表示文档。 最小哈希:集合上的最小哈希函数基于全集上的排序转换来定义。给定任意一个排列转换,集合的最小哈希值为在排列转换次序下出现的第一个集合元素。 最小哈希签名:可以选出多个排列转换,然后在每个排列转换下计算集合的最小哈希值,这些最小哈希值序列构成集合的最小哈希签名。给定两个集合,产生相同哈希值的排列转换所占的期望比率正好等于集合之间的Jaccard相似度。 高效最小哈希:由于实际不可能产生随机的排列转换,因此通常会通过下列方法模拟一个排列转换:选择一个随机哈希函数,利用该函数对集合中所有的元素进行哈希操作,其中得到的最小值看成是集合的最小哈希值。 签名的局部敏感哈希:该技术可以允许我们避免计算所有集合对或其最小哈希签名对之间的相似度。给定集合的签名,我们可以将它们划分成行条,然后仅仅计算至少有一个行条相等的集合对之间的相似度。通过合理选择行条大小,可以消除不满足相似度阈值的大部分集合对之间的比较。 向量空间距离方面 欧式距离:n维空间下的欧式距离,是两个点在各维上差值的平方和的算数平方根。适合欧式空间的另一个距离是曼哈顿距离,指两个点各维度的差的绝对值之和。 Jaccard距离:1减去Jaccard相似度也是一个距离测度。 余弦距离:向量空间下两个向量的夹角大小。 编辑距离:该距离测度应用于字符串,指的是通过需要的插入、删除操作将一个字符串处理成另一个字符串的操作次数。编辑距离还可以通过两个字符串长度之和减去两者最长公共子序列长度的两倍来计算。 海明距离:应用于向量空间。两个向量之间的海明距离计算的是它们之间不相同的位置个数。 索引辅助方面 字符索引:如果将集合表示成字符串,且需要达到的相似度阈值接近1。那么就可以将每个字符串按照其头部的一小部分字母建立索引。需要索引的前缀的长度大概等于整个字符串的长度乘以给定的最大的Jaccard距离。 位置索引:我们不仅可以给出索引字符串前缀中的字符,也可以索引其在前缀中的位置。如果两个字符串共有的一个字符并不出现在双方的第一个位置,那么我们就知道要么存在某些前面的字

相关文档
最新文档