一种基于语义文档表达的文本相似度量方法技术

技术编号:24996860 阅读:44 留言:0更新日期:2020-07-24 17:59
本发明专利技术提供一种基于语义文档表达的文本相似度量方法,包括:获取待比较的两个文本,对每个文本的句子分别进行分词预处理;将两个文本预处理后的词汇进行映射,生成词向量;通过卷积神经网络模型CNN和双向长短时记忆循环网络模型BiLSTM对每个文本均进行处理,提取出每个文本的CNN句子语义特征和BiLSTM句子语义特征;对每个文本的每个句子语义特征均通过注意机制模型捕获关注特征,生成权重向量,计算权重和,生成CNN语义表示向量和BiLSTM语义表示向量,将每个文本各自的两个语义表示向量分别进行拼接,生成词汇语义关联特征向量;根据两个文本的词汇语义关联特征向量构建相似度计算函数,计算出两个文本句子的相似度。

【技术实现步骤摘要】
一种基于语义文档表达的文本相似度量方法
本专利技术属于自然语言处理
,具体涉及一种基于语义文档表达的文本相似度量方法。
技术介绍
针对文本类题目的智能评卷时,考虑是否存在考生答案雷同,是否抄袭题干,考生答案和参考答案的相似度量等都是具有现实意义的需求,而实现智能评卷如何在文本相似度量上给出更为合理有效的度量方法是研究重点和难点,当前现有的语义相似度计算方法可归纳为三类:基于字面匹配的语义相似度计算方法。比较典型的有基于LCS、TF-IDF的语义相似度计算方法。基于LCS的语义相似度计算方法是利用两个文本中词语的最大公共子串的长度来计算文本之间的相似度;基于TF-IDF的语义相似度计算方法是将文本建模成词频向量,运用余弦相似度来衡量文本之间的相似度。这类方法的优点是计算速度快、工作量小,缺点是忽略了词语的语义信息,需要人工设定停用词表。基于潜在语义分析的概率主题语义相似度计算方法。比较典型的有基于LSA、LDA的文本语义相似度计算模型。主要思想是利用词语中的共同信息对文本进行主题建模,挖掘出文本中潜在的语义信息,从而计算出文本之间的语义相似度。优点是考虑到了词语的深层语义信息,缺点是没有考虑到词与词之间的位置关系,受样本种类限制较大。基于深度学习的语义相似度计算方法。有些文献同时关注词汇间的语义信息和句子间的整体信息,即用分布式词向量表示方法计算词汇之间的相似性,再通过句子变换矩阵来度量句子间的语义距离,然而上述方法忽略了句子间的潜在特征。有些文献采用CNN整合局部词语之间的语义关系,但缺少长时序列依赖的解决,有些采用LSTM对整个句子进行编码结合注意力机制,但对于局部特征提取不足。此外还有基于编辑树和句法特征的语义相似度计算方法,这些方法需要大量的人工进行特征工程的工作,同时还受到其他大量因素的影响,在实际应用时受限较大。综上所述,基于字面匹配与基于潜在语义分析的语义相似度模型方法均存在一定的问题,前者未考虑到文本的语义、语法含义,后者忽视了文本中词与词之间的位置关系,需人工进行特征提取,误差较大。此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种基于语义文档表达的文本相似度量方法,是非常有必要的。
技术实现思路
针对现有技术的上述基于字面匹配与基于潜在语义分析的语义相似度模型方法均存在一定的问题,前者未考虑到文本的语义、语法含义,后者忽视了文本中词与词之间的位置关系,需人工进行特征提取,误差较大的缺陷,本专利技术提供一种基于语义文档表达的文本相似度量方法。本专利技术提供一种基于语义文档表达的文本相似度量方法,包括如下步骤:S1.获取待比较的第一文本及第二文本,对每个文本的句子分别进行分词预处理,并去除标点符号;S2.将第一文本及第二文本预处理后得到每个词进行映射,生成词向量,所述词向量与卷积神经网络模型CNN及双向长短时记忆循环网络模型BiLSTM匹配;S3.通过卷积神经网络模型CNN和双向长短时记忆循环网络模型BiLSTM对每个文本均进行处理,提取出每个文本的CNN句子语义特征向量和BiLSTM句子语义特征向量;S4.针对每个文本的每个句子语义特征均通过注意机制模型捕获关注特征,生成权重向量,计算权重和,生成CNN语义表示向量和BiLSTM语义表示向量,再将每个文本各自的两个语义表示向量分别进行拼接,生成词汇语义关联特征向量;S5.根据第一文本及第二文本的文本的词汇语义关联特征向量构建相似度计算函数,计算出第一文本及第二文本句子的相似度。进一步地,步骤S1具体步骤如下:S11.获取待比较第一文本及第二文本的领域;S12.根据文本计算目标构建专业词典;S13.根据文本领域及构建的专业词典,通过分词工具进行分词,去除设定停用词及标点符号,并设定待进行分词的句子长度。对文本进行分词处理的目的是为后续进行词向量映射做准备,借助文本的领域及专业词典实现分词的准确,并去除无意义的停用词及标点符号。进一步地,步骤S13中,所述分词工具采用结巴分词工具。结巴分词工具为一种中文分词工具,支持三种分词模式包括:精确模式、全模式以及搜索引擎模式。进一步地,步骤S2具体步骤如下:S21.根据设定的待分词句子长度,从每个文本中获取与句子长度等长的句子序列;S22.将句子序列的每个词汇均进行映射,生成词向量;S23.通过word2vec向量映射工具将词向量生成词向量矩阵,所述词向量矩阵与卷积神经网络模型CNN输入匹配;S24.根据词向量生成词向量序列,所述词向量序列与双向长短时记忆循环网络模型BiLSTM输入匹配。将词汇映射到词向量,生成词向量矩阵提供给后续的卷积神经网络模型CNN使用,生成词向量序列提供给后续的双向长短时记忆循环网络模型BiLSTM输入匹配。进一步地,步骤S22具体步骤如下:S221.获取每个文本的句子序列的每个词汇,并设定当前词汇;S222.判断当前词汇是否存在词向量;若是,将当前词汇进行映射,生成词向量,进入步骤S224;S223.将当前词汇进行二次分词,获取子词,将当前词汇的所有子词的词向量的均值作为词向量;S224.判断句子序列的每个词汇是否均映射完成;若是,进入步骤S23;若否,定位句子序列的下一个词汇为当前词汇,返回步骤S222。为没有词向量的词汇进行二次分词,取子词的均值作为该词汇的词向量。进一步地,步骤S223中,若子词仍然没有词向量,则将对子词继续拆分,将每层词向量的均值返回上层;若拆分至单字序列仍然没有词向量,则进行确实标记,标记为未知词向量,用相应长度的零向量表示。对经过分词也没有词向量的词汇则用零向量表示。进一步地,步骤S22中,词汇映射的词向量为稠密向量;步骤S23中,通过word2vec向量映射工具将句子序列的每个词汇映射到词向量,并对词向量进行预训练。稠密向量是与稀疏向量相对的一种词向量。稠密向量的值就是一个普通的Double数组,而稀疏向量由两个并列的数组顺序和值组成。进一步地,步骤S3具体步骤如下:S31.获取每个文本的词向量矩阵,并通过卷积核对词向量矩阵的每个元素进行一维卷积,生成特征映射集合;S32.设置最大池化层,对卷积后的特征映射集合提取局部关注特征;S33.通过卷积神经网络CNN输出CNN句子语义特征向量;S34.获取每个文本的词向量序列;S35.以词向量序列为输入,通过双向长短时记忆循环网络模型BiLSTM输出BiLSTM句子语义特征向量。分别通过卷积神经网络CNN和双向长短时记忆循环网络模型BiLSTM两种网络模型对词向量矩阵和词向量序列进行训练输出语义特征向量。进一步地,步骤S4具体步骤如下:S41.获取每个文本的CNN句子语义特征向量,并通过tanh激活函数进行非线性变换;S42.通过softmax函数得到线性变换后各CNN句子语义特征分量的本文档来自技高网
...

【技术保护点】
1.一种基于语义文档表达的文本相似度量方法,其特征在于,包括如下步骤:/nS1.获取待比较的第一文本及第二文本,对每个文本的句子分别进行分词预处理,并去除标点符号;/nS2.将第一文本及第二文本预处理后得到每个词进行映射,生成词向量,所述词向量与卷积神经网络模型CNN及双向长短时记忆循环网络模型BiLSTM匹配;/nS3.通过卷积神经网络模型CNN和双向长短时记忆循环网络模型BiLSTM对每个文本均进行处理,提取出每个文本的CNN句子语义特征向量和BiLSTM句子语义特征向量;/nS4.针对每个文本的每个句子语义特征均通过注意机制模型捕获关注特征,生成权重向量,计算权重和,生成CNN语义表示向量和BiLSTM语义表示向量,再将每个文本各自的两个语义表示向量分别进行拼接,生成词汇语义关联特征向量;/nS5.根据第一文本及第二文本的文本的词汇语义关联特征向量构建相似度计算函数,计算出第一文本及第二文本句子的相似度。/n

【技术特征摘要】
1.一种基于语义文档表达的文本相似度量方法,其特征在于,包括如下步骤:
S1.获取待比较的第一文本及第二文本,对每个文本的句子分别进行分词预处理,并去除标点符号;
S2.将第一文本及第二文本预处理后得到每个词进行映射,生成词向量,所述词向量与卷积神经网络模型CNN及双向长短时记忆循环网络模型BiLSTM匹配;
S3.通过卷积神经网络模型CNN和双向长短时记忆循环网络模型BiLSTM对每个文本均进行处理,提取出每个文本的CNN句子语义特征向量和BiLSTM句子语义特征向量;
S4.针对每个文本的每个句子语义特征均通过注意机制模型捕获关注特征,生成权重向量,计算权重和,生成CNN语义表示向量和BiLSTM语义表示向量,再将每个文本各自的两个语义表示向量分别进行拼接,生成词汇语义关联特征向量;
S5.根据第一文本及第二文本的文本的词汇语义关联特征向量构建相似度计算函数,计算出第一文本及第二文本句子的相似度。


2.如权利要求1所述的基于语义文档表达的文本相似度量方法,其特征在于,步骤S1具体步骤如下:
S11.获取待比较第一文本及第二文本的领域;
S12.根据文本计算目标构建专业词典;
S13.根据文本领域及构建的专业词典,通过分词工具进行分词,去除设定停用词及标点符号,并设定待进行分词的句子长度。


3.如权利要求2所述的基于语义文档表达的文本相似度量方法,其特征在于,步骤S13中,所述分词工具采用结巴分词工具。


4.如权利要求2所述的基于语义文档表达的文本相似度量方法,其特征在于,步骤S2具体步骤如下:
S21.根据设定的待分词句子长度,从每个文本中获取与句子长度等长的句子序列;
S22.将句子序列的每个词汇均进行映射,生成词向量;
S23.通过word2vec向量映射工具将词向量生成词向量矩阵,所述词向量矩阵与卷积神经网络模型CNN输入匹配;
S24.根据词向量生成词向量序列,所述词向量序列与双向长短时记忆循环网络模型BiLSTM输入匹配。


5.如权利要求4所述的基于语义文档表达的文本相似度量方法,其特征在于,步骤S22具体步骤如下:
S221.获取每个文本的句子序列的每个词汇,并设定当前词汇;
S222.判断当前词汇是否存在词向量;
若是,将当前词汇进行映射,生成词向量,进入步骤S224;
若否,进入步骤S223;
S223.将当前词汇进行二次分词,获取子词,将当前词汇的所有子词的词向量的均值作为词向量;<...

【专利技术属性】
技术研发人员:马磊邢金宝袁峰薛勇
申请(专利权)人:山东山大鸥玛软件股份有限公司
类型:发明
国别省市:山东;37

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

1