发明名称 一种基于目标文本的计算文本相似度的方法
摘要 本发明公开了一种基于目标文本的计算文本相似度的方法。为了克服现有文本相似度算法单纯地考虑算法的准确率和效率,本发明结合项目实际情况综合考虑算法的准确率和效率两方面,保证在一定准确度的前提下提高算法的效率。在提高算法准确度方面,本发明充分考虑专业词汇对相似度计算的影响,采用了对不同类别的关键词加权的方式计算相似度;而在提高算法效率方面,本发明采用倒排索引聚类方法和维过滤方法。本发明既保证了文本之间的专业相关度计算的准确度,同时又兼顾了计算效率。
申请公布号 CN103207905B 申请公布日期 2015.12.23
申请号 CN201310105450.2 申请日期 2013.03.28
申请人 大连理工大学 发明人 孔祥杰;宋秀苗;夏锋
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 大连理工大学专利中心 21200 代理人 关慧贞;梅洪玉
主权项 一种基于目标文本的计算文本相似度的方法,其特征在于包括以下步骤:(1)获取目标文本和待计算相似度的文本集合:获得目标文本和文本集合D后组成一个新的文本组合textSet,首先将所有的文本进行唯一id编号处理,目标文本用id号区分,其他文本按照输入的先后顺序依次编号;(2)自动分词获取各文本的特征向量,包括以下步骤:(2.1)去停用词;(2.2)匹配专业关键词和常用关键词;(2.3)同义词转换;(2.4)统计各关键词在各文本中出现的频率,关键词的词性;(2.5)计算各关键词的权值,创建特征向量;关键词的权值计算公式为:ω(T<sub>i</sub>)=α·β·TF(T<sub>i</sub>)·IDF(T<sub>i</sub>)其中ω(T<sub>i</sub>)为关键词T<sub>i</sub>的权值,TF(T<sub>i</sub>)=N/M,其中N为T<sub>i</sub>关键词在含M个关键词的文本中出现的次数,IDF(T<sub>i</sub>)=log(D/D<sub>w</sub>)其中D为文章总数,D<sub>w</sub>为T<sub>i</sub>关键词出现过的文章数;专业词汇IDF的计算以该词汇所属的专业领域的文章总数和该关键词出现在该专业领域内的文章总数;α为关键词类别决定关键词权值的一个因子,其中专业词汇&gt;常用词汇;β为关键词词性决定关键词权值的另一因子,其中名词&gt;形容词&gt;副词;(3)聚类:首先为待计算文本集合创建倒排索引文件,然后以目标文本的专业词汇向量中的专业词汇为基础,搜索倒排索引文件,由于倒排索引文件中的关键词是按照关键词拼音的字母顺序排列的,采用二分法查找将倒排索引文件中含有目标文本中专业词汇的文件找出来,并将区分这些文本的唯一标识id放到集合C中;(4)维过滤:首先为目标文本和集合C中的文本建立一个共同的倒排索引文件,然后根据建立的倒排索引文件创建一个存储各文本相应的关键词权值的矩阵M;矩阵M的列数为倒排索引文件中关键词的个数加1,矩阵M的行数为集合C中文本的个数加1,矩阵的第一列存储文本的id号,矩阵的第一行存储目标文本的特征向量;把目标文本中权值为0的列全部去掉,得到一个新矩阵M′,统计其他文本去掉的列中非0的列数并保存;(5)计算相似度:利用步骤(4)维过滤后得到的矩阵M′,其中矩阵M′中的一行就代表维过滤后的某一文本的特征向量,然后计算目标文本向量即矩阵中的首行向量和其他各行向量之间的相似度。
地址 116024 辽宁省大连市凌工路2号