一种基于汉语复句的语义相关度计算方法技术领域
本发明涉及中文信息处理领域,是一种应用于信息检索系统、文档自动文摘、问答
系统、机器翻译中的关键技术,具体说的是一种基于汉语复句的语义相关度计算方法。
背景技术
语义相关度计算是中文信息处理领域的重要研究课题,在信息检索、语义消岐、文
本分类中起着重要的作用。
语义相关度的计算方法主要有三类:基于词典的方法、基于统计的方法、基于维基
百科的方法。基于词典的方法主要是利用WordNet、HowNet两种语义词典进行计算。基于统
计的方法主要通过统计词语在语料库中出现的频率来计算语义相关度。基于维基百科的方
法主要是用WikiRelated算法进行语义相关度计算。
基于语义词典的计算方法的核心是语义词典,而语义词典在很大程度上受规模和
构建者的影响,所以基于语义词典的语义相关度计算方法正确率不高。基于统计的语义相
关度计算方法一般是以计算机为载体承载的语言知识资源为基础,对语料信息进行挖掘,
通过统计的方法计算其相关度,与基于词典的方法相比其准确率有了很大提高。基于维基
百科的方法把需要计算语义相关度的两个词语放到维基百科中查找,然后通过查找得到的
页面和类别等信息计算出词语的相关度,维基百科能够获取词典或语料中未收录的词,但
其搜索的词大多数处于不同的语境下因而影响了准确率。
发明内容
本发明的目的是为了克服上述现有技术的不足之处,提出一种基于汉语复句的语
义相关度计算方法,它能够解决词典规模受限、不同语境对语义相关度影响的问题,进而提
高相关度计算的准确率。同时,本发明还能标明相关度的性质与类别。
本发明的目的是由以下技术方案实现的。
一种基于汉语复句的语义相关度计算方法,给定两个特定的词语c1、c2,计算c1、
c2之间的语义相关度,该方法包括以下步骤:
(1)在汉语复句语料库(CCCS)中,假设汉语复句语料库的总词量为W1,给定词c1在汉语
复句语料库中出现的频数记为f(c1),给定词c2在汉语复句语料库中出现的频数记为f
(c2),给定词c1与c2同时在一条复句中出现的频数记为f(c1,c2);
(2)对汉语复句语料库中抽取的复句进行依存句法分析,计算给定词c1和c2之间间隔
的单词数,该单词数为c1和c2之间的跨度d;同时提取该复句不同分句中的关系标记以及关
系标记间的搭配距离m;
(3)假设搜索引擎的总索引量为W2,利用搜索引擎搜索给定词c1,其在网页中出现的
频数记为f(c1’),利用搜索引擎搜索给定词c2,其在网页中出现的频数记为f(c2’),给定
词c1、c2在网页中同时出现的频数记为f(c1’,c2’);
(4)令W=W1+W2,F(c1)=f(c1)+f(c1’),F(c2)=f(c2)+f(c2’),F(c1,c2)=f(c1,c2)+f
(c1’,c2’),其中,F(c1)、F(c2)为c1、c2在汉语复句语料库和搜索引擎中共出现的频数,F
(c1,c2)为c1、c2在汉语复句语料库和搜索引擎中共现的频数,为了尽可能将计算结果压缩
在[0,1]区间内,对词语出现的频数取对数再进行概率计算,c1的概率计算公式为:
;
(5)给定词c1与c2共现的概率为:;
(6)根据关系标记搭配理论,将词语共现作为语义相关度计算的考虑因素之一,提出如
下语义相关度计算公式:;其
中λ是一个可调节参数,其取值范围是0~1;
(7)相关度结果以向量V(v1,v2,…v13)的形式表示,其中,v1~v12分别表示12种关系类
别:因果、推断、假设、条件、目的、并列、连贯、递进、选择、转折、让步、假转的值,v13为其它
不明确类型的相关度。
在上述技术方案中,步骤(2)中所述的依存句法分析的具体方式为使用哈尔滨工
业大学开发的语言云平台LTP-Cloud,调用相应的API接口对语句进行依存句法分析。
在上述技术方案中,步骤(2)中所述的提取关系标记以及关系标记搭配距离m的具
体方式为利用匹配算法,将复句中的词与汉语复句关系词搭配库(该库由华中师范大学建
立,并记载于《复句关系标记的搭配研究》一书中)中的词进行匹配提取关系标记和关系标
记搭配距离m。
在上述技术方案中,步骤(2)中计算给定词之间的跨度d的具体方式为使用依存句
法分析后的语句,分词后的语句都有位置标志,该标志记录词语在复句中所处的位置,提取
给定词的位置标志,进行相减得到给定词之间的词间距,即跨度d。
在上述技术方案中,统计给定词出现的频数和共现频数的具体方式为利用查找的
方式统计给定词在汉语复句语料库中出现的频数,或将给定词放在搜索引擎上进行搜索,
获取网页中返回的结果总数,将在汉语复句语料库中出现的频数和搜索引擎返回的结果数
相累加则为给定词出现的频数。
本发明方法考虑了词语共现、关系标记搭配距离、词间距对语义相关度的影响,不
仅能够计算词语的相关度,而且能够表明相关的性质与类别。与通过短文计算相关度的方
法相比,本方法选取的计算对象范围小,因而结果更准确,且计算复杂度小。
具体实施方式
下面对本发明作进一步的详细描述。
本发明的实质是利用搜索引擎和汉语复句语料库统计特定词语的频率,词语在搜
索引擎中搜索到的句子中共现的频率与已有的汉语复句语料库中共现的频率需要设置适
当的系数进行调和。词语共现在不同类别复句中,复句的类别对整体相关度影响也不同,需
要设计相应的系数。
本发明方法的具体实施步骤如下:
(1)在汉语复句语料库(CCCS)中,假设汉语复句语料库的总词量为W1,给定词c1在汉语
复句语料库中出现的频数记为f(c1),给定词c2在汉语复句语料库中出现的频数记为f
(c2),给定词c1与c2同时在一条复句中出现的频数记为f(c1,c2);
(2)对汉语复句语料库中抽取的复句进行依存句法分析,计算给定词c1和c2之间间隔
的单词数,该单词数为c1和c2之间的跨度d;同时提取该复句不同分句中的关系标记以及关
系标记间的搭配距离m;如表1所示,记录的是关系标记的搭配距离部分数据表,该搭配距离
可在汉语复句关系词搭配库中直接提取。
表1
(3)假设搜索引擎的总索引量为W2,利用搜索引擎搜索给定词c1,其在网页中出现的
频数记为f(c1’),利用搜索引擎搜索给定词c2,其在网页中出现的频数记为f(c2’),给定
词c1、c2在网页中同时出现的频数记为f(c1’,c2’);
(4)令W=W1+W2,F(c1)=f(c1)+f(c1’),F(c2)=f(c2)+f(c2’),F(c1,c2)=f(c1,c2)+f
(c1’,c2’),其中,F(c1)、F(c2)为c1、c2在汉语复句语料库和搜索引擎中共出现的频数,F
(c1,c2)为c1、c2在汉语复句语料库和搜索引擎中共现的频数,为了尽可能将计算结果压缩
在[0,1]区间内,对词语出现的频数取对数再进行概率计算,c1的概率计算公式为:
;
(5)给定词c1与c2共现的概率为:;
(6)根据关系标记搭配理论,在一定的语境下,词语共现在一定程度上可以反映词c1和
c2的语义相关度。基于此,本发明方法提出如下语义相关度计算公式:
;其中λ是一个可调节参数,其
取值范围是0~1,实验证明当λ取值为0.3时,效果最佳;
(7)相关度结果以向量V(v1,v2,…v13)的形式表示,其中,v1~v12分别表示12种关系类
别:因果、推断、假设、条件、目的、并列、连贯、递进、选择、转折、让步、假转的值,v13为其它
不明确类型的相关度,例如无标复句的关联类别。如“既有硬件,又有软件。(并列复句)”一
句中,“软件”、“硬件”两词进行语义相关度计算,得到的结果为(0,0,0,0,0,0.17101624,0,
0,0,0,0,0,0),其中向量中的0.17101624代表的是“软件”与“硬件”的并列复句的语义相关
度。
如表2所示,为利用本发明方法与利用百度搜索引擎计算语义相关度的实验测试
部分示例结果表。
表2
综上所述,本发明方法涉及的一种基于汉语复句的语义相关度计算方法,利用汉语复
句关系标记及搭配理论的研究成果,不仅计算出两个词语的相关度,同时标明了相关度的
“性质与类别”,有利于更加准确理解词语的语义,计算结果更加准确,计算复杂度更小,有
广泛的应用前景。