词语相似度算法的分析与改进
【技术研发】圈
词语相似度算法的分析与改进
何亚
(常德职业技术学院现代教育技术中心湖南常德415000)
摘要:对现有的词语相似度算法进行分析,提出一种基于知网,面向语义,可扩展的词语相似度计算方法,通过对实验结果进行分析,所提出的词语语义
相似度计算方法比以前的方法更好,在计算词语相似度时,准确率更高
关键词:词语相似度算法;义原相似度计算:概念词的相似度计算;非概念词的相似度计算
中图分类号:TP391.1文献标识码:A文章编号:1671—7597(2011)1220093--02
在建立主观题评分模型时,要判断句子的相似度,计算句子的相似度
时,首先要处理的就是词语的相似度计算工作.目前对词语的相似度计算
人们已经做了大量的研究,提出了一些较有代表性的计算方法.主要包括
以下几种:
1)基于字面信息的词语相似度计算
这种算法的核心内容是:中文词语的构成句子中,一般较核心的内容
都放在句子的后面.句子后面的词语在句子中所起到的作用比靠前的词语
大.因此在对句子进行分析时需要给后面的字或词赋予较高的权值.
假设A和B分别代表两个词语,按照此算法,词语之间的相似度计算公
式可以表示为公式1.
Sim(A,口)=口×0SameHZ(A,)f,lA4~$ameHZ(A,s)l/IBIJ/2
rllaJ181IBI,
+flxd×I~Weight(A,f),?f+?,(B,J)/~Jl/2(公式1)lli=lj=tJ=l
使用字面信息作为相似度计算的算法较简单,实现起来也方便.但该
算法准确率不高,尤其是对于语义相似的词语更是难于处理.
2)基于词林的词语相似度计算
对于以同义词词林作为语义分类体系进行词语相似度计算的研究,王
斌和章成志都曾作了相关探讨[1]其核心思想是使用两个词语的语义距
离来表示词语间相似度.当处理对象是一个词组或短语时,首先将其切分
为义类词,并将义类词在词林的树状结构中提取出相关的语义编码,并对
两个词语的语义编码进行相似度计算.
基于词林的词语相似度计算较好的解决了语义相似,词形不同的词语
相似度计算,但由于语义词典的完备性问题,必然会存在部分不在语义词
典中的词语而无法处理.
3)基于知网的词语相似度计算
知网以概念作为描述对象,从关系层次上揭示词语的概念含义,并建
立了概念关系网络,包含词语属性以及属性问关系[2].刘群,李素建从
知网的关系描述出发,研究了同一个词义所具有的多个义原间的关系,并
试图计算出这些义原在计算相似度时所起到的作用,并根据这种思想提出
了使用知网的语义信息来计算词语相似度的算法.
该算法在计算概念词的相似度时较准确,但在计算概念词与非概念
词,非概念词与非概念词的相似度时,准确率不高.
为克服这些问题,我们采用知网作为语义资源,结合信息论中的相关
理论,提出了一种面向语义的,可扩展的,多策略混合的词语相似度计算
模型.
1义原相似度计算
词语的相似度计算,最终还是要计算各词语的义源相似度.在知网
中,所有词语都包含义原信息,应用知网进行相似度计算时,第一步就是
要计算义原的相似度.文献中刘群从两个义原的距离出发,按照相似度的
计算过程给出了一个计算词语间相似度的公式[3],如公式2所示:
疗
Sim(pl,P2):(公式2)
公式2中和p:表示两个义原;d是p一和pz在知网中义原层次J=二的路
径长度,口是一个可调节的权值参数.但是,此方法中的口取值大小没有
固定的判断方法,而且以距离的倒数作为相似度的计量基准也不能全面的
表示出词语的相似度信息.
我对刘群提出的义原相似度进行改进,先给出义原深度的概念:
定义1:义原深度,指义原P在知网的语义层次体系中所处的层数信
息,记为Depth(p).
定义2:重合度,指知网中的两个义原和p:在深层含义中拥有相同
祖先结点的路径长度,记为Spd(p.,P).
定义3:相异度,指知网中两个义原p-和pz在义原层次中沿着父节点
逐层上移,直到两个节点相遇所走过的最短路径长度,记为Dsd(p,,P).
从相异度的定义可知它与语义距离相同.
根据上面的义原深度,重合度以及相异度对义原的定义,我们使用下
面的公式3来计算义原间的相似度:
(p?,pz)面2XSpd(pl,p2)公式s)
从公式3可看出,义原的相似度等于两个义原的相同部分与相同部分
和相异部分之和的比值.两义原相同部分与相异部分之和等价于两个义原
各自的义原深度的和,因此公式3又可以写为公式4:
m(pl,P2)=2xSpd(p~,P2)(公式4)
采用上面的方法在计算义原相似度的过程中,利用了知网提供的上下
位关系.应用知网计算词语的相似度时,还要考虑词语间,词语和义原之
间的相似度计算.比较有效的做法是先把词语转化成义原表达式,再计算
义原与义原之间的相似度.
2概念词的相似度计算
词语分为概念词和非概念词,概念词指的是需要计算相似度的词都是
存在于知网中的概念,非概念词则相反.在应用知网进行概念词相似度计
算时,将其分为4个部分:?知网中首要基本义原,即词语属性中的
DEF项中在第位置的义原描述式;?知网中其他基本义原,即词语属性
中的DEF项中除第?位置以外的义原;?知网中的关系义原,即词属性列
表中的DEF项中的描述形式为:”关系义原=基本义原”,”关系义原=
(具体词)”,以及”(关系义原:具体词)”;?知网中的符号义原,
即词属性列表中的DEF项中使用类似”关系符号基本义原”或者”关系符
号(具体词)”来描述信息的内容.在应用义原描述进行相似度计算的过
程中,将这4部分的相似度分别表示为
Sirel(cl,C2),Sim2(cI,C2),Sim3(cl,
c)和S/m(C.,).在这样的条件下,整个概念词的相似度计算表达式可
以表示为如下公式5的形式:
三
Sim(C1,C2)=fl~Sirel(c1,c2)+?fllfliSim(cl,C2)(公式5)
_鼹【技术研发】
在公式5中,(1i?4)是可以调节的参数,用来调整备部分在计算中
的重要程度,其关系满足:属+十+成.1,且有崩??屈?屈>0.
有了整个概念词的相似度计算形式,下面分别计算这四个部分中每
一个部
分的相似度.
?知网中第一基本义原:假设在知网的义原中,有两个不相同的概
念C和C:,它们的第一基本义原分别记为和p:,根据公式4可以求出其
相似度表达式为公式6:
Siml(cl?cz)=(z)2~Spd(p.p:)(公式6)
?知网中其他基本义原:假设在知网的义原中,两个互不相同的概
念C和C,它们的其他基本义原分别记为集合Set,{PP…,P-}和Set
=
{P:.,P,…,P},那么这一部分的相似度计算过程如下所示.
算法1:其他基本义原的相似度计算
SIZE=max{m,n},lSet,l和1Set,l用来表示两个集合中所包含的义原数
量,score=0.0,表1?两个集合前相似度之和:
while(JSetl>001”}Set,l>0){求出在集合各个元素的组合中相似度
最大的一组义原P,?Set和P?Set,P,或P』有可能为空值,但它们不会
同时为空值;
score=score+Sim(p,,PJ)jSetl=Set}一{P,)&=Set2一{P,))
Shn2(cl,C2)=score/SIZE.
?知网中的关系义原:在知网中的词语解释中,关系义原相似度计
算可以认为是一个集合运算的过程,流程与?类似.当前集合在对词语进
行相似度计算时,首先要对词语的类型进行判断,根据判断的结果进行下
一
步的运算.如果判断的结果不同,那么说明两个义原的相似度为O;如
果判断的结果相同,则取出等号右侧的义原项,然后根据公式4计算其相
似度.
?知网中的符号义原:在知网中的词语描述信息中,这一部分的配
对分组和算法流程与关系义原描述式类似,即先判断其关系类型是否相
同,然后根据判断结果做下一步的判断,只有当出现符号相同的情况下才
去计算配对义原的相似度.?
3非概念埘的相似度计算
非概念词可以分解为两个或多个概念词.如果能够根据构成非概念词
的概念获得非概念词语对应的语义表达式,就可以按照概念词之间的相似
度计算模型,通过语义表达式对非概念词进行语义相似度计算.
非概念词的相似度计算主要涉及三个部分:非概念词的概念切分,组
合概念的语义确定和组合概念的相似度计算.
1)非概念语的概念切分
对非概念词的切分工作用到的方式是逆向最大匹配法,将非概念词切
分为一个词语串,例如:”私有化”一”私有”,”化”,”歌舞厅”一
“歌”,”舞厅”.
2)组合概念的语义确定
下面给出几个组合概念的定义:
定义4:原子概念,原子概念指的是在知网中已经存在的概念描述.
在对非概念词进行切分时,原子概念可以作为其切分的根据,在语义表示
上,原子概念具有固定的语义表达式.
定义5:基本组合概念,基本组合概念是指由两个原子概念组合在一
起所构成的新词语.我们可以从构成的两个原子概念的语义表达式中通过
推理来得到基本组合概念的语义表达式.
定义6:扩展组合概念,扩展组合概念指的是由两个或两个以上的原
子概念或者原子概念与基本组合概念组合在一起所构成的新词语.我们可
以通过两个或多个构成元素来推理出扩展组合概念的语义表达式.
定义7:组合概念,组合概念指的是基本组合概念和扩展组合概念的
统称.
定义8:参照概念,指的是为确定在知网中的基本组合概念各义原问
所包含的关系而提供的一个原子概念.
应用参照概念信息来生成基本组合概念的语义表达式,我们采用如下
的算法.首先假设基本组合概念S是由两个原子概念和所构成,S=尸2,
在使用原子概念PC作为参照概念时,生成基本组合概念S的语义表达式
的算法过程如下所示.
算法2:生成基本组合概念S的语义表达式
初始化:Def(S)=Def(P2),PS(S)=PS(P2);
REFSET=Def(Pref)一{PS(Pref)):
T=PS(S)与Ps(Pref)的概念相似度:
IF(,?0)Def(S):PS(S)U(Def(S)nREF.SET)
FOREACHpiINDef(P1)DO
最大相似度等于零,pos等于零:
FOREACHqjINREFSETDO
如过pi或qj为知网中的关系义原或者符号义原,则转换为普通义原
IFSim(pi,qJ)>最大相似度THEN
最大相似度=Sim(pi,qJ):pos=j:
ENDIF
ENDFOR
IF(pos>O)AND(t×最大相似度>Q)THEN
p(-pi,且p的附加符号~qpos相同:
ELSE
P?pi:
ENDIF
Oef(S)=Oef(S)U{P):
ENDFOR
在算法2中,001,0<Q?1,用来调整参照概念在计算中的重要
程度.组合概念的语义表达式算法中,Oe/(S)nREF_SET部分在实际应用
时不同于一般意义上的集合相交操作,而是有其自己的操作方式,在本系
统的实现中,运算方式如下面所示:
首先,从两个候选集合中各任意抽取一个义原参与运算,并计算这两
个义原的相似度:然后,如果计算的相似度值大于预先设定的阈值E,则
相交运算的结果为P,同时删除两个义原,如果相似度值小于或等于阈值
E则直接删除义原P;循环执行上面两个步骤,算法停止条件是Def(S)为
空或者REFSET为空.
对于扩展组合概念来说,其语义生成方式可以采用反向组合的运算过
程来实现.这里首先假设扩展组合概念ECC=PtPz…P,计算ECC的语义表达
式的算法为:
首先,从候选集合中抽取出最后两个原子概念,l和,使用基本
组合概念的语义计算方式计算这两个原子概念的组合语义,并记为
Def(ECC);然后,把组合语义Def(ECC)看作是知网中一个原子概念的语义
表达式,循环合并Def(ECC)和,并将每次合并结果重新记为Oef(ECC);最
后计算得到的Def(ECC)就是扩展组合概念ECC的语义表达式,并将其作为
结果输出.
4实验结果与分析
我们采用的实验方式:采用人工判别的方法,给出了答案中一部分词
对的相似度,由人工来判断这个数值是否与人的直觉相符合.
考虑程序运行时间的因素,在实验部分我们只对比了三种方法;?
基于语句中的字面信息相似度计算方法:?基于知网的词汇语义相似度
计算方法;?本文提出的方法.
按照前面提供的计算词语相似度的公式,根据对参数的训练,得出每
个方法的最优参数,分别设定如下,来进行相似度的计算.方法?:a
=O.5,B=0.5;方法?:Q=1.6,B=O.5,B2=0.2,B=0.17,B0.13,Y
:O.2,6=O.2:方法(:Bf=O.5,B2=0.2,B=O.17,B=O.13,Y=O.2,8
:0.2,@=O.5,E:O.6,Q=0.8:
我们选取了1O组词语,并把非概念词用下划线予以标注,结果如表
1所示.
从表1的实验结果中可以看出,在没有涉及到词语的语义问题时,方
法1中人部分结果都不是很合适;方法2在判断概念词时较为合理,但对于
有非概念词的词对,却无法处理;方法3对于概念词的相似度计算结果比
方法2更为合理,如表中”男人”与”男生”的相似度,”更加”与”非
常”的相似度;同时,对于非概念词的相似度计算,结果也比较合理.从
这些实验数据中,我们可以得到如下结论.
,
(下转第l46页)
I_7.SILICON
LLEY—liI技术应甩】
2.1自动门控制系统示意图
XO
嚣i勰蕊煳黼黼瓣蕊蔷?
i一
X2X?X4X5X5X4X1X2
2.2顺序控制功能图
中M8002
„
M.0.———.
韧始步I.—一例船莎
如X5TOO.5s~
髓
::王-x?减遣位置I,l
M2卜——圃碱速开门1.]
垒开r兰?a翟…f
?卜一圆定时058L.剐
垒关+T.,
广一一一.厂高速美f]I
2.3程序编制
1)起保停电路的设计方法2)步进指令编程方法
(上接第94页)
3)以转换为中心的编程方法
如上所述,自动门在国外已经得到了广泛的应用,在我国也已优异的
性能逐步得到大家的认同,自动门已经迎来了发展的黄金时期.采用
顺序
控制设计法设计自动门程序,思路清晰明了,按照既定的步骤一步步
进行
就可实现,真实的反映出PLC顺序控制设计法在工程实际中的广泛应用及
它的优越性.
参考文献:
[1]廖常初,PLC顺序控制梯形图设计方法[J].电工技术杂志,2001.11.
[2]姚伟伟,用西门子PLC实现长钢轨群吊多吊集控运行[D].大连铁道学
院,2003.?
作者简介:
高慧(1982一),女,2005年毕业于湖南大学计算机与通信学院通信工程
专业,2008年就读于湖南大学电气与信息工程学腕电子与通信专业工程硕士,
就职于衡阳财经工业职业技术学院电气与信息工程系,并同时担任教务处考务
科干事.
表1词语相似度计算实验结果子中存在着大量的非概念词,使得准确率计算结果受到影响;
词语1词语2方法1方法2方法3
男人父亲0.0001.0o01.O00
男人男生0.4500.7500.9o0
男人工作0.O000.1080.200
更加非常0.0o00.8610.967
游戏机电视机0.3830.O0o0.841
游乐场商场O.0?0.O000.867
娱乐场游乐场0.716O.0000.849
上海上海市0.7330.0o01.伽
快餐店饭店O.4090.0000.900
电子书电子图书0.8O40.0000.933
5结论
?语句相似度计算中字面信息方法强调以字为基本处理单元,而且
由于缺少词语的相关语义信息,因而在实际应用中的效果不好,准确率较
低;
?基于包含语义词典的词汇语义相似度计算方法,特别是基于知网
的词汇语义相似度算法准确率比字面信息方法高.但是由于参与比较的句
?本文提出的计算词语相似度方法,一方面改进了刘群方法中的义
原相似度计算公式和各个部分相似度之间的制约关系,使之更加合理;另
一
方面对概念词和非概念词作了区分,在计算相似度时引入了参照概念,
使得原子概念的相似度计算中能够自动获取非概念词对应的组合概念,在
计算中得到了优化处理,因而实验结果比其他方法准确性要有所提高.
参考文献:
[1]杨思春,一种改进的句子相似度计算模型[J].电子科技大学,
2006(06).
[2]高思丹,基于自然语言理解的主观试题自动批改技术的研究与初步实
现[D].南京:南京大学,2008.
[3]李辉阳,韩忠愿,有限领域简述文字的自动判读及其在cAI中的应用
[J].计算机工程与应用,2009,38(8):76—78.
[4]孟爱国,胜贤,李鹰等,,种网络考试系统中主观蹶自动评分的算
法设计与实现[J].计算机与数字工程,2010,33(7):147—150.
[52赵飞,赵捧未,淡金华,基于语义距离的领域本体概念相似度研究
[J].科技情报开发与经济,2011(05).
一翟麓程馏
本文档为【词语相似度算法的分析与改进】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。