基于排序学习的深度文本匹配方法及装置制造方法及图纸

技术编号:21628972 阅读:16 留言:0更新日期:2019-07-17 11:06
本申请提供了一种基于排序学习的深度文本匹配方法及装置,具体的,首先,获取由假设语句、推理语句组成的句子对,其中,推理语句包括正推理语句和多个负推理语句,假设语句与正推理语句的语义相关、与负推理语句的语义不相关;然后,将句子对中的语句进行相应的处理后,形成语句向量,再根据各语句向量之间的匹配程度值,计算预设损失函数的损失值,并根据该损失值,调整深度匹配模型的参数;最后,利用参数调整最终得到的深度匹配模型,对输入的语句进行文本匹配。本申请将输入句子对由两个句子对扩展为句子序列,并且包含正例和负例两种类型的数据,由于扩展模型的输入数量和类型,进而使得模型的拟合速度加快,有助于提高模型的匹配精度。

Deep Text Matching Method and Device Based on Ranking Learning

【技术实现步骤摘要】
基于排序学习的深度文本匹配方法及装置
本申请涉及自然语言处理
,尤其涉及一种基于排序学习的深度文本匹配方法及装置。
技术介绍
文本匹配是自然语言处理中一个重要的基础问题,自然语言处理中的许多任务都可以抽象为文本匹配任务。例如,网页搜索可抽象为网页同用户搜索Query的一个相关性匹配问题,自动问答可抽象为候选答案与问题的满足度匹配问题,文本去重可以抽象为文本与文本的相似度匹配问题。传统的文本匹配技术(例如信息检索中的向量空间模型算法),主要解决词汇层面的匹配问题。而实际上,基于词汇重合度的匹配算法有很大的局限性,无法解决很多问题,如语言的多义同义问题、语言的组合结构问题(例如「从北京到上海高铁」和「从上海到北京高铁」)以及匹配的非对称问题(例如网页搜索任务中query端的语言表述形式和网页端往往具有很大的差别)。深度学习技术兴起后,基于神经网络训练出的WordEmbedding(词嵌入向量)来进行文本匹配计算引起了广泛的兴趣。WordEmbedding的训练方式更加简洁,而且所得的词语向量表示的语义可计算性进一步加强。但是,只利用无标注数据训练得到的WordEmbedding在匹配度计算的实用效果上和主题模型技术相差不大,它们本质上都是基于共现信息的训练。另外,WordEmbedding本身没有解决短语、句子的语义表示问题,也没有解决匹配的非对称性问题。基于上述问题,目前提出了有监督的神经网络深度匹配模型,以提升语义匹配计算的效果,例如DSSM(DeepStructuredSemanticModels,深度语义匹配模型)、CDSSM(ConvolutionalLatentSemanticModel,卷积潜在语义模型)、ESIM(EnhancingSequentialInferenceModel、增强顺序推理模型)等。其中,现有的深度匹配模型在训练时多采用句子对匹配。而上述采用句子对的方式,对于多个与训练句子都较为相似的句子,模型不能判断哪个句子更相似,进而影响模型的最终匹配效果。
技术实现思路
基于现有的句子对训练方式存在的缺点,本申请提供了一种基于排序学习的深度文本匹配方法及装置。根据本申请实施例的第一方面,提供了一种基于排序学习的深度文本匹配方法,应用于深度匹配模型,所述方法包括:获取由假设语句、推理语句组成的句子对,其中,所述推理语句包括正推理语句和多个负推理语句,所述假设语句与正推理语句的语义相关、与负推理语句的语义不相关;将所述句子对中的语句分别用词向量表示,得到所述句子对中各语句的词向量矩阵;利用各所述词向量矩阵所对应的相似度矩阵,生成所述句子对中的语句彼此相似性加权后的语句向量;根据各所述语句向量之间的匹配程度,计算预设损失函数的损失值;根据所述损失值,调整所述深度匹配模型的参数;利用参数调整所最终得到的深度匹配模型,对输入的语句进行文本匹配。可选地,根据各所述语句向量之间匹配程度值,计算预设损失函数的损失值,包括:分别计算所述假设语句与正推理语句、以及各负推理语句所对应的语句向量之间的匹配程度值;利用Pointwise损失函数和Listwise损失函数组成的联合损失函数,计算各所述语句向量匹配程度值与标准值之间的损失值。可选地,所述联合损失函数loss的计算公式为:loss=Lp+Ll+L2Regularization,其中:Lp为Pointwise损失函数,Lp=max(0,m-s(rh;rp+)+s(rh;rp-));Ll为Listwise损失函数,rh为假设语句的语句向量表示,rp+和rp-是分别为正推理语句和负推理语句的语句向量表示,s(rh;rp+)为假设语句和正推理语所对应的语句向量的余弦相似度,s(rh;rp)为假设语句和推理语所对应的语句向量的余弦相似度,m为预设的判定正负推理语句的阈值,n为由正推理语句和负推理语句组成的样本个数。可选地,获取由假设语句、推理语句组成的句子对,包括:选取被作为假设语句和正推理语句、且语义相关的两个正例语句;选取被作为负推理语句的、且与所述正例语句的语义不相关的多个负例语句;将两个所述正例语句以及各所述负例语句组成句子对。可选地,将所述句子对中的语句分别用词向量表示,得到所述句子对中各语句的词向量矩阵,包括:将所述句子对中的语句分别进行分词并用词向量表示,得到初始词向量矩阵;将词性、共现信息和位置编码向量添加至所述初始词向量矩阵,得到所述句子对中各语句的词向量矩阵。可选地,生成所述句子对中的语句彼此相似性加权后的语句向量之后,所述方法还包括:将所述假设语句分别与正推理语句、各负推理语句彼此相似性加权后所得到各语句向量,进行归一化处理,得到一个所述假设语句对应的语句向量。可选地,利用各所述词向量矩阵所对应的相似度矩阵,生成所述句子对中的语句彼此相似性加权后的语句向量,包括:利用各所述词向量矩阵所对应的相似度矩阵,生成所述句子对中的语句彼此相似性加权后的初始语句向量;根据各所述初始语句向量所对应的语句的语境,重新对各所述语句向量进行编码,得到所述句子对中各语句的语句向量。可选地,根据所述损失值,调整所述深度匹配模型的参数,包括:以最小化所述损失值为目标,调整所述深度匹配模型的参数。。根据本申请实施例的第二方面,提供了一种基于排序学习的深度文本匹配装置,应用于深度匹配模型,所述装置包括:句子对获取模块:用于获取由假设语句、推理语句组成的句子对,其中,所述推理语句包括正推理语句和多个负推理语句,所述假设语句与正推理语句的语义相关、与负推理语句的语义不相关;词向量表示模块:用于将所述句子对中的语句分别用词向量表示,得到所述句子对中的语句的词向量矩阵;相似加权模块:用于利用各所述词向量矩阵所对应的相似度矩阵,生成所述句子对中的语句彼此相似性加权后的语句向量;损失值计算模块:用于根据各所述语句向量之间的匹配程度,计算预设损失函数的损失值;模型参数调整模块:用于根据所述损失值,调整所述深度匹配模型的参数;文本匹配模块:用于利用参数调整所最终得到的深度匹配模型,对输入的语句进行文本匹配。可选地,所述损失值计算模块,包括:相似度计算单元:用于分别计算所述假设语句与正推理语句、以及各负推理语句所对应的语句向量之间的匹配程度值;损失值计算单元:用于利用Pointwise损失函数和Listwise损失函数组成的联合损失函数,计算各所述语句向量匹配程度值与标准值之间的损失值。由上述技术方案可见,本实施例提供的基于排序学习的深度文本匹配方法及装置,在训练深度匹配模型时,通过对模型的调整,使模型输入句子对中不仅包含假设语句与正推理语句,还包含与假设语句和正推理语句语义不相关的多个负推理语句组成的句子对。这样,将输入句子对由两个输入句子对扩展为句子序列,并且包含正例和负例两种类型的数据,由于扩展模型的输入数量和类型,进而使得模型的拟合速度加快,有助于增强模型的泛化能力。另外,本实施例利用损失函数调整深度匹配模型的参数,以使最终深度匹配模型输出的匹配程度概率最高的句子对为假设语句和正推理语句,融入了排序的思想,进而可使参数调整所最终得到的模型的文本匹配准确率更高。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本专利技术。附图说明此处的本文档来自技高网
...

【技术保护点】
1.一种基于排序学习的深度文本匹配方法,应用于深度匹配模型,其特征在于,所述方法包括:获取由假设语句、推理语句组成的句子对,其中,所述推理语句包括正推理语句和多个负推理语句,所述假设语句与正推理语句的语义相关、与负推理语句的语义不相关;将所述句子对中的语句分别用词向量表示,得到所述句子对中各语句的词向量矩阵;利用各所述词向量矩阵所对应的相似度矩阵,生成所述句子对中的语句彼此相似性加权后的语句向量;根据各所述语句向量之间的匹配程度值,计算预设损失函数的损失值;根据所述损失值,调整所述深度匹配模型的参数;利用参数调整所最终得到的深度匹配模型,对输入的语句进行文本匹配。

【技术特征摘要】
1.一种基于排序学习的深度文本匹配方法,应用于深度匹配模型,其特征在于,所述方法包括:获取由假设语句、推理语句组成的句子对,其中,所述推理语句包括正推理语句和多个负推理语句,所述假设语句与正推理语句的语义相关、与负推理语句的语义不相关;将所述句子对中的语句分别用词向量表示,得到所述句子对中各语句的词向量矩阵;利用各所述词向量矩阵所对应的相似度矩阵,生成所述句子对中的语句彼此相似性加权后的语句向量;根据各所述语句向量之间的匹配程度值,计算预设损失函数的损失值;根据所述损失值,调整所述深度匹配模型的参数;利用参数调整所最终得到的深度匹配模型,对输入的语句进行文本匹配。2.根据权利要求1所述的方法,其特征在于,根据各所述语句向量之间匹配程度值,计算预设损失函数的损失值,包括:分别计算所述假设语句与正推理语句、以及各负推理语句所对应的语句向量之间的匹配程度值;利用Pointwise损失函数和Listwise损失函数组成的联合损失函数,计算各所述语句向量匹配程度值与标准值之间的损失值。3.根据权利要求2所述的方法,其特征在于,所述联合损失函数loss的计算公式为:loss=Lp+Ll+L2Regularization,其中:Lp为Pointwise损失函数,Lp=max(0,m-s(rh;rp+)+s(rh;rp-));Ll为Listwise损失函数,rh为假设语句的语句向量表示,rp+和rp-是分别为正推理语句和负推理语句的语句向量表示,s(rh;rp+)为假设语句和正推理语所对应的语句向量的余弦相似度,s(rh;rp)为假设语句和推理语所对应的语句向量的余弦相似度,m为预设的判定正负推理语句的阈值,n为由正推理语句和负推理语句组成的样本个数。4.根据权利要求1所述的方法,其特征在于,获取由假设语句、推理语句组成的句子对,包括:选取被作为假设语句和正推理语句、且语义相关的两个正例语句;选取被作为负推理语句的、且与所述正例语句的语义不相关的多个负例语句;将两个所述正例语句以及各所述负例语句组成句子对。5.根据权利要求1所述的方法,其特征在于,将所述句子对中的语句分别用词向量表示,得到所述句子对中各语句的词向量矩阵,包括:将所述句子对中的语句分别...

【专利技术属性】
技术研发人员:李健铨刘小康刘子博晋耀红
申请(专利权)人:北京神州泰岳软件股份有限公司
类型:发明
国别省市:北京,11

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

1