短文本相似度计算方法及系统技术方案

技术编号:18553560 阅读:22 留言:0更新日期:2018-07-28 10:43
本发明专利技术提供了一种短文本相似度计算方法,包括以下步骤:S1、对训练语料进行分词,利用word2vec算法得到每个词的词向量,并组合形成词向量集合;S2、分别对待计算短文本进行分词,在词向量集合中找到待计算短文本的每个词语的词向量,并组合形成短文本向量集合;S3、计算词向量集合中每个词向量与短文本向量集合中每个词向量的余弦相似度,并得到每个词向量的最大相似度值组合得到短文本句子向量;S4、计算两个短文本句子向量间的相似度,即可计算两个短文本间的相似度。本发明专利技术还提供了一种短文本相似度计算系统。本发明专利技术的相似度算法通过将短文本句子以句子向量表示,有效的刻画了短文本句子之间的语义相似度,准确率高。

【技术实现步骤摘要】
短文本相似度计算方法及系统
本专利技术属于短文本相似度
,具体涉及一种短文本相似度计算方法及系统。
技术介绍
随着计算机科学技术和互联网的迅猛发展,越来越多的数据以短文本的形式出现在互联网上,例如微博消息、新闻标题、贴吧言论等。针对互联网短文本数据应用分类、聚类等机器学习技术,从中挖掘出有价值的信息为人们的生活提供有用的便利,以满足不同方面的需要成为目前大数据应用技术中一个非常热门的课题。然而中文短文本具有词语稀疏、语义离散、用词随意等特点,这为中文短文本的研究带来了极大的挑战性,因此对短文本数据进行挖掘并对其内在含义进行准确的认知成为一个迫在眉睫的任务,并且具有十分重要的理论研究意义。目前关于中文短文本相似度计算的方法,主要采用向量空间模型(VSM)来表示文本,进而实现文本的相似度计算。在该模型中,文本内容被形式化为多维空间中的一个点,通过向量的形式给出,把对文本内容的处理简化为向量空间中向量的运算,使问题的复杂度降低。通过这种方式对短文本进行分析处理主要存在以下两点问题,第一个是由于短文本特征词的稀疏性,使得其利用常用文本的算法处理时由于文本向量过于稀疏,导致在聚类时效果不理想,无法达到长文本相当的效果;第二个是利用向量空间模型来表示文本只考虑了词在上下文中的统计特性,基于关键词之间线性无关的假设条件,而没有考虑词本身的语义信息,因此具有很大的局限性,不能准确的表达句子内在的语义含义。
技术实现思路
本专利技术的一个目的是解决上述问题,并提供至少后面将说明的优点。本专利技术还有一个目的是提供一种短文本相似度计算方法,利用深度学习word2vec算法训练得到训练语料中的每个词的词向量,计算词向量集合中每个词向量与短文本向量集合中每个词向量的余弦相似度,得到词向量集合中每个词向量的最大相似度值,将每个词向量的最大相似度值组合得到短文本句子向量,然后采用余弦相似度算法计算短文本句子向量之间的相似度,有效的刻画了短文本句子之间的语义相似度。为了实现根据本专利技术的这些目的和其它优点,提供了一种短文本相似度计算方法,包括以下步骤:S1、获取训练语料,对训练语料进行分词,利用深度学习word2vec算法对训练语料进行训练,得到训练语料中的每个词的词向量(a1i,a2i,a3i…),然后将每个词向量组合形成词向量集合S;S=((a11,a21,a31…),(a12,a22,a32…),(a13,a23,a33…),…(a1i,a2i,a3i…)…(a1N,a2N,a3N…))S2、分别对待计算短文本进行分词,在词向量集合中找到待计算短文本分词后的每个词语对应的词向量wordi,并组合形成短文本向量集合sen;sen=(word1,word2,word3,…wordi…wordM)S3、采用余弦相似度公式计算词向量集合中每个词向量与短文本向量集合中每个词向量的余弦相似度,并得到词向量集合中每个词向量的最大相似度值maxi,将每个词向量的最大相似度值maxi组合得到短文本句子向量senVec;senVec=(max1,max2,max3,…maxi…maxN);S4、采用余弦相似度公式计算两个短文本句子向量间的相似度,即可计算两个短文本间的相似度。优选的是,所述的短文本相似度计算方法,S1中获取训练语料的方法为:获取语料数据,除去语料数据中非文字类数据得到训练语料;在得到训练语料中的每个词的词向量后,去掉语料数据中停用词以及词频小于预设阈值的词对应的词向量,余下的词对应的词向量组合形成词向量集合S,预设阈值位于5~10之间。优选的是,所述的短文本相似度计算方法,S2中通过HMM模型以及Viterbi算法对待计算的短文本以及训练语料进行分词。优选的是,所述的短文本相似度计算方法,所述语料数据通过爬虫技术获得。优选的是,所述的短文本相似度计算方法,S4中当相似度值大于0.7时,则认为两个短文本句子间在语义上是相似的。本专利技术还提供了一种短文本相似度计算系统,包括:训练语料分词模块,其用于获取训练语料并对训练语料进行分词;词向量训练模块,其与训练语料分词模块连接,所述词向量训练模块用于对训练语料进行训练得到训练语料中的每个词的词向量,然后将每个词向量组合形成词向量集合;短文本分词模块,其用于对待计算的短文本进行分词得到多个词语;短文本向量生成模块,其与词向量训练模块连接,短文本向量生成模块用于在词向量集合中找到分词后的每个词语对应的词向量,并将分词后的每个词语的词向量组合形成短文本向量集合;第一相似度计算模块,其与词向量训练模块、短文本向量生成模块连接,所述第一相似度计算模块用于计算词向量集合中每个词向量与短文本向量集合中每个词向量的余弦相似度;比较模块,其与词向量训练模块连接,所述比较模块用于将词向量集合每个词向量的相似度值进行比较,并得到词向量集合中每个词向量的相似度的最大值;短文本句子向量生成模块,其与比较模块连接,所述短文本句子向量生成模块用于将词向量集合中每个词向量的最大相似度值组合得到短文本句子向量;第二相似度计算模块,其与短文本句子向量生成模块连接,所述第二相似度计算模块采用余弦相似度公式计算短文本句子向量间的相似度。优选的是,所述的短文本相似度计算系统,所述训练语料分词模块包括:获取单元,其用于获取训练语料;分词单元,其与获取单元连接,所述分词单元用于对训练语料进行分词。优选的是,所述的短文本相似度计算系统,所述词向量训练模块包括:词向量训练单元,其用于对训练语料进行训练得到训练语料中的每个词的词向量;词向量组合单元,其与词向量训练单元连接,所述词向量组合单元用于将每个词向量组合形成词向量集合。优选的是,所述的短文本相似度计算系统,短文本向量生成模块包括:查找单元,其用于在词向量集合中找到分词后的每个词语对应的词向量;短文本向量组合单元,其与查找单元连接,所述短文本向量组合单元用于将分词后的每个词语的词向量组合形成短文本向量集合。本专利技术至少包括以下有益效果:1、本专利技术利用深度学习word2vec算法对训练语料进行训练,并得到训练语料中的每个词的词向量,以词向量的形式表示词语,有效的表达了词语真正的内在含义;然后将每个词向量组合形成词向量集合,分别对待计算短文本进行分词,采用余弦相似度公式计算词向量集合中每个词向量与短文本向量集合中每个词向量的余弦相似度,并得到词向量集合中每个词向量的最大相似度值,将每个词向量的最大相似度值组合得到短文本句子向量,即以实数向量的形式表示一个短文本句子,将短文本通过算法转化为数学向量表示形式,这样建立的短文本句子向量充分考虑句子词语的内在语义含义;然后采用余弦相似度算法计算短文本句子向量之间的相似度,有效的刻画了短文本句子之间的语义相似度,具有较高的准确率,为后续短文本聚类、分类等自然语言处理任务建立有力技术支撑。本专利技术的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本专利技术的研究和实践而为本领域的技术人员所理解。附图说明图1为本专利技术的短文本相似度计算方法的流程示意图;图2为本专利技术的短文本相似度计算系统组成示意图。具体实施方式下面结合附图对本专利技术做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。应当理解,本文所使用的诸如“具有”、“包含”以及“包括”本文档来自技高网...

【技术保护点】
1.一种短文本相似度计算方法,其特征在于,包括以下步骤:S1、获取训练语料,对训练语料进行分词,利用深度学习word2vec算法对训练语料进行训练,得到训练语料中的每个词的词向量(a1i,a2i,a3i…),然后将每个词向量组合形成词向量集合S;S=((a11,a21,a31…),(a12,a22,a32…),(a13,a23,a33…),…(a1i,a2i,a3i…)…(a1N,a2N,a3N…))S2、分别对待计算短文本进行分词,在词向量集合中找到待计算短文本分词后的每个词语对应的词向量wordi,并组合形成短文本向量集合sen;sen=(word1,word2,word3,…wordiwordM)S3、采用余弦相似度公式计算词向量集合中每个词向量与短文本向量集合中每个词向量的余弦相似度,并得到词向量集合中每个词向量的最大相似度值maxi,将每个词向量的最大相似度值maxi组合得到短文本句子向量senVec;senVec=(max1,max2,max3,…maxi…maxN);S4、采用余弦相似度公式计算两个短文本句子向量间的相似度,即可计算两个短文本间的相似度。

【技术特征摘要】
1.一种短文本相似度计算方法,其特征在于,包括以下步骤:S1、获取训练语料,对训练语料进行分词,利用深度学习word2vec算法对训练语料进行训练,得到训练语料中的每个词的词向量(a1i,a2i,a3i…),然后将每个词向量组合形成词向量集合S;S=((a11,a21,a31…),(a12,a22,a32…),(a13,a23,a33…),…(a1i,a2i,a3i…)…(a1N,a2N,a3N…))S2、分别对待计算短文本进行分词,在词向量集合中找到待计算短文本分词后的每个词语对应的词向量wordi,并组合形成短文本向量集合sen;sen=(word1,word2,word3,…wordiwordM)S3、采用余弦相似度公式计算词向量集合中每个词向量与短文本向量集合中每个词向量的余弦相似度,并得到词向量集合中每个词向量的最大相似度值maxi,将每个词向量的最大相似度值maxi组合得到短文本句子向量senVec;senVec=(max1,max2,max3,…maxi…maxN);S4、采用余弦相似度公式计算两个短文本句子向量间的相似度,即可计算两个短文本间的相似度。2.如权利要求1所述的短文本相似度计算方法,其特征在于,S1中获取训练语料的方法为:获取语料数据,除去语料数据中非文字类数据得到训练语料;在得到训练语料中的每个词的词向量后,去掉语料数据中停用词以及词频小于预设阈值的词对应的词向量,余下的词对应的词向量组合形成词向量集合S,预设阈值位于5~10之间。3.如权利要求1所述的短文本相似度计算方法,其特征在于,S2中通过HMM模型以及Viterbi算法对待计算的短文本以及训练语料进行分词。4.如权利要求2所述的短文本相似度计算方法,其特征在于,所述语料数据通过爬虫技术获得。5.如权利要求1所述的短文本相似度计算方法,其特征在于,S4中当相似度值大于0.7时,则认为两个短文本句子间在语义上是相似的。6.一种如权利要求1所述的短文本相似度计算系统,其...

【专利技术属性】
技术研发人员:王慧汪立东王博刘春阳张旭王萌李雄
申请(专利权)人:国家计算机网络与信息安全管理中心
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1