[doc格式] 基于HowNet的词语语义相似度计算模型研究
基于的词语语义相似度计算模型研
究
第7卷第4期
2008年4月
软件导刊
VoI.7NO.4
Apr.2008
基于的词语语义相似度计算模型研究
高雪霞
(新乡学院计算机科学系,河南新乡)
摘要:知识库的义原网状结构的存在,使针对义项间的关系
运算成为可能.针对传统词语相似度计算存在
的偏差.提出了相应的改进算法,使词语相似度计算更加准确,合理.
关键词:;相似度计算模型;义项;义原
中图分类号:TP312文献标识码:A文章编
号:1672—7800(2008)04—0030—03
O引言
是一个以汉语和英语的词语所代表的概念为描述
对象.以揭示概念与概念之间以及概念所具有的属性之间的关
系为基本内容的常识知识库.中含有丰富的词汇语义
知识和世界知识.为自然语言处理和机器翻译等方面的研究提
供了宝贵的资源.
由于知识库中的义原网状结构的存在,使针对义
项间的关系运算成为可能.本文针对传统词语相似度计算存在
的偏差.提出了相应的改进算法,使词语相似度计算更加准确,
合理.
1词语语义相似度计算原理
在中不管现有的词语有多少个,它们都是用1500
多个义原来定义的(就是说不管词如何多如何变,1500多个基
本义原是固定不变的),不同的词语只要意思相同就一定会用
相同或者相近的义原来定义(比如同义词,近义词),因此它们
的相似度应该是相同或者相近的,基于此原理本文经过分析和
研究建立起适合本系统的词语语义相似度计算模型.
2基于的词语相似度计算模型
是董振东提出的一个常识知识库:”是一个
以汉语和英语的词语所代表的概念为描述对象,以揭示概念与
概念之间以及概念所具有的属性之间的关系为基本内容的常
识知识库.”因此,这个知识库全部是由概念组成,这个概念称
作义项.而每个义项均是由有限个更小的元概念规范地表达出
来.这个元概念称作义原,这些义原的数量是基本保持不变的,
成为表达整个的基源.而的精髓更在于:”关系
是词汇语义的灵魂,只有通过’关系’才可能教会计算机懂得或
在某种程度上懂得’语义’,也只有通过’关系’才可能教会计算
机对语义进行运算.”这个关系灵魂称作动态角色,~1]:agent(施
事),isa(类指),(部分)等,共89种.~3/.项用其知识
词典描述语言(KDML),把义原和动态角色形式化表达出来,如:
大夫(DEF=人,#~n位,~curel医治,医).
用于词语相似度计算的主要对象就是其概念表达式
fDEF).相似度计算就是对概念表达式(DEF)的有效利用和研
究.本文将的DEF表达式形式化为一个四元组:
DEF=
firM={md;
indMG={ml,m2,…,113.k}
symMG=f,,…,
M);
relMG={,,…,
Mrq>};
其中,firM,indMG,symMG,relMG为DEF表达式的首义原,
独立义原组,符号义原组,关系义原组,=l,>=0,f
>=0.>=0;Mf,HNsym,HNrel为中定义
的
义原,符号义原,关系义原.例如”大夫”的概念表达式四元组
为:
DEF=({人},{~},{,l,),用作为常识知识库,与的最大
不同在于具有推理能力,动态角色使中的义项
组织成一个有机的,有意义的群体,这个义项的群体恰恰蕴含
了语言信息的语义.
基于的词语相似度计算的研究,国内学者提出过
多种计算方法.进一步分析发现,这些方法存在所得平位词语
相似度不高,领属关系概念区分不明显的缺陷.本文采用”词语
相似度分层计算”的思想,并做进一步完善,使计算层次更加清
晰,严整,并针对发现的不足提出改进算法.中一个词
作者简介:高雪霞(1974~),女,河南长垣人,硕士,新乡学院计算机科
学系讲师,研究方向为网络数据库,自然语言理解.
第4期高雪霞:基于的词语语义相似度计算模型研究?31-
语可具有多个义项.而一个义项又可能会由多个义原来表达.
因此.基于计算词语相似度方法具有3个层次:词语相似
度,义项相似度,义原相似度.词语的相似度计算将转换为义项
相似度计算,而义项相似度计算也将解析为若干义原的相似度
计算.
2.1词语间的语义相似度计算
一
个词语可以蕴涵多个概念W{C,C:…,G},其中,Wk
为词语,G为义项,IWJ>l.考虑到计算的可操作性和算法的复
杂性,则对于两个词语的相似度Sim(W,,有两种运算方法:
假设概念1有m个义项CC12,……ClM;2有it个义项1,C,
…
.C.
第一种算法:对两个词语间义项的任意两两配对计算相似
度并求相似度和的最大值.最后除以两个词语所包含的义项中
最小义项个数.计算如公式(1)所示:
Sim(W1,W2)=
fSim(C,C:)W,W只包含一个义项
1主s(cC)州I,IW:1)其它()
其={c舞
∑=1,12一,m
j=l
∑1,12一,n
引入变量是为约束词汇中的第i个义项c”只能和Wz中
的义项匹配一次,中的第个义项只能和,中的义项匹配
一
次.对两个词语间义项的任意配对计算相似度并求相似度和
的最大值的问题,完全符合匈牙利算法的条件,可以用匈牙利
算法来解决.
第二种算法:对两个词语间义项的任意两两组合计算相似
度,取最大义项相似度作为该词语对的相似度.计算如公式(2)
所示:
Sim(W,Wz)=.
max
Sim(C)(2)
这样,我们就把两个词语之间的相似度问题归结到了两个
义项之间的相似度问题.这两种算法各有优劣,前者得到的结
果相对平均接近于中间值,但有可能降低两个词语之间的实际
相似度;后者得到的是两个词语的义项配对后的最大相似度,
但有可能提高两个词语之间的实际相似度.由于在分词阶段
“词义排岐”(能根据词语所在上下文确定该词语的正确解释义
项)还是一个无法解决的问题,因此两种算法考虑的都是孤立
的两个词语的相似度.从系统的运行效率考虑我们采用第二种
算法.
2.2 义项间的相似度计算
中义项的相似度计算,均要通过义项的概念表达
式(DEF)进行计算,两个义项的相似度Sim(Ci,cj)由DEF 中的四
元组对应部分的相似度加权求和得到.数学模型如公式(3)所
示:
Sim2=Sim(indG,~ndVj)
Sim3=Sire(sysMG,)
Sim4=Sire(~)
Sim(S1,S:)=BiSim(3)
i=1
其中,Sim 为DEF 中对应四元组的相似度,为对应四元组相似
度权值,其中,卢(1≤≤4)是可调节的参数,且有:卢3 帆=
1,≥≥≥.后者反映了Sim到 对于总体相似度所起
到的作用依次递减.
在实验中发现,如果Siml 非常小,但Sim3 或者Sim4 比较大,
将导致整体的相似度仍然比较大的不合理现象.因此我们对公
式(3)进行了修改,得到公式(4)如下:
4k
111
Sim(Ci,e)=Sim)(4)
:1t=l
其意义在于,第一独立义原描述式反映了一个概念最主要
的特征,如果两个概念的第一独立义原相似度值低,那么这两
个概念之间的相似度值也一定低.在修改后的公式中主要部分
的相似度值对于次要部分的相似度值起到制约作用.也就是
说,如果主要部分相似度比较低,那么次要部分的相似度对于
整体相似度所起到的作用也要降低.
对于的取值,应视计算需要调整参数.在机器翻译,文本
处理的特征消减等领域中相似度计算着眼于词语的可替代性.
DEF 中firM.indMG 反映义项本身的基本特征和次要特征.因此
,/3:应调整为较大值;然而,如果相似度计算着眼于词语间的
相互关系,DEF 中symMG,relMG 反映义项的推理特征和联想特
征,则应调整为较大值.本系统中的取值采用