利用句义结构特征的句子相似度计算方法技术

技术编号:14688505 阅读:80 留言:0更新日期:2017-02-23 10:51
本发明专利技术为解决社交短文本句子相似度计算的特征稀疏问题,提出利用句义结构特征的句子相似度计算方法。首先基于句义结构模型分析句子语义,并利用主题模型挖掘潜在的主题知识,根据主题‑词语分布扩充句子特征,得到基于句子本身特征的句子向量,然后引入Paragraph Vector深度学习模型学习句子上下文特征,得到基于上下文信息的句子向量,最后加权由两种句子向量计算得到的句子相似度。本发明专利技术通过深度挖掘句子的语义信息和上下文信息,更加全面、准确地刻画了句子之间的内在联系,提高了相似度计算的准确率。

【技术实现步骤摘要】

本专利技术涉及利用句义结构特征的句子相似度计算方法,属于计算机科学及自然语言处理领域。
技术介绍
句子相似度计算用于衡量两个文本内容的语义相似程度,是自然语言处理中信息检索、自动摘要等任务的基础环节。伴随社交网站的快速发展,以微博为代表的社交短文本大量涌现,其篇幅短小、表示方式多样化,由于缺失长文档的结构化信息造成传统的句子相似度计算方法无法直接适用于此类短文本的句子相似度计算。目前,根据对句子语义分析的深度不同,针对社交短文本中句子的相似度计算方法主要包括基于词特征、基于词义特征和基于句法分析特征三类。基于词特征的方法是早期的句子相似度计算方法,该方法主要是将句子视为词的线性组合,采用统计的手段计算句子的词频、词性、句长、词序等词语表层信息,典型方法包括JaccardSimilarityCoefficient字符串匹配,其通过统计两个句子中包含的相同词数目作为句子的相似度、TF-IDF词频统计方法将句子表征为向量,计算余弦距离作为相似度结果。基于词义特征的方法从语义分析的角度,通过借助语义知识资源捕捉词语的语义信息。根据利用的资源不同,分为基于语义词典的方法和基于语料库的方法。基于语义词典的方法主要是借助WordNet、HowNet等基于词义组织词汇信息的词汇数据库,结合词义消歧的技术挖掘句子中词语在给定的上下文语境下所表达的涵义,从而提高整个句子的语义分辨率。基于语料库的方法主要通过引入语言模型框架,以两个词共同出现的概率大小来推断其相似性,常用的技术是利用潜在语言分析(LatentSemanticAnalysis,LSA)方法将词-文档矩阵进行奇异值分解实现高维特征表示到低维潜在语义空间表示的空间映射。基于句法分析特征的方法通过对句子进行整体的结构分析判断句子的相似性,该方法主张句子中核心动词是支配其它成分的关键,核心动词本身不受任何成分的支配,而其他句子成分受到核心动词的支配,通过分析词语之间的依存关系来挖掘句子的语义信息,实际应用中通常只计算动词、名词和形容词等有效词以及直接依附于有效词所组成的搭配对之间的相似性来估算句子的相似度,以此避免增加噪音数据对结果带来的偏差。上述各类方法虽然从不同的分析层面计算句子的相似度,但社交短文本的实词较少,不加任何句法结构分析和对句子语义信息的挖掘,仅靠对词频、词形等表层信息的统计无法辨别词语的深层信息。基于词义特征的方法虽然考虑了词语的语义信息,但该方法受限于外部语义资源,社交短文本包含大量的未登录词、内容时效性强,由于字典的不全面和特征稀疏的影响往往造成语义信息不明确的问题。基于句法特征的方法受当前句法分析技术不成熟的限制,没有考虑句子上下文信息和深层语义信息,信息的缺失对相似度计算结果的准确性带来无法预估的影响。
技术实现思路
本专利技术为解决社交短文本句子相似度计算的特征稀疏和没有考虑深层语义信息的问题,提出利用句义结构特征的句子相似度计算方法。在综合考虑句子的语义信息和上下文信息的前提下,将多元信息加权融合,使句子信息更加全面,通过深度挖掘句子语义信息,使句子相似度计算结果不受表述方式的影响,更加全面、准确地计算句子语义的关联程度。本专利技术的设计原理为:1)基于句义结构模型(ChineseSemanticStructureModel,CSM)分析句子语义,提取句义成分,利用LatentDirichletAllocation(LDA)主题模型挖掘潜在的主题知识,根据知识库扩充句义成分对应维度的特征1112,得到基于句子本身语义信息的句子向量;2)引入ParagraphVector(PV)深度学习模型自适应地学习文本特征,得到基于句子上下文信息的句子向量;3)利用两种句子向量分别计算得到句子间的相似度,并进行线性加权,通过网格法调节优化系数,使句子相似度计算结果更加准确。具体步骤如下:步骤1,对社交短文本集进行预处理,先进行分句,然后进行分词和词性标注,去停用词。步骤2,基于利用CSM对每条句子的句义结构分析结果和利用LDA主题模型对短文本集进行分析得到的主题和词语分布,对句子进行特征扩充,并计算句子相似度。步骤2.1,在步骤1的基础上,对每条句子进行句义结构分析,提取句子的话题、述题、基本项、一般项。CSM将整个句义的语义表示为结构树的形式,具体表示为句型层、描述层、对象层和细节层四个层次。句型层指明句子的句义类型,包括简单句义、复杂句义、复合句义、多重句义四中类型;描述层中包含话题和述题,话题和述题是对句义的初步划分,是句义结构中的基本句义成分,话题定义为句义中的被描述对象,述题定义为句义中的话题的描述内容;对象层中包含谓词、基本项、一般项、语义格,语义格是对词语的语义标注,包括7种基本格和12种一般格,基本项定义为句义中与谓词具有直接联系的成分,构成一个句子语义的主干,其对应的语义格为基本格,一般项定义为句义中的修饰成分,其对应的语义格为一般格;细节层中包含句子的引申含义。步骤2.2,利用LDA主题模型对短文本集进行分析,挖掘文本中的潜在主题知识,提取文本中的主题和主题下的词语分布,得到文本-主题矩阵和主题-词语矩阵。LDA主题模型可以获取文本中的主题,可以用来对文本中的词语进行划分,同一主题下的词语具有相同或相似的语义。步骤2.3,根据话题对句子进行特征扩充,得到基于话题的句子向量。如果两个相同的词语在句子中分别充当话题和述题的一部分,则认为这两个词语具有不同的语义,定义这两个词语为不同的词语,根据此定义,对句子进行特征扩充时,应分别根据话题和述题部分对句子进行特征扩充。句子的话题部分的特征扩充具体方法为:首先提取话题下的基本项和一般项对应的词语,然后根据步骤2.2中得到的主题-词语矩阵,比较词语在不同主题下的概率,选取概率最高的主题,将该主题下的其它词语补充到句子中,作为句子的一部分,最后使用句子的所有词语作为特征,构建特征向量表示句子,其中句中原有词语所对应的维度上的取值为词语的在句中的出现次数,而扩充的词语所对应的维度上的取值按公式(1)进行计算,V=n*w(1)V是扩充词语对应维度上的取值,n是扩充词语在句子中出现的次数,w为扩充词语在对应主题下的概率值。步骤2.4,按步骤2.3的方法,根据述题对句子进行特征扩充,得到基于述题的句子向量。步骤2.5,分别基于步骤2.3和2.4得到的两种句子向量计算句子相似度,对两个相似度值进行加权,得到句子间的最终相似度值,具体计算公式如下,其中,SA和SB代表任意两个句子,sim1(SA,SB)表示两个句子的相似度值,和分别表示句子SA和SB的基于话题的句子向量,和分别表示句子SA和SB的表示基于述题的句子向量,ω为可调参数,取值范围为[0,1],用来调整两种相似度的加权系数。步骤3,将经过步骤1预处理后的所有句子输入到PV深度学习模型,利用PV模型学习文本特征,得到句子向量,并基于该句子向量计算句子间的余弦距离作为句子间的相似度,计算公式如下,其中,SA和SB代表任意两个句子,sim2(SA,SB)表示两个句子的相似度值,和分别表示用PV模型学习得到的句子向量。PV模型是一种非监督的学习方式,输入是任意长度的文本(这里文本可以是文章、段落、句子等任意形式,统称为文本),输出则是对应文本的连续分布本文档来自技高网
...

【技术保护点】
利用句义结构特征的句子相似度计算方法,所述方法包括以下步骤:步骤1,对短文本集进行预处理,先进行分句,然后进行分词和词性标注,去停用词;步骤2,结合句义结构特征和主题‑词语分布特征,对句子进行特征扩充,并计算句子相似度;步骤2.1,在步骤1的基础上,对每条句子进行句义结构分析,提取句子的话题、述题、基本项、一般项;步骤2.2,利用LDA(Latent Dirichlet Allocation)主题模型对短文本集进行分析,提取文本中的主题和主题下的词语分布,得到主题‑词语矩阵;步骤2.3,根据话题对句子进行特征扩充,得到基于话题的句子向量;步骤2.4,根据述题对句子进行特征扩充,得到基于述题的句子向量;步骤2.5,分别基于步骤2.3和2.4得到的两种句子向量计算句子相似度,对两个相似度值进行加权,得到句子间的最终相似度值,具体计算公式如下,sim1(SA,SB)=ω*SAt→·SBt→|SAt→||SBt→|+(1-ω)*SAc→·SBc→|SAc→||SBc→|]]>其中,SA和SB代表任意两个句子,sim1(SA,SB)表示两个句子的相似度值,和分别表示句子SA和SB的基于话题的句子向量,和分别表示句子SA和SB的表示基于述题的句子向量,ω为可调参数,取值范围为[0,1];步骤3,将经过步骤1预处理后的所有句子输入到PV(Paragraph Vector)深度学习模型,利用PV模型学习文本特征,得到句子向量,并基于该句子向量计算句子间的余弦距离作为句子间的相似度,计算公式如下,sim2(SA,SB)=SAp→·SBp→|SAp→||SBp→|]]>其中,SA和SB代表任意两个句子,sim2(SA,SB)表示两个句子的相似度值,和分别表示用PV模型学习得到的句子向量;步骤4,将步骤2和步骤3得到的句子间的相似度值进行线性加权,通过网格法调节参数,找到一组最优的参数取值,输出最终的句子对之间的相似度值。...

【技术特征摘要】
1.利用句义结构特征的句子相似度计算方法,所述方法包括以下步骤:步骤1,对短文本集进行预处理,先进行分句,然后进行分词和词性标注,去停用词;步骤2,结合句义结构特征和主题-词语分布特征,对句子进行特征扩充,并计算句子相似度;步骤2.1,在步骤1的基础上,对每条句子进行句义结构分析,提取句子的话题、述题、基本项、一般项;步骤2.2,利用LDA(LatentDirichletAllocation)主题模型对短文本集进行分析,提取文本中的主题和主题下的词语分布,得到主题-词语矩阵;步骤2.3,根据话题对句子进行特征扩充,得到基于话题的句子向量;步骤2.4,根据述题对句子进行特征扩充,得到基于述题的句子向量;步骤2.5,分别基于步骤2.3和2.4得到的两种句子向量计算句子相似度,对两个相似度值进行加权,得到句子间的最终相似度值,具体计算公式如下,sim1(SA,SB)=ω*SAt→·SBt→|SAt→||SBt→|+(1-ω)*SAc→·SBc→|SAc→||SBc→|]]>其中,SA和SB代表任意两个句子,sim1(SA,SB)表示两个句子的相似度值,和分别表示句子SA和SB的基于话题的句子向量,和分别表示句子SA和SB的表示基于述题的句子向量,ω为可调参数,取值范围为[0,1];步骤3,将经过步骤1预处理后的所有句子输入到PV(ParagraphVector)深度学习模型,利用PV模型学习文本特征,得到句子向量,并基于该句子向量计算句子间的余弦距离作为句子间的相似度,计算公式如下,sim2(SA,SB)=SAp→·SBp→|SAp→||SBp→|]]>其中,SA和SB代表任意两个句子,sim2(SA,SB)表示两个句子的相似度值,和分别表示用PV模型学习得到的句子向量;步骤4,将...

【专利技术属性】
技术研发人员:罗森林陈倩柔潘丽敏原玉娇
申请(专利权)人:北京理工大学
类型:发明
国别省市:北京;11

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

1