基于语义和TF―IDF的项目相似度计算方法

时间:2022-05-02 04:50:29

基于语义和TF―IDF的项目相似度计算方法

摘 要: 基于统计的TF-IDF相似度计算方法由于不考虑词语的语义信息,不能准确地反映文本间的相似性。针对该问题,提出一种结合语义理解和TF-IDF的科技项目相似度计算方法。在项目分词的基础上,利用《知网》计算两个项目间的特征项语义相似度,基于TF-IDF计算每个特征项的权重,然后针对权重大于给定阈值的特征项进行加权进而计算得到项目相似度值。实验结果表明,该方法效果优于单纯的TF-IDF和语义理解的方法。

关键词: TF-IDF; 语义理解; 《知网》; 特征项权重; 相似度计算

中图分类号:TP391.1 文献标志码:A 文章编号:1006-8228(2015)05-01-03

Abstract: TF-IDF(term frequency - inverse document frequency)is one of the traditional text similarity calculation method based on statistics. Because TF-IDF does not consider the semantic information of words, it can not accurately reflect the similarity between texts. Aiming at this problem, this paper advances a method combined with the semantic understanding and TF-IDF to calculate the similarity of technology project. Based on the word segmentation of the technology project and the information from the HowNet, calculates the feature semantic similarity of the two between, then calculates weight of each feature by using TF-IDF, and finally calculates the similarity value of the technology project according to the weight of the features that their weight is greater than the given threshold. The experimental results show that the method is better than the pure TF-IDF and the method of semantic understanding.

Key words: TF-IDF; semantic understanding; HowNet; weight of feature; similarity calculation

0 引言

我国每年都有大量的科技项目申报,迫切需要一种智能的项目分析和“”的工具防止项目重复申报的问题。因此,对项目“”系统中的关键技术――文本相似度计算的研究非常有必要。

目前常见的文本相似度计算方法主要有基于概率统计的和根据某种世界知识体系进行语义理解的。基于统计的方法中一般采用基于向量空间模型的TF-IDF方法。该方法充分考虑了每个词项的统计信息但是缺乏对词项的语义的理解,因此无法准确的衡量文本之间的相似度。基于语义理解的一般是先利用某种知识库来计算词项之间的语义相似度[1]从而计算文本之间的相似度。Wang[2]和金博[4]等人分别基于WordNet和《知网》来计算文本的相似度。肖志军等人提出利用《知网》的义原空间来计算文本相似度[5]。廖开际等人提出通过加权语义网来计算文本的相似度[6]。这些方法考虑了词项的语义信息,但忽略了不同特征项对文本的重要程度是不同的。通过对上述文本相似度方法进行分析,本文提出一种结合TF-IDF和语义理解的相似度计算方法,并用于科技项目的相似度计算中。

1 相关工作

1.1 向量空间模型和TF-IDF

向量空间模型(Vector Space Model)由Gerard Salton等人于1975提出。向量空间模型中文本被以形式化的向量的形式给出,然后通过对向量的处理来表示对文本的处理。向量空间模型最常用也比较有效的是TF-IDF,也就是词频-反向文档频率方法。

TF-IDF被定义为:TFIDF(wi)=tf(wi)×idf(wi)=tf(wi)×log(N/df(wi))。其中tf(wi)表示词项wi在文本中出现的频率,表示的是词项在文本中的重要性,idf(wi)表示wi的逆向文件频率,是文本集合总数和出现当前词项的文本数的比值,表示的是词项在文本库中的普遍性。TF-IDF就是特征频率(TF)和逆向文件频率(IDF)的乘积。

可以看出,TF-IDF综合考虑特征词在文档中的重要性和在语料库中的普遍性,TF-IDF值较高的词项对文本的语义贡献较大,重要程度较高,能最大程度代表当前的文本。

1.2 基于语义理解的文本相似度计算

基于语义理解的相似度计算不需要大规模的语料库训练,一般是利用某种知识规则或分类体系来计算词语之间的距离。国内的刘群等人提出了利用《知网》来计算词语之间的义原距离从而计算词语之间的相似度[3]。《知网》是一个描述词语概念及概念属性之间关系的一个常识知识库。其中每个词语都可以用多个“概念”进行描述,而每个概念又可以由一种“知识表示语言”表示为“义原”的树状结构。

刘认为两个词语之间的相似度可以通过其“概念”之间的相似度来衡量。对于两个词语W1和W2,W1可以表示为S11、S12、S13…S1n等概念集合,W2可以表示为S21、S22、S23...S2m,那么W1和W2之间的相似度就是“概念”中相似度最大值:

而两个概念之间又可以通过计算“义原”之间的距离来计算其相似度:

其中p1、p2表示两个“义原”,d表示在义原层次结构中两个“义原”的距离,?是一个调节参数。

刘等人给出了利用《知网》计算两个词语之间的相似度的方法,金博等人在此基础上利用刘的词语相似度计算方法提出了基于语义理解的句子的相似度计算并推广到文本的相似度计算。两个句子的相似度计算过程如下:句子N1和N2可以表示为N1=(w11,w12,w13…w1n)和N2=(w21,w22,w23…w2n),其中w是句子分词之后的特征项(本文不讨论词性的问题),则N1和N2的相似度矩阵为:

其中w1iw2i=sim(w1iw2i),采用刘等人提出的基于语义计算两个词语之间的相似度。遍历矩阵选择相似度最大的词语之间的相似度值作为计算因子,并删除词语所在的行和列,直到矩阵为0行0列。则N1和N2之间的相似度为:

2 项目相似度计算方法

在对项目相似度计算之前要进行一些分词、去除停用词等预处理工作和特征项的选取,接着进行项目的知识表示,然后在此基础上进行文本相似度计算。

2.1 特征项选取及权重计算

首先利用ICTCLAS进行科技项目分词,然后基于哈工大停用词库进行停用词的去除。由于科技项目含有很多专业名词,因此把一些对文本语义没有贡献的名词放入停用词库,并进行停用词库的更新。采用基于统计的方法来进行特征项的选择。计算每个词项的TF-IDF值,并把该值作为特征项的权重,然后根据TF-IDF值进行排序,选取值大于阈值Y的词项作为该科技项目的特征项。这样既选择了文档中最具代表性的词汇又使特征项的维数不至于太高,提高计算效率。

2.2 科技项目的知识表示

文献[7]提出了科技项目管理中一种基于可拓学的知识表示方法,用来把科技项目模型化理论化。在此基础上结合向量空间模型,提出一种针对科技项目的知识表示模型,方便后续的研究计算。

科技项目的知识表示模型表示为项目自身描述向量和属性描述向量的集合向量。可以用PM=(P,T,W)来表示,其中PM表示科技项目知识文本,P表示科技项目本身描述向量,T为属性集合,W为属性量值向量。向量P可以用P=(x,y,z,…)来表示,其中x,y,z分别是科技项目类型,项目的惟一标示id,申请书具有的字段个数等,如项目P1=(重大专项,2882,5,2014)。向量T可以用T=(S1,wS1,S2,wS2,…,Sn,wSn)来表示,其中Si表示第i个字段文本内容,wSi表示字段的一个权重系数。这里向量W可以用基本的向量空间模型来表示为W=(W1,W2,…,Wn),其中Wi就是一个内容项的特征向量,Wi=(wi1,wi2,…,win)。这样PM可以表示为如下:

2.3 项目相似度计算方法

观察1.2节的基于语义理解的句子相似度计算可以发现,计算相似度时只是单纯的考虑词语之间的相似度,然后相加求平均,没有考虑到不同的词项对整个文档语义的贡献是不同的,关键词权重值(也就是TF-IDF值)越大,相应在文档中的重要性就越大,对文本的相似性影响也越大。反之如果关键词权重较小,即使两个词项相似度较高,则对整个文本相似度的贡献也不会很高。而上述方法在这一点上显然没有区分关键词的重要性而直接把词项之间的相似度加权平均了。正是基于此,本文提出一种可以根据词项的权重调整单个词语的语义相似度值的文本计算方法,从而更加准确的计算文本之间的相似度。

设两个科技项目一个内容项的特征向量分别为S1=(w11,w12,w13…w1n)和S2=(w21,w22,w23…w2n),其中w1i和w2i表示特征项的权重值。定义S1和S2的相似度计算公式为:

其中A表示的是两个特征项的权重满足⑸时,它们在所有满足条件的权重中所占的比例的平均,(1+A)代表的是对特征项的权重较大且满足式⑸条件时对语义相似度的一个调整因子。A的定义如下:

式⑷中simi表示的是满足式⑸且根据1.2节提到的相似度矩阵选择的词组之间最大的一个相似度值,整个公式⑷前半部分表示的是:对所有满足式⑸的特征项根据其对文档重要程度对语义相似度值进行增大调整,调整因子是(1+A),然后利用调整之后的词项的相似度根据式⑶来计算文本之间的相似度。B和A含义相同,定义如下:

B表示的是相似度计算时不满足式⑸的特征性项的相似度值的调整因子,Λ表示满足公式⑸的特征项集合。整个公式⑷后半部分表示:对于除Λ之外的特征项由于其对整个文本的相似性影响较小,降低这部分的词项的相似度值,然后再进行文本相似度计算,具体计算方法和前半部分相同。

整个公式所表达的含义是进行基于语义理解的相似度计算时,对于那些比较重要的特性项提高它在相似度计算中所做的贡献,对于那些对文档不太重要的特征项降低其对相似度计算所做的贡献。

wl+wh>α且wlwh>β表示选取两个都比较重要的特征性,也就是当两个特征性的权重满足和、积都大于给定的阈值的时候增加它们对整个相似度计算的贡献值,用和和积来同时选择满足条件的特征性,可以防止出现其中一个词语的权重特别的大但是另一个权重比较小的情况,而只选择权重都比较大的词项。通过分析项目库中大量项目的特征项权重(TF-IDF)分布曲线,拟合和分析拐点得出α、β的经验值近似为0.2和0.01。

最后把项目中每个内容项的相似度根据权重wSi就行加权求和得到项目间的相似度计算公式为:

3 实验结果及分析

本实验采用浙江省科技项目管理系统数据库中的数据进行多次实验,每次抽取12组项目,其中,人工判定为相似的4组,不相似的4组,较为相似的4组。实验对比基于TF-IDF的相似度计算方法、金等人提出的基于语义理解的相似度计算方法以及本文方法。部分实验结果如表1及图1、图2、图3所示。

从表1和图1、图2、图3可以看出,本文方法的结果具有更好的项目区分度,使不相似的项目相似度值更小,相似的项目相似度值更大。实验结果表明,本文的方法可以更准确的判断相似和不相似的项目,相似度计算效果好于单纯的TF-IDF和语义的方法。

4 结束语

本文针对基于统计的TF-IDF的缺点,提出了一种结合TF-IDF和语义理解的文本相似度计算方法,考虑不同特征项对相似度计算贡献的不同而进行加权调整,综合利用文本的统计信息和词语的语义信息进行相似度计算。对科技项目进行相似度计算结果表明了该算法的有效性。把句子分割成词语进行语义理解和相似度计算会把原本完整的句子信息破坏,不能准确的代表原本句子的语义,因此下一步的研究可以在基于词项的相似度基础上考虑句子、段落的语义和结构信息,从而提高文本的相似度计算效果。

参考文献:

[1] Agirre E, Rigau G. A proposal for word sense disambiguation using conceptual distance, Proc of International Conference Recent Advances in Natural Language Processing (RANLP),1995:258-264

[2] Wang Y ,Julia H . Document clustering with semantic analysis//Proceedings of the 39th Hawaii International Confer-ences on System Sciences.Hawaii,US,2006:54-63

[3] 刘群,李素建.基于《知网》的词汇语义相似度计算[C].第三届汉语词汇语义学研讨会论文集,2002:59-76

[4] 金博,史彦军,滕弘飞.基于语义理解的文本相似度算法[J].大连理工大学学报,2005.45(2):291-297

[5] 肖志军,冯广丽.基于《知网》义原空间的文本相似度计算[J].科学技术与工程,2013.13(29):8651-8656

[6] 廖开际,杨彬彬.基于加权语义网的文本相似度计算的研究[J].情报杂志,2012.31(7):182-186

[7] 李海峰,党延忠.科技项目管理中知识的界定与表示方法研究[J].项目管理技术,2010.8(2):29-34

上一篇:家访,一个重温的梦 下一篇:幸福婚姻什么样