本发明专利技术公开了一种语句相似度判断方法,所述相似度判断方法包括:步骤一:搜集原始文本;步骤二:构建相似度判断模型,所述相似度判断模型以CNN和快捷堆叠式BiLSTM作为句子的编码器;步骤三:将表示的句子向量拼接,将不同向量合并成维度更高的向量;步骤四:将合并的向量经过一层全连接层;步骤五:将所述全连接层的输出作为下一个全连接层的输入,其中下一个全连接层的输出类别数为分类类别数;步骤六:通过分类器和损失函数训练网络用于语句相似度判断。本发明专利技术通过以CNN和BiLSTM网络为编码器,充分提取文本特征向量,以提高最终的文本相似度计算的精确度,提高具体QA应用场景中问话匹配的准确度。本发明专利技术还提出了一种语句相似度判断系统。
【技术实现步骤摘要】
一种语句相似度判断方法及判断系统
本专利技术属于自然语言处理中语义相似度计算
,尤其涉及一种语句相似度判断方法及判断系统。
技术介绍
句子语义相似度计算,目前在信息检索、数据挖掘、机器翻译、文档抄袭检测、自动问答等领域,均有着广泛的应用。现有技术用于语义相似度计算的经典模型是如图1所示的基于LSTM的孪生神经网络。将要进行相似度计算的句子对做词嵌入,即将句子以词向量表示。将词向量输入到神经网络,再将网络的输出做计算操作,最后输出。目前,所述基于LSTM的孪生神经网络还具有如下缺点:LSTM网络提取句子特征,没有综合考虑句子前向和反向关系特征,导致语义特征提取不全,相似度判别结果不理想。传统的神经网络需要过多的考虑人为的语义特征,人工干预过多传统的基于RNN的网络只能提取文本前后信息关联,而不能提取文本部分重要信息特征,传统基于CNN的网络只能提取文本部分文本语义特征,忽略前后联系,鉴于此,改模型将两种模型融合,取各自优点,进行多角度特征提取文本语义特征信息。
技术实现思路
为克服现有技术的上述缺陷,本专利技术针对LSTM网络不能捕捉句子的上下文含义以及句子的特征信息提取不全的缺点,为了提高语义相似度计算的准确度,提高QA系统问话匹配的精确度,提出了一种语句相似度判断方法,包含一种新型模型,该模型将以双向LSTM和CNN网络结构作为最后文本相似度计算的特征向量提取网络。具体地,如图1-2所示,本专利技术所述语句相似度判断方法包括以下步骤:步骤一:搜集原始文本,原始文本无特殊要求,格式为要进行相似度判断的句子对,相似度为1,不相似为0;步骤二:构建相似度判断模型,所述相似度判断模型以CNN和快捷堆叠式BiLSTM作为句子的编码器;本专利技术中的堆叠式BiLSTM编码器,该模型堆叠biLSTM层数为3层,biLSTMi表示第i层的biLSTM,因此第i层的biLSTM在t时刻输入的句子表示为则第i层biLSTM在时刻t的输出表示为:W=(w1,w2,...,wn)表示句子序列,其中wi∈Rd表示句子中第i个词的表示向量,则第i层biLSTM在时刻t表示为:(fori>1)。假设本专利技术模型是m层biLSTM,最后的文本向量表示可由最后第m层biLSTM输出再经过最大池化操作获得。最后一层表示为:其中,dm表示biLSTM隐藏状态的维度,v表示句子的最后向量表示,句子对分别表示为rnn1,rnn2。分别将编码器的向量输出作单元距离计算,记为hrnn1,以及元素相乘计算,记为hrnn2。本专利技术中的CNN编码器,对量化后的的文本做卷积操作,句子对分别表示为cnn1,cnn2,分别将池化后的句子对做单元距离计算,记为hcnn1,以及元素相乘计算,记为hcnn2。步骤三:将以上的文本特征融合,即将表示的句子向量拼接,将几种不同向量合并成维度更高的向量,其中,所述文本特征包括rnn1,rnn2,hrnn1,hrnn2,cnn1,cnn2,hcnn1,hcnn2。步骤四:将合并的向量经过一层全连接层;其中,所述全连接层采用dropout策略,即随机选择部分神经元让其失效,不参与运算,此操作可有效防止训练陷入过拟合风险。步骤五:将该全连接层的输出作为下一个全连接层的输入,其中下一个全连接层的输出类别数为分类类别数。步骤六:最后通过分类器和损失函数训练网络用于对文本进行相似度判断;所述分类器为softmax分类器,所述损失函数为交叉熵。本专利技术步骤一中,所述搜集原始文本的过程包括:原始文本无特别要求,格式为一句子对和一个标签,如果相似,标签为1,否则为0。本专利技术中,模型以CNN和快捷堆叠式BiLSTM作为句子的编码器,以迁移学习的思想,对原始的句子作初始化操作作为编码器的输入;句子初始化是指:(1)对原始句子进行分词,去停用词后,将文本以词级表示,利用词向量将文本量化。(2)将原始句子用glove模型以字级量化。(3)将两种文本量化后向量拼接,作为文本输入表示。其中word2vec维度为150,glove维度为150。基于以上方法,本专利技术还提供了一种语句相似度判断系统,包括:文本搜集模块,用于搜集原始文本;模型构建模块,用于构建相似度判断模型,所述相似度判断模型以CNN和快捷堆叠式BiLSTM作为句子的编码器;特征融合模块,用于将表示的句子向量拼接,将不同向量合并成维度更高的向量;全连接层输入模块,用于将合并的向量经过一层全连接层;全连接层输出模块,用于将所述全连接层的输出作为下一个全连接层的输入,其中下一个全连接层的输出类别数为分类类别数;判断模块,用于通过分类器和损失函数训练网络用于语句相似度判断。与现有技术相比,本专利技术具有如下有益的技术效果:本专利技术通过以CNN和BiLSTM网络为编码器,充分提取文本特征向量,以提高最终的文本相似度计算的精确度,提高具体QA应用场景中问话匹配的准确度。该模型不需要句子的语义特征,减少人工干预成本。没有采用attention结构,相对于采用attention算法的模型提高算法的运行效率。附图说明图1为现有技术的用于语义相似度计算的经典模型是基于LSTM的孪生神经网络。图2为快捷堆叠式BiLSTM编码器的示意图。图3为本专利技术中模型的结构图。图4为本专利技术语句相似度判断系统的示意图。具体实施方式结合以下具体实施例和附图,对本专利技术作进一步的详细说明。实施本专利技术的过程、条件、实验方法等,除以下专门提及的内容之外,均为本领域的普遍知识和公知常识,本专利技术没有特别限制内容。本专利技术所述语句相似度判断方法包括以下步骤:步骤一:搜集原始文本,原始文本无特殊要求,格式为要进行相似度判断的句子对,相似度为1,不相似为0;步骤二:构建相似度判断模型,所述模型以CNN和快捷堆叠式BiLSTM作为句子的编码器;堆叠式BiLSTM编码器介绍:该模型堆叠biLSTM层数为3层,biLSTMi表示第i层的biLSTM,因此第i层的biLSTM在t时刻输入的句子表示为则第i层biLSTM在时刻t的输出表示为:W=(w1,w2,...,wn)表示句子序列,其中wi∈Rd表示句子中第i个词的表示向量,则第i层biLSTM在时刻t表示为:(fori>1)。假设本专利技术模型是m层biLSTM,最后的文本向量表示可由最后第m层biLSTM输出再经过最大池化操作获得。最后一层表示为:其中,dm表示biLSTM隐藏状态的维度,v表示句子的最后向量表示,句子对分别表示为rnn1,rnn2。分别将编码器的向量输出作单元距离计算,记为hrnn1,以及元素相乘计算,记为hrnn2,CNN编码器:对量化后的的文本做卷积操作,句子对分别表示为cnn1,cnn2,分别将池化后的句子对做单元距离计算,记为hcnn1,以及元素相乘计算,记为hcnn2。步骤三:将以上的文本特征融合,即将表示的句子向量拼接,将几种不同向量合并成维度更高的向量。步骤四:将合并的向量经过一层全连接层,其中全连接层采用dropout策略,即随机选择部分神经元让其失效,不参与运算,此操作可有效防止训练陷入过拟合风险。步骤五:将该全连接层的输出作为下一个全连接层的输入,其中下一个全连接层的输出类别数为分类类别数。步骤六:最后以softmax作为分类器,以交叉熵作为损失函数,训练网络。本专利技术步骤一本文档来自技高网...
【技术保护点】
1.一种语句相似度判断方法,其特征在于,包括以下步骤:步骤一:搜集原始文本;步骤二:构建相似度判断模型,所述相似度判断模型以CNN和快捷堆叠式BiLSTM作为句子的编码器;步骤三:将表示的句子向量拼接,将不同向量合并成维度更高的向量;步骤四:将合并的向量经过一层全连接层;步骤五:将所述全连接层的输出作为下一个全连接层的输入,其中下一个全连接层的输出类别数为分类类别数;步骤六:通过分类器和损失函数训练网络用于语句相似度判断。
【技术特征摘要】
1.一种语句相似度判断方法,其特征在于,包括以下步骤:步骤一:搜集原始文本;步骤二:构建相似度判断模型,所述相似度判断模型以CNN和快捷堆叠式BiLSTM作为句子的编码器;步骤三:将表示的句子向量拼接,将不同向量合并成维度更高的向量;步骤四:将合并的向量经过一层全连接层;步骤五:将所述全连接层的输出作为下一个全连接层的输入,其中下一个全连接层的输出类别数为分类类别数;步骤六:通过分类器和损失函数训练网络用于语句相似度判断。2.如权利要求1所述的语句相似度判断方法,其特征在于,所述步骤一中,所述搜集原始文本的过程包括:格式为要进行相似度判断的句子对,相似度为1,不相似为0。3.如权利要求1所述的语句相似度判断方法,其特征在于,所述相似度判断模型堆叠biLSTM层数为3层,biLSTMi表示第i层的biLSTM,第i层的biLSTM在t时刻输入的句子表示为则第i层biLSTM在时刻t的输出表示为:;W=(w1,w2,...,wn)表示句子序列,其中wi∈Rd表示句子中第i个词的表示向量,则第i层biLSTM在时刻t表示为:若所述相似度判断模型是m层biLSTM,最后的文本向量表示由最后第m层biLSTM输出再经过最大池化操作获得,最后一层表示为:v=max(Hm);其中,dm表示biLSTM隐藏状态的维度,v表示句子的最后向量表示,句子对分别表示为rnn1,rnn2,分别将编码器的向量输出作单元距离计算,记为hrnn1,以及元素相乘计算,记为hrnn2;所述CNN编码器对量化后的文本做池化操作,句子对分别表示为cnn1,cnn2,分别将池化后的句子对做单元距离计算,记为hcnn1,以及元素相乘计算,记...
【专利技术属性】
技术研发人员:聂桂芝,杨攀攀,黄建强,
申请(专利权)人:上海方立数码科技有限公司,
类型:发明
国别省市:上海,31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。