大规模句子相似度计算方法

大规模句子相似度计算方法
大规模句子相似度计算方法

大规模句子相似度计算方法*

黄河燕1陈肇雄1张孝飞1张克亮1,2

(1中国科学院计算机语言信息工程研究中心北京100083

2 南京理工大学南京210094)

Email: heyan.huang@https://www.360docs.net/doc/8e4695954.html, xiaofei_ustc@https://www.360docs.net/doc/8e4695954.html,

摘要:如何根据源语言文本从大规模语料库中找出其最相近的翻译实例,即句子相似度计算,是基于实例翻译方法的关键问题之一。本文提出一种多层次句子相似度计算方法:首先基于句子的词表层特征和信息熵从大规模语料库中选择出少量候选实例,然后针对这些候选实例进行泛化匹配,从而计算出相似句子。在多策略机器翻译系统IHSMTS中的实验表明,当语料规模为20万英汉句对时,系统提取相似句子的召回率达96%,准确率达90%,充分说明了本文算法的有效性。

关键词:句子相似度;基于实例的机器翻译;多策略机器翻译;泛化匹配

中图法分类号:TP391

Approach of Large-Scale Sentence Similarity Computation

HUANG He-yan CHEN Zhao-xiong ZHANG Xiao-fei

(Research Center of Computer & Language Information Engineering, CAS Beijing 100083)

Email: heyan.huang@https://www.360docs.net/doc/8e4695954.html, xiaofei_ustc@https://www.360docs.net/doc/8e4695954.html,

Abstract: The retrieval of the similar translation examples corresponding to the SL sentence from the large-scale corpora, or the computation of sentence similarity, is one of the key problems of EBMT. A new multi-layer sentence similarity computation approach is proposed in this paper. First, a few candidate translation examples are selected form a large-scale corpus on the basis of the surface features and entropies of the given words. Second, the degree of generalization match between the input sentence and each of those candidate translation examples is computed respectively. Finally, the sentence similarity is computed according to the outcomes of the previous two steps. Experimental results from tests on IHSMTS show that this approach has a recall rate of 96% and a precision rate of 90% when applied to a corpus of 200,000 English-Chinese sentence pairs.

Key words: sentence similarity; example-based machine translation; hybrid-strategy machine translation; generalization matching

1 引言

基于实例的机器翻译EBMT(Example-based machine translation)的基本思路是:预先

*基金项目:国家自然科学基金资助项目(60502048,60272088);国家863计划基金资助项目(2002AA117010-02)。

作者简介:黄河燕(1963-),女,研究员,博士生导师,主要研究方向为自然语言处理与机器翻译、大型智能应用系统;陈肇雄(1961-),男,研究员,博士生导师,主要研究方向为自然语言处理、大型智能应用系统;张孝飞(1970-),男,副研究员,博士,主要研究方向为自然语言处理、机器翻译、信息检索。张克亮(1964-),男,副教授,博士后,主要研究方向为计算语言学、机器翻译。

构造由双语对照的翻译单元对组成的语料库,然后翻译过程选择一个搜索和匹配算法,在语料库中寻找最优匹配单元对,最后根据例句的译文构造出当前所翻译单元的译文[1]。如何根据源语言文本找出其最相近的翻译实例,是基于实例翻译方法的关键问题之一。尤其是实用的EBMT系统所需要的翻译实例库都非常大,一般在百万级乃至千万级双语句对以上[2]。因此,如何从这么大的一个语料库库中高效地计算出相似的翻译实例,提供给后面的双语词对齐、类比翻译处理等模块,是影响EBMT系统翻译能否成功的关键因素之一。因为得不到有效的相似实例,其结果只有一个:导致EBMT翻译失败(或生成的译文质量很差)。

目前计算句子相似度的方法主要有:基于N元模型的方法[3, 4]和基于编辑距离的方法[5]等,并且在这些方面的研究也取得了许多进展。但是,这些方法主要是针对机器翻译系统的评测,一是评测时要求处理的语料都比较小,而进行EBMT翻译时需要处理大规模语料,这些方法难以胜任。二是这些方法几乎没有使用任何语法、语义知识,不能有效地融合翻译系统其他模块相关的处理结果和处理方法,最终效果难以提升。本文针对这些问题,提出一种多层次句子相似度计算的新方法:首先基于句子的词表层特征和信息熵从大规模语料库中选择出少量候选实例,然后针对这些候选实例进行泛化匹配,从而计算出相似句子。

论文其余部分安排如下:第二部分将详细讨论本文提出的多层次句子相似度计算方法;第三部分给出本文算法在多策略机器翻译系统[6]IHSMTS上的实验结果及数据分析;第四部分是对本文算法的一个简短总结和下一步研究的设想。

2 多层次句子相似度计算

2.1 基于词表层特征和信息熵的候选实例检索

候选实例检索要解决的问题是,如何高效快速地从大规模语料库中选出少量句子以进行精确地句子相似度计算。因此,候选实例的检索需要考虑以下一些方面:

1、候选实例检索算法的设计,首先也是最重要的应该是能把最相似的、最有利于类比翻译的实例检索出来。因为如果检索不到相似实例或检索出来的实例相似性过低,都会导致类比翻译的失败。

2、检索出来的候选实例数量要适当。候选实例太少很容易遗漏最相似的翻译实例,导致翻译失败或译文质量不高;候选实例太多,则会占用过多的计算资源,导致系统性能严重下降。根据我们的经验,理想的候选实例应该在5个左右。

3、到目前为止,研究人员还没有找到一种简单通用的方法来计算句子之间的相似度。因此,候选实例的检索策略还需要与具体系统的后续处理方法和处理过程通盘考虑,以取得整个系统的最优化。

在处理过程中,我们把句子表示成单词的集合。

定义1:句子的词集合表示为

π(S)={W1, W2, ...W n} (1)

其中S表示句子,W i为句子中的单词。对于英语,词W i需要事先进行形态还原;对于中文,句子S需要事先进行词切分处理。

定义2:句子S1和句子S2的表层相似度:

Sim(S1, S2)= 2*Γ(π(S1) π(S2)) /(Len(S1)+Len(S2)) (2)

s

其中 表示集合的求交运算。Γ运算符表示求集合中的元素个数,Len表示句子的长度,即句子中含有的单词数。

两个句子的表层相似度越大,则输入的待翻译句子与翻译实例相同的单词就越多,后续类比译文构造过程对翻译实例所要做的修改量也就越少。这说明表层相似度的计算方法从总体上是符合EBMT系统的要求,即有利于最终生成高质量的译文。

定义3:词信息熵

()m M w H /lg )(= (3)

其中w 表示词,M 表示语料库中的句子总数,m 表示出现了词w 的句子数。词的信息熵值越大,说明该词在语料库中的出现频度越低,对区分句子的作用也就越大。 定义4:句子S 1和 句子S 2的信息熵相似度:

∑=)(i

H w H S i m ………………………………………. (4) 其中)}()({21S S w i ππ ∈,运算符π和 的含义参见前面定义1和定义2。 两个句子的信息熵相似度越大,则从概率上来讲,输入的待翻译句子与翻译实例在语义上更相似。同时通过信息熵的计算方法,对一些特别常用的词比如{the 、a 、and 、of}等起到了抑制作用。

进行候选实例检索时,首先根据(2)式的表层相似度计算方法,从大规模语料库中选出一定数量的句子,比如m 个句子,然后根据(4)式的信息熵相似度计算方法,再从这m 个句子中选出n 个句子。实验中我们设定m=20,n=5。要说明的是,我们没有在整个语料库中直接利用(4)式信息熵的大小来筛选候选实例,这是因为如果在整个语料库中直接利用信息熵的大小来筛选候选模式,则会给一些非常用词以过大的比重,比如在我们的统计中仅出现一次的词(比如单词borax )其信息熵是最常用词{the}的16.8倍,结果会导致选出来的翻译实例在句子结构上与输入的待翻译句子相差很大,不利于后续的类比译文构造。

2.2 基于泛化的匹配度计算

基于泛化的匹配度计算,指的是在泛化的基础上计算候选实例与输入的待翻译句子间的模糊匹配度。

2.2.1 泛化

我们看下面这个例子:

翻译实例:I'll look in my diary to see if I'm free next Wednesday.

输入句子:I'll look in my diary to see if I'm free next Friday.

输入句子中是“Friday ”,而翻译实例中是“Wednesday ”,如果基于实例模式精确匹配,则输入句子没法翻译。但如果把翻译实例经词法分析泛化成下例模式:

I will look in my diary to see if I am free next X.

其中X 表示短语变量,X表示一个类别属性为TIM 的短语变量,它可以跟任何一个类别属性为TIM 的短语匹配。为了方便说明泛化的意义,这里属性只使用了词类这一个参量。在实际系统中除了词类属性外,还应该使用词形、词汇等价类、词的同义、反义、上下位、蕴含以及语境语用(上下文)等信息。

对输入句子“I'll look in my diary to see if I'm free next Friday.”做同样的词法分析处理,结果如下:

I will look in my diary to see if I am free next Friday.

比较泛化实例和输入句子的词法分析结果,Friday与X能匹配上,从而可以根据该翻译实例类比推理构造出输入句子的译文,即在本例中,将Wednesday换成Friday即可。

由此可见,首先根据待翻译的输入句子对翻译实例的相关语法单位进行泛化,即形成具

有一定复杂特征的变量;再根据泛化实例类比推理构造出输入句子的译文。在这里,类比推理实际上就是一个变量属性约束匹配的过程;而译文构造主要就是通过对泛化实例进行替换、复制、删除和插入等操作来完成。

2.2.2泛化匹配度

进行泛化匹配时,我们综合考虑了词形、词类、词汇等价类、词的同义、反义、上下位、蕴含以及语境语用(上下文)等信息。

定义5:词汇泛化匹配度LGD (Lexical Generalization Matching Degree ):表示输入句子中的某个词汇与翻译实例中的某个词汇可以相互替换的可能性。它实际上跟词汇相似度、词汇在句子中的词性以及词汇的上下文信息有关。LGMD 由下式计算:

???????==≠=??=≠??≠≠???==0

&0,00

&0,0&0,0&0,)

,,(),(21Pos Lex Pos Lex Con Pos Pos Lex Con Lex Pos Lex Con Pos Lex Con Pos Lex Sim Sim if Sim Sim if Sim Sim Sim Sim if Sim Sim Sim Sim if Sim Sim Sim Sim Sim Sim f w w LGMD γβα …… (5) 上式中γβα,,是三个系数,表示各种情况的可信度权值。实验中我们设8.0,9.0,1===γβα。lex Sim 表示词汇相似度,Pos Sim 表示词性相似度,Con Sim 表示语境相似度。其中lex Sim 的计算式如下:

???

????≠∈==2121212121,),(_,,1),(w w if w w sem dis w w w w if w w Sim Lex α同一词汇等价类或……… (6) 上式中),(_21w w sem dis 表示词汇21,w w 的语义距离,α是权值系数,实验中我们设8.0=α。语义距离的计算我们采用了基于HowNet 的方法。HowNet 提供的义原分类树把各个义原以及它们之间的关系以树的形式组织在一起,树中父节点和子节点的义原具有上下位关系。因此,可以利用义原分类树来计算两个词汇之间的语义距离。计算时,我们把语义距离定义为两个词对应的义原在义原分类树中与最近邻共同祖先节点间距离的平均值。

Pos Sim 的计算式如下:

?????≠==)

()(,0)()(,1),(212121Pos w Pos w Pos if w Pos w Pos if w w Sim ……………… (7) 上式中)(w Pos 表示词汇w 在句子中的词类标注属性。

Con Sim 的计算式如下:

???????==)

,(_0),(_,1),(212121Con w w con dis w w con dis if w w Sim ω (8)

上式中ω也是一个权值系数,实验中我们取值8.0=ω。),(_21w w con dis 表示词汇21,w w 的上下文偏移距离,它的值主要是在同语词对齐的基础上通过观察当前词左右N/2个词(即宽度为N 的词汇窗口)来决定。

定义6:句子泛化匹配度SGMD (Sentence Generalization Matching Degree):表示该翻译实例作为范例对输入句子进行类比翻译的可信度。SGMD 由下式计算:

)

()(),(2),(21)(0)(02112max arg s Len s Len w w LGMD s s SGMD s Len i i j i s Len j +???????????

=∑<=<≤ ……………… (9) 上式分母中)(),(21s Len s Len 分别表示输入句子和翻译实例的句子长度。

2.3 句子相似度计算

最后的句子相似度由下式计算:

Similarity (S 1, S 2)= +?),(21s s SGMD αs Sim ?β(S 1, S 2) H Sim ?+γ (10)

其中γβα,,是三个权值系数,分别表示泛化匹配度、表层相似度和信息熵相似度的权值,并且1=++γβα。实际设置时,由于泛化匹配度能比较全面的从词汇、语法、语义和上下文等多方面考察句子的相似性,所以α设置的相对大一些,又因为信息熵相似度是在表层相似度基础之上计算出来的,所以γ设置的相对小一些。

3.实验设计与结果分析

EBMT 系统的句子相似度计算,目的就是为了能从大规模语料库中选择出最相似的翻译实例,供后续模块进行类比译文构造。为了比较全面地评估本文算法,我们使用了准确率、召回率和F 值等三个指标,它们的计算式分别定义如下:

)13...(..................................................)(2_)12(..............................%100)11(..............................%100回率

准确率召回率准确率存在标准相似句的总数

总数能正确找出相似句子的召回率测试句子的总数总数能正确找出相似句子的准确率+?=?=?=

score F 开始测试前,我们首先向系统中导入20万英汉句对,中文和英文大约各有200多万词,其中英文平均句长为12.5个词左右,中文平均句长为11个词左右。然后从这20万英汉句对随机挑选出100个中文句子,再对这100个中文句子分别进行人工修改,最终形成400个不同的句子,作为测试集。

测试时,我们逐句地把测试集中的句子输入系统,系统返回相似度大于0.75 的所有翻译实例,并且返回的每个翻译实例都附有机器自动计算出来的相似度。然后对返回的每个翻译实例进行人工判别,人工判别的依据是:○1能否把相似句子提取出来,这一项主要反映在召回率上;○2机器自动计算出来的相似度与人工主观判断的拟合性,这一项主要反映在准确率上。试验结果如表1所示。

从表1中的试验结果可以看出,准确率达90%说明机器自动计算出来的相似度与人工的主观判断是很接近的;召回率达96%说明算法能够从大规模语料库中比较有效地检索出相似实例。

另外,我们重点分析了影响准确率和召回率的因素:

最主要因素之一就是分词标准的不一致,比如在我们的分词系统中把“看电影”切分成一个词,而把“看电视”切分成“看电视”两个词。而且这种现象比较多、比较严重,如果能解决这类问题,试验效果应该要更好的多。

另外一个主要因素就是词类标注不准确。词类标注错误也会影响相似度计算的准确性,不过由于词类信息在相似度计算中不是特别重要,所以相当分词来说影响较小。

4.结束语和进一步的研究

首先基于句子的词表层特征和信息熵从大规模语料库中选择出少量候选实例,然后针对这些候选实例进行泛化匹配,从而计算出相似句子。在多策略机器翻译系统IHSMTS中的实验表明,语料规模为20万英汉句对的情况下,系统提取相似句子的召回率达96%,准确率达90%,充分说明了本文所提出的这种多层次句子相似度计算方法的有效性。

此外,在EBMT系统中,句子相似度计算的最终目的就是为了能够使后续模块有效的进行类比译文构造,产生高质量的译文。但在本文的算法中,计算句子相似度时没有考虑翻译实例的译文部分。下一步的研究中,我们准备在计算句子相似度时,把翻译实例的对译信息(如双语词对齐结果)考虑进来,以便更全面的考察待翻译句子与翻译实例的相似性。

参考文献

[1] H. Maruyama and H. Watanabe. Tree Cover Search Algorithm for Example-Based Translation[A]. In Proceeding of the Fourth International Conference on Theoretical and Methodological Issues in Machine Translation[C](TMI-92). Montreal, 1992, 173-184,

[2] Ralf D. Brown, Example-Based Machine Translation in the Pangloss System[A]. In Proceedings of the 16th International Conference on Computational Linguistics[C] (COLING-96)..Copenhagen, Denmark, August 5-9, 1996, 169-174

[3] Keiji Yasuda, Fumiali Suagya,etc, An Automatic Evaluation Method of Translation Quality Using Translation Answer Candidates Queried from a Paralledl Corpus[A]. In Proceeding of MT Summit’s conference[C]. Santiago de Compostela, 2001

[4] Jianmin Yao, Ming Zhou etc, An Automatic Evaluation Method for Localization Oriented Lexicalised EBMT System[A]. In Proceeding of the 19th International Confernce on Computational Linguistics[C] (COLING2002). Taipei, 2002

[5] Yasuhiro Akiba, Kenji Imamura, and Eiichiro Sumita, Using Multiple Edit Distances to Automatically Rank Machine Translation Output[A]. In Proceeding of MT Summit’s conference[C]. Santiago de Compostela, 2001 [6] 黄河燕、陈肇雄,基于多策略的交互式智能辅助翻译平台总体设计[A].见:黄河燕主编,机器翻译研究进展(2002年全国机器翻译研讨会论文集)[C].北京:电子工业出版社,2002年11月,137-146

相似度算法比较

图像相似度计算主要用于对于两幅图像之间内容的相似程度进行打分,根据分数的高低来判断图像内容的相近程度。 可以用于计算机视觉中的检测跟踪中目标位置的获取,根据已有模板在图像中找到一个与之最接近的区域。然后一直跟着。已有的一些算法比如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);

地址相似度算法

一、计算过程: 1、根据输入一个地址,生成一个地址每个字的数组: T1={w1,w2,w3..wn}; 比如:有两个地址广东省梅州市江南彬芳大道金利来步街xx号和广东省梅州市梅江区彬芳大道金利来步行街xx号,会生成 T1={广,东,省,梅,州,市,江,南,彬,芳,大,道,金,利,来,步,街,xx,号}; T2={广,东,省,梅,州,市,梅,江,区,彬,芳,大,道,金,利,来,步,行,街,xx,号}; 2、这两个地址的并集,对出现多次的字只保留一次 比如:T={广,东,省,州,市,梅,江,南,区,彬,芳,大,道,金,利,来,步,行,街,xx,号}; 3、求出每个t中每个词在t1和t2中出现的次数得到m和n m={m1,m2,m3..mn}; n={n1,n2,n3.nn}; 比如:t1和t2可以得到两个出现次数的数组 m={1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,0,1,1,1}; n={1,1,1,1,1,2,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1}; 4、计算相似度 Sim=m1*n1+m2*n2+..mn*nn/sqrt(m1*m1+m2*m2+..mn*mn)* sqrt(n1*n1+n2*n2+..nn*nn) 二、计算原理: 假如这两个数组是只有{x1,y1}和{x2,y2}的数组,这两个数组可以在平面直角坐标系中用两个由原点出发的向量来表示,我们可以通过向量的夹角的大小来判断向量的相似度,夹角越小,相似度越高。计算向量的夹角,我们可以使用余弦定理,余弦定理用坐标表示的公式: 余弦的这种计算方法不止对于2维向量成立,对n维向量也成立,n维向量表示为: 所以我们可以使用这个公式得出余弦的值,值越接近1,夹角越小,两个向量越相似,这种计算方式叫做余弦相似性。

图像相似度计算

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

计算文本相似度几种最常用的方法,并比较它们之间的性能

计算文本相似度几种最常用的方法,并比较它们之间的性能 编者按:本文作者为Yves Peirsman,是NLP领域的专家。在这篇博文中,作者比较了各种计算句子相似度的方法,并了解它们是如何操作的。词嵌入(word embeddings)已经在自然语言处理领域广泛使用,它可以让我们轻易地计算两个词语之间的语义相似性,或者找出与目标词语最相似的词语。然而,人们关注更多的是两个句子或者短文之间的相似度。如果你对代码感兴趣,文中附有讲解细节的Jupyter Notebook地址。以下是论智的编译。 许多NLP应用需要计算两段短文之间的相似性。例如,搜索引擎需要建模,估计一份文本与提问问题之间的关联度,其中涉及到的并不只是看文字是否有重叠。与之相似的,类似Quora之类的问答网站也有这项需求,他们需要判断某一问题是否之前已出现过。要判断这类的文本相似性,首先要对两个短文本进行embedding,然后计算二者之间的余弦相似度(cosine similarity)。尽管word2vec和GloVe等词嵌入已经成为寻找单词间语义相似度的标准方法,但是对于句子嵌入应如何被计算仍存在不同的声音。接下来,我们将回顾一下几种最常用的方法,并比较它们之间的性能。 数据 我们将在两个被广泛使用的数据集上测试所有相似度计算方法,同时还与人类的判断作对比。两个数据集分别是: STS基准收集了2012年至2017年国际语义评测SemEval中所有的英语数据 SICK数据库包含了10000对英语句子,其中的标签说明了它们之间的语义关联和逻辑关系 下面的表格是STS数据集中的几个例子。可以看到,两句话之间的语义关系通常非常微小。例如第四个例子: A man is playing a harp. A man is playing a keyboard.

文本相似度算法

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的权重,

相似度计算方法

基于距离的计算方法 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)。

信息检索几种相似度计算方法作对比

句子相似度地计算在自然语言处理具有很重要地地位,如基于实例地机器翻译( )、自 动问答技术、句子模糊匹配等.通过对术语之间地语义相似度计算,能够为术语语义识别[]、术语聚类[]、文本聚类[]、本体自动匹配[]等多项任务地开展提供重要支持.在已有地术语相似度计算方法中,基于搜索引擎地术语相似度算法以其计算简便、计算性能较高、不受特定领域语料库规模和质量制约等优点而越来越受到重视[]. 相似度计算方法总述: 《向量空间模型信息检索技术讨论》,刘斌,陈桦发表于计算机学报, 相似度():指两个文档内容相关程度地大小,当文档以向量来表示时,可以使用向量文 档向量间地距离来衡量,一般使用内积或夹角地余弦来计算,两者夹角越小说明似度 越高.由于查询也可以在同一空间里表示为一个查询向量(见图),可以通过相似度计算 公式计算出每个档向量与查询向量地相似度,排序这个结果后与设立地阈值进行比较. 如果大于阈值则页面与查询相关,保留该页面查询结果;如果小于则不相关,过滤此页.这样就可以控制查询结果地数量,加快查询速度.资料个人收集整理,勿做商业用途 《相似度计算方法综述》 相似度计算用于衡量对象之间地相似程度,在数据挖掘、自然语言处理中是一个基础 性计算.其中地关键技术主要是两个部分,对象地特征表示,特征集合之间地相似关系. 在信息检索、网页判重、推荐系统等,都涉及到对象之间或者对象和对象集合地相似 性地计算.而针对不同地应用场景,受限于数据规模、时空开销等地限制,相似度计算 方法地选择又会有所区别和不同.下面章节会针对不同特点地应用,进行一些常用地相 似度计算方法进行介绍.资料个人收集整理,勿做商业用途 内积表示法: 《基于语义理解地文本相似度算法》,金博,史彦君发表于大连理工大学学报, 在中文信息处理中,文本相似度地计算广泛应用于信息检索、机器翻译、自动问答系统、文本挖掘等领域,是一个非常基础而关键地问题,长期以来一直是人们研究地热点和难点.计算机对于中文地处理相对于对于西文地处理存在更大地难度,集中体现在对文本分词 地处理上.分词是中文文本相似度计算地基础和前提,采用高效地分词算法能够极大地提 高文本相似度计算结果地准确性.本文在对常用地中文分词算法分析比较地基础上,提出 了一种改进地正向最大匹配切分()算法及歧义消除策略,对分词词典地建立方式、分词 步骤及歧义字段地处理提出了新地改进方法,提高了分词地完整性和准确性.随后分析比 较了现有地文本相似度计算方法,利用基于向量空间模型地方法结合前面提出地分词算法,给出了中文文本分词及相似度计算地计算机系统实现过程,并以科技文本为例进行了 测试,对所用方法进行了验证.这一课题地研究及其成果对于中文信息处理中地多种领域 尤其是科技类文本相似度地计算比较,都将具有一定地参考价值和良好地应用前景.资料 个人收集整理,勿做商业用途

词语相似度算法的分析与改进

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

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

基于《知网》的词语相似度计算

基于《知网》的词语相似度计算 [摘要]词语相似度计算是计算机中文处理中的基础和重要环节,目前基于《知网》的词语相似度计算是一种常见的方法,本文将对该方法做系统介绍。 [关键词]《知网》词语相似度计算 一、《知网》的结构 《知网》(HowNet)是我国著名机器翻译专家董振东先生和董强先生创建的,是一个常识知识库,它含有丰富的词汇语义知识以及世界知识,内部结构复杂。 《知网》中两个最基础的概念是“概念”和“义原”。“概念”是用来描述词语语义。因为一个词可以含有多个语义,所以一个词需要多个概念来描述。使用“知识表示语言”对概念进行描述,“知识表示语言”使用的“词汇”便是义原。《知网》中的不可再分的、最小的意义单位是“义原”,义原用来描述“概念”。 《知网》采用的义原有1500个,它们一共可以分为十类,具体见图1。 知网反映了概念之间、概念属性之间各种各样的关系,总体来说知网描述了16种关系: 上下位关系;同义关系、反义关系、对义关系;部件-整体关系;属性-宿主关系;材料-成品关系;施事/经验者/关系;主体-事件关系;受事/内容/领属物等事件关系;工具-事件关系;场所-事件关系;时间-事件关系;值-属性关系;实体-值关系;事件-角色关系;相关关系。 由《知网》的结构得知义原之间组成的不是一个树状结构,而是一个复杂的网状结构。然而义原关系中最重要的是上下位关系。所有的“基本义原”以这种上下位关系为基础构成了义原层次体系,叫做义原分类树。在义原分类树中,父节点义原和子节点义原之间具有上下位关系。可以通过义原分类树来计算词语和词语之间的语义距离。 二、知网的知识词典 知识词典是知网中最基本的数据库。在知识词典中,每一个概念(概念又称为义项)可以用一条记录来描述。一条记录含有八项信息,每一项由用“=”连接的两个部分组成,等号左边表示数据的域名,右边是数据的值。比如下面就是一条描述概念的记录: NO=017114

大规模句子相似度计算方法

大规模句子相似度计算方法* 黄河燕1陈肇雄1张孝飞1张克亮1,2 (1中国科学院计算机语言信息工程研究中心北京100083 2 南京理工大学南京210094) Email: heyan.huang@https://www.360docs.net/doc/8e4695954.html, xiaofei_ustc@https://www.360docs.net/doc/8e4695954.html, 摘要:如何根据源语言文本从大规模语料库中找出其最相近的翻译实例,即句子相似度计算,是基于实例翻译方法的关键问题之一。本文提出一种多层次句子相似度计算方法:首先基于句子的词表层特征和信息熵从大规模语料库中选择出少量候选实例,然后针对这些候选实例进行泛化匹配,从而计算出相似句子。在多策略机器翻译系统IHSMTS中的实验表明,当语料规模为20万英汉句对时,系统提取相似句子的召回率达96%,准确率达90%,充分说明了本文算法的有效性。 关键词:句子相似度;基于实例的机器翻译;多策略机器翻译;泛化匹配 中图法分类号:TP391 Approach of Large-Scale Sentence Similarity Computation HUANG He-yan CHEN Zhao-xiong ZHANG Xiao-fei (Research Center of Computer & Language Information Engineering, CAS Beijing 100083) Email: heyan.huang@https://www.360docs.net/doc/8e4695954.html, xiaofei_ustc@https://www.360docs.net/doc/8e4695954.html, Abstract: The retrieval of the similar translation examples corresponding to the SL sentence from the large-scale corpora, or the computation of sentence similarity, is one of the key problems of EBMT. A new multi-layer sentence similarity computation approach is proposed in this paper. First, a few candidate translation examples are selected form a large-scale corpus on the basis of the surface features and entropies of the given words. Second, the degree of generalization match between the input sentence and each of those candidate translation examples is computed respectively. Finally, the sentence similarity is computed according to the outcomes of the previous two steps. Experimental results from tests on IHSMTS show that this approach has a recall rate of 96% and a precision rate of 90% when applied to a corpus of 200,000 English-Chinese sentence pairs. Key words: sentence similarity; example-based machine translation; hybrid-strategy machine translation; generalization matching 1 引言 基于实例的机器翻译EBMT(Example-based machine translation)的基本思路是:预先 *基金项目:国家自然科学基金资助项目(60502048,60272088);国家863计划基金资助项目(2002AA117010-02)。 作者简介:黄河燕(1963-),女,研究员,博士生导师,主要研究方向为自然语言处理与机器翻译、大型智能应用系统;陈肇雄(1961-),男,研究员,博士生导师,主要研究方向为自然语言处理、大型智能应用系统;张孝飞(1970-),男,副研究员,博士,主要研究方向为自然语言处理、机器翻译、信息检索。张克亮(1964-),男,副教授,博士后,主要研究方向为计算语言学、机器翻译。

图像相似度算法的C#代码

近日逛博客的时候偶然发现了一个有关图片相似度的Python算法实现。想着很有意思便搬到C#上来了,给大家看看。 闲言碎语 才疏学浅,只把计算图像相似度的一个基本算法的基本实现方式给罗列了出来,以至于在最后自己测评的时候也大发感慨,这个算法有点不靠谱。不管怎么样,这个算法有时候还是有用的,所以还是列出来跟大家伙一起分享分享~~ PS:图像处理这一块博大精深,个人偶尔发现了点东西拿来分享。说的不好的地方,写得太糟的地方,诸位准备扔砖头还望淡定,淡定~~ 基本知识介绍 颜色直方图 颜色直方图是在许多图像检索系统中被广泛采用的颜色特征,它所描述的是不同色彩在整幅图像中所占的比例,而并不关心每种色彩所处的空间位置,即无法描述图像中的对象或物体。颜色直方图特别适用于描述那些难以进行自动分割的图像。 灰度直方图 灰度直方图是灰度级的函数,它表示图像中具有每种灰度级的像素的个数,反映图像中每种灰度出现的频率。灰度直方图的横坐标是灰度级,纵坐标是该灰度级出现的频率,是图像的最基本的统计特征。 本文中即是使用灰度直方图来计算图片相似度,关于算法那一块也不赘言了,毕竟图像学图形学,直方图我是门儿都不懂,我也不准备打肿脸充胖子,只想实现一个最基本的算法,然后从最直观的角度看看这个算法的有效性,仅此而已。

算法实现 诸位看官休怪笔者囫囵吞枣,浅尝辄止的学习态度。额毕竟是因兴趣而来,于此方面并无半点基础(当然,除了知道RGB是啥玩意儿——这还幸亏当年计算机图形学的老师是个Super美女,因此多上了几节课的缘故),更谈不上半点造诣,看官莫怪莫怪,且忍住怒气,是走是留,小生不敢有半点阻拦~~ 大致步骤如下: 1,将图像转换成相同大小,以有利于计算出相像的直方图来 2,计算转化后的灰度直方图 3,利用XX公式,得到直方图相似度的定量度量 4,输出这些不知道有用没用的相似度结果数据 代码实现 步骤1,将图像转化成相同大小,我们暂且转化成256 X 256吧。 public Bitmap Resize(string imageFile, string newImageFile) { img = Image.FromFile(imageFile); Bitmap imgOutput = new Bitmap(img, 256, 256); imgOutput.Save(newImageFile, System.Drawing.Imaging.ImageFormat.Jpeg); imgOutput.Dispose(); return (Bitmap)Image.FromFile(newImageFile);

词语相似度计算方法

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

本体相似度计算方法

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 ==∑∑ =

向量的相似度计算常用方法个

向量的相似度计算常用方法 相似度的计算简介 关于相似度的计算,现有的几种基本方法都是基于向量(Vector)的,其实也就是计算两个向量的距离,距离越近相似度越大。在推荐的场景中,在用户-物品偏好的二维矩阵中,我们可以将一个用户对所有物品的偏好作为一个向量来计算用户之间的相似度,或者将所有用户对某个物品的偏好作为一个向量来计算物品之间的相似度。下面我们详细介绍几种常用的相似度计算方法。 共8种。每人选择一个。第9题为选做。 编写程序实现(这是第一个小练习,希望大家自己动手,java实现)。计算两个向量的相似性: 向量1(0.15, 0.45, 0.l68, 0.563, 0.2543, 0.3465, 0.6598, 0.5402, 0.002) 向量2(0.81, 0.34, 0.l66, 0.356, 0.283, 0.655, 0.4398, 0.4302, 0.05402) 1、皮尔逊相关系数(Pearson Correlation Coefficient) 皮尔逊相关系数一般用于计算两个定距变量间联系的紧密程度,它的取值在[-1,+1] 之间。 s x , s y 是 x 和 y 的样品标准偏差。 类名:PearsonCorrelationSimilarity 原理:用来反映两个变量线性相关程度的统计量 范围:[-1,1],绝对值越大,说明相关性越强,负相关对于推荐的意义小。 说明:1、不考虑重叠的数量;2、如果只有一项重叠,无法计算相似性(计算过程被除数有n-1);3、如果重叠的值都相等,也无法计算相似性(标准差为0,做除数)。

该相似度并不是最好的选择,也不是最坏的选择,只是因为其容易理解,在早期研究中经常被提起。使用Pearson线性相关系数必须假设数据是成对地从正态分布中取得的,并且数据至少在逻辑范畴内必须是等间距的数据。Mahout中,为皮尔森相关计算提供了一个扩展,通过增加一个枚举类型(Weighting)的参数来使得重叠数也成为计算相似度的影响因子。 2、欧几里德距离(Euclid ean Distance) 最初用于计算欧几里德空间中两个点的距离,假设 x,y 是 n 维空间的两个点,它们之间的欧几里德距离是: 可以看出,当 n=2 时,欧几里德距离就是平面上两个点的距离。当用欧几里德距离表示相似度,一般采用以下公式进行转换:距离越小,相似度越大。 类名:EuclideanDistanceSimilarity 原理:利用欧式距离d定义的相似度s,s=1 / (1+d)。 范围:[0,1],值越大,说明d越小,也就是距离越近,则相似度越大。 说明:同皮尔森相似度一样,该相似度也没有考虑重叠数对结果的影响,同样地,Mahout通过增加一个枚举类型(Weighting)的参数来使得重叠数也成为计算相似度的影响因子。 3、Cosine 相似度(Cosine Similarity) Cosine 相似度被广泛应用于计算文档数据的相似度: 类名: UncenteredCosineSimilarity 原理:多维空间两点与所设定的点形成夹角的余弦值。 范围:[-1,1],值越大,说明夹角越大,两点相距就越远,相似度就越小。 说明:在数学表达中,如果对两个项的属性进行了数据中心化,计算出来的余弦相似度和皮尔森相似度是一样的,在mahout中,实现了数据中心化的过程,所以皮尔森相似度值也是数据中心化后的余弦相似度。另外在新版本

基于几何不变矩的图像相似度计算方法

龙源期刊网 https://www.360docs.net/doc/8e4695954.html, 基于几何不变矩的图像相似度计算方法 作者:谢逸逍汪有成肖猛黄玉柱马文奎 来源:《电子技术与软件工程》2017年第16期 摘要 提出了一种图像相似度测量方法,实现了变电站环境下模板图像和巡检图像相似性的识别。首先,使用数字图像处理技术对采集的图像进行滤波、形态学等预处理。其次,计算并统计模板图像和巡检图像的几何不变矩Hu矩,形成图像的特征向量。最后,计算图像特征向量之间的余弦相似度,通过设置阈值进行图像相似程度识别。实验结果表明,该方法能够实现图像相似度之间的判断,算法简单、速度快、正确率高。为后续变电站异物识别提供了技术支持。 【关键词】变电站图像相似度 Hu不变矩余弦相似度 随着信息时代的到来,人类已经进入了信息化的时代,图像作为最普通的信息载体与人类的活动息息相关。近年来,众多的学者们将研究方向转移到图像处理与计算机视觉等领域。图像分类也逐渐成为科学研究中不可缺少的强有力的工具,其在图像检索、智能机器人场景识别等多个领域中具有重要的应用价值。 变电站是各级电网的核心枢纽,对站内设备例行检查是保证电网安全运行的关键技术手段。目前,比较流行的巡检方式是人工巡检模式,即以人工的方式方法登记、统计设备信息来进行管理工作的落后状态。由于电网的维护难度高,巡检量大,采用人工巡检模式己不能满足己完全不能满足实际需要。 随着机器人技术的快速发展,将机器人技术与电力应用相结合,基于机器人移动平台携带检测设备代替人工进行设备巡检成为了可能。变电站中的环境复杂,采集的设备图像并不是保持不变的。模板图像和巡检图像不同,致使续算法正确率降低。因此,对采集到的图像和模板图像相似性判断是一项重要工作,研究一种图像相似度计算方法具有重要意义。 1 图像滤波 为了提高图像质量便于后而处理得到更好的结果,需要对图像进行预处理操作。滤波去噪是图像预处理常用的技术手段,其中,中值滤波是一种非线性滤波器,对噪声点有较好的处理效果。中值滤波定义如下:假设数组 为1维数组,将该数组元素按从小到大排列: 式中:y称为数组X的中值。对于二维图像数据,选取一个r1×r2区域的窗口,将窗口依次滑过整幅图像,将窗口中心位置像素用窗口中像素中值代替,得到滤波后的图像。依据实践

语义相似度的计算方法研究

语义相似度的计算方法研究 信息与计算科学余牛指导教师:冉延平 摘要语义相似度计算在信息检索、信息抽取、文本分类、词义排歧、基于实例的机器翻译等很多领域中都有广泛的应用.特别是近几十年来随着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

相关文档
最新文档