当前位置: 首页 > 专利查询>重庆大学专利>正文

一种语句相似度判断方法及判断系统技术方案

技术编号:25599871 阅读:81 留言:0更新日期:2020-09-11 23:57
本发明专利技术公开了一种语句相似度判断方法及判断系统,涉及自然语言语义相似度计算技术领域,通过在建模层、多语义嵌入层、语义重要性计算曾层、语义对齐层和输出层上进行改进;利用多语义矩阵计算多粒度级别的相似性矩阵,并根据该矩阵发现两个句子真正的语义对齐。考虑到不同的语义有不同的重要性,我们提出了语义重要性计算。提出的模型不需要稀疏特征以及WordNet等外部资源,在较短的时间内成功训练并在相似度计算任务上取得了有竞争力的结果。可视化分析表明了模型的良好性能及可解释性。

【技术实现步骤摘要】
一种语句相似度判断方法及判断系统
本专利技术涉及自然语言语义相似度计算
,更具体地说,它涉及一种语句相似度判断方法及判断系统。
技术介绍
生活中的许多场景需要比较文本的相似性,比如论文剽窃检测、对话系统和信息检索等领域。因此如何快速、形象的检测句子予以相似度是一项基本且非常重要的任务。句子对的语义匹配(SPSM)是NLP中最基本的问题,比如文本相似度检测、自然语言推理、释义识别、答案选择等。随着神经网络在NLP等领域的复兴,研究者开始致力于使用神经网络解决SPSM任务。卷积神经网络(CNN)和循环神经网络(RNN)已经被熟练地应用在了SPSM任务。以往的很多工作是基于句子编码或单词粒度的交互来处理语义匹配问题。基于句子编码的方法将两个句子分别表示成一个单一的分布式句子嵌入,然后再根据句子向量来计算句子对的相似度。该方式缺少句子对交互,并且单一句子向量可能无法完全涵盖句子的所有语义信息。为了增加句子对的交互性,研究者使用单词粒度的相似度矩阵获取细粒度语义信息并提高模型性能。仅仅基于细粒度的单词交互有可能丢失粗粒度信息,例如短语信息或者句子的长期依赖信息。YinandSchütze、Yinetal、Tienetal等人利用CNN学习到的单词、短语和n元信息学习多种粒度级别的交互信息。单词粒度和多粒度交互都是人为规定交互的粒度大小,这有可能导致模型无法学习到真正的不同粒度交互信息。目前的优秀模型大多均基于神经网络。CNN和RNN模型通常也采用基于句子编码和句子交互的策略。CNN擅长提取输入的抽象特征,合并重要的上下文并以分层的方式对句子对建模。YinandSchütze使用CNN计算包括单词粒度、短语粒度以及句子粒度的多粒度交互矩阵。其第一次采取了多粒度交互特征,因此性能显著提升。HuaandLin用成对单词粒度的交互矩阵和19层的CNN来计算文本相似度。Yaoetal利用多层的卷积、池化操作,在输出中执行k最大池化得到句子向量并进行比较。类似的还有HuaHeetal、Santosetal)、Yinetal、Wangetal、Tienetal等人的工作。RNN比CNN更擅长处理序列信息。Muelleretal使用孪生LSTM的最后一个隐藏层作为句子表示并使用Manhattan距离衡量相似性,取得了非常不错的结果。孪生网络也是句子对语义匹配的常用策略。其将两个句子分别通过参数共享的神经网络,最终在相同的嵌入空间中得到各自的句子表示(Bowmanetal;Tanetal;Neculoiuetal;Reimersetal),可以减少模型参数并实现句子对隐式交互。Shenetal结合经典的单词相似度矩阵和对齐表示,并使用内部加权对齐策略赋予每个单词相应的对齐权重。Wanetal、Santosetal、Zhangetal等均使用LSTM的输出单元计算句子对单词级别的相似度矩阵。目前,预训练模型在各种NLP任务中占据了主导地位,其在大型数据上训练一个语言模型,然后在下游任务的特定数据上微调。BERT是现在最流行且效果最好的预训练模型,使用Transformer的编码器,以完形填空和下一个句子预测任务在Wikipedia和BooksCorpus数据集上训练真正的双向语言模型。Reimersetal的Sentence-BERT使用孪生BERT模型得到句子向量并计算余弦相似度作为句子对相似性。Zhangetal将PWIM模型的BiLSTM编码层替换为BERT,并在SICK数据集上得到了最先进的结果。BERT模型需要庞大的计算资源和内存,我们的目的是希望快速训练出有竞争力且可解释性强的模型,验证多语义嵌入矩阵和语义对齐的有效性,并且可以应用在任意的个人电脑上。
技术实现思路
本专利技术的上述技术目的是通过以下技术方案得以实现的:一种语句相似度判断方法,包括以下步骤,步骤1:上下文信息建模;采用BiLSTM作为句子编码层;BiLSTM使用词嵌入作为输入,假定预训练的词嵌入的维度是d,输入的句子对S和T的长度分别为ls和lt,则S和T分别对应了一个输入矩阵S=[S1,S2,…,Sls],T=[T1,T2,…,Tlt],Si和Tj分别代表S中第i个单词和T中第j个单词的d维词嵌入,假定LSTM隐藏层的维度是u,给定第t个时间步的词嵌入xt,上一个时间步的隐藏层输出ht-1以及细胞状态ct-1,LSTM按照如下方式得到第t个时间步的输出:it=σ(wxixt+Whiht-1+bi)ft=σ(wxfxt+Whfht-1+bf)ot=σ(Wxoxt+whoht-1+bo)ct=ftct-1+ittanh(wxcxt+whcht-1+bc)ht=ottanh(ct)i,f,o分别代表输入门、遗忘门和输出门,它们控制LSTM中的信息流动;对于输入序列S,BiLSTM将正向和反向的隐层单元级联在一起后得到输出Sh是ls×2u的输出矩阵;步骤2:多语义嵌入层;使用2层MLP自注意机制来学习输入句子的语义矩阵;将BiLSTM的整个隐藏层输出Sh或Th作为输入,计算它们的线性组合:Es=WsSh权重矩阵W1∈RS×2u,将输入映射到大小为s的隐藏层;W2是一个r×s的权重矩阵,r是语义嵌入个数;softmax将输出的r×l矩阵的每一行归一化,得到多语义嵌入权重矩阵Ws;Ws的每一行对应的是Sh的每个单元的权重,其与Sh的加权和就得到句子的一个语义向量;ES∈Rr×2u是s的多语义嵌入矩阵,每一行代表了s的某个语义,且该语义仅由句子的部分单词、短语或长距离信息组成,自动具备了多粒度信息;汇总语义权重Ws并归一化,得到句子的总体语义向量:总体语义向量汇总了各个分语义,体现了句子的整体关注点步骤3:语义重要性计算层;使用单个语义与总体语义的相似性作为语义重要性,使用两个向量的余弦值作为它们的相似度,经过softmax归一化后,得到ES中每个语义的重要性SI,句子T同理得到TI:||.||表示L2范数;表示ES的第i行,即第i个语义;步骤4:语义对齐层;使用多语义嵌入矩阵计算句子对真正的语义对齐;根据ES和Et得到语义相似度矩阵SS,SSij表示句子s的第i个语义和句子T的第j个语义的相似度,直接使用余弦相似度:按照如下方式对M的每一行归一化:语义相似度矩阵SSnorm的每一行元素都属于[0,1],可以被视为句子S的对齐权重;对SS的每一列做同样的处理,得到句子T的对齐权重;衡量句子S和T的相似度需要评估句子S的语义是否被T包含,反之亦然;为句子S的每个语义计算其在T中的加权对齐,句子T同理;使用语义加权和的方式计算ES的每个语义在Et中的对齐表示为了衡量和的匹配程度,使用正交分解策略将原始语义向量正交分解为平行于对齐向量的相似部分和垂直于的不相似部分进一步细化匹配程度:平行分量(对齐分量),垂直分量(对齐残差)本文档来自技高网
...

【技术保护点】
1.一种语句相似度判断方法,其特征在于,包括以下步骤,/n步骤1:上下文信息建模;/n采用BiLSTM作为句子编码层;BiLSTM使用词嵌入作为输入,假定预训练的词嵌入的维度是d,输入的句子对S和T的长度分别为ls和lt,则S和T分别对应了一个输入矩阵S=[S

【技术特征摘要】
1.一种语句相似度判断方法,其特征在于,包括以下步骤,
步骤1:上下文信息建模;
采用BiLSTM作为句子编码层;BiLSTM使用词嵌入作为输入,假定预训练的词嵌入的维度是d,输入的句子对S和T的长度分别为ls和lt,则S和T分别对应了一个输入矩阵S=[S1,S2,…,Sls],T=[T1,T2,…,Tlt],Si和Tj分别代表S中第i个单词和T中第j个单词的d维词嵌入,假定LSTM隐藏层的维度是u,给定第t个时间步的词嵌入xt,上一个时间步的隐藏层输出ht-1以及细胞状态ct-1,LSTM按照如下方式得到第t个时间步的输出:
it=σ(wxixt+Whiht-1+bi)
ft=σ(wxfxt+Whfht-1+bf)
ot=σ(Wxoxt+whoht-1+bo)
ct=ftct-1+ittanh(wxcxt+whcht-1+bc)
ht=ottanh(ct)
i,f,o分别代表输入门、遗忘门和输出门,它们控制LSTM中的信息流动;对于输入序列S,BiLSTM将正向和反向的隐层单元级联在一起后得到输出Sh是ls×2u的输出矩阵;
步骤2:多语义嵌入层;
使用2层MLP自注意机制来学习输入句子的语义矩阵;将BiLSTM的整个隐藏层输出Sh或Th作为输入,计算它们的线性组合:



Es=WsSh
权重矩阵W1∈RS×2u,将输入映射到大小为s的隐藏层;W2是一个r×s的权重矩阵,r是语义嵌入个数;softmax将输出的r×l矩阵的每一行归一化,得到多语义嵌入权重矩阵Ws;Ws的每一行对应的是Sh的每个单元的权重,其与Sh的加权和就得到句子的一个语义向量;ES∈Rr×2u是s的多语义嵌入矩阵,每一行代表了s的某个语义,且该语义仅由句子的部分单词、短语或长距离信息组成,自动具备了多粒度信息;汇总语义权重Ws并归一化,得到句子的总体语义向量:







总体语义向量汇总了各个分语义,体现了句子的整体关注点
步骤3:语义重要性计算层;
使用单个语义...

【专利技术属性】
技术研发人员:朱晓红陈俊宇何胜冬
申请(专利权)人:重庆大学
类型:发明
国别省市:重庆;50

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

1