掌桥专利:专业的专利平台
掌桥专利
首页

基于伯特模型的关系增强型句子排序方法

文献发布时间:2023-06-19 09:46:20


基于伯特模型的关系增强型句子排序方法

技术领域

本发明属于自然语言处理技术领域,涉及一种基于伯特模型的关系增强型句子排序方法。

背景技术

对文本的连贯性建模是自然语言处理中的关键问题之一。条理分明、逻辑合理的文本更易于人们阅读和理解;相反,不正确的句子顺序会导致文本内容出现歧义,降低可读性。句子排序任务对增强文本连贯性有着非常重要的作用,这个任务是将顺序打乱或顺序未知的一些句子,通过分析句子之间的语义关系与逻辑信息,给句子重新排序,使其构成通顺连贯的文本。句子排序任务在自然语言处理领域有着广泛的应用,比如多文档的自动摘要、作文打分和文本生成等

近期的句子排序相关工作主要分为两大类。第一类是基于句子对排序框架,这类方法首先计算句子对的相对信息,然后采用拓扑排序或成对排序算法,对句子顺序进行预测。但是,这类方法更关注于文本中句子对的局部信息,忽略了所有句子之间的全局依赖关系,难以对所有句子进行语义与结构的全面且综合的分析,因此不能达到很好的排序效果。第二类的方法是基于指针网络进行排序,指针网络能够在模型解码过程中比较好地获得序列全局连贯性信息,在生成句子序列的时候,指针网络会选择具有最高连贯性概率的序列作为最终的输出序列,因此能够捕捉文本的上下文信息。近期,有些工作在指针网络上进行改进,比如引入注意力机制,也有工作引入了相对顺序预测模块去增强传统的指针网络。但是这些工作的缺点是,没有足够关注文本的局部信息,并将相对顺序信息同时用于增强整个网络,包括了编码器和解码器。此外,目前的工作缺乏比较好的相对顺序预测方法,他们基于两个句子的句子向量计算句子的相对信息,没有将不同句子的单词直接联系起来挖掘潜在的语义联系。已有的相对顺序预测模块的结构比较简单,并且是从头开始训练的,模块没有经过充分足够的训练,难以在小的排序数据集上学习到好的相对信息,反而会对解码器产生误导,提供错误的相对顺序信息,因此模型不是特别的稳定和有效。

发明内容

为解决上述问题,本发明的目的在于提供一种基于伯特模型的关系增强型句子排序方法,伯特(BERT;Bidirectional Encoder Representations from Transformers)模型是目前自然语言处理领域最先进的预训练模型之一,本发明利用伯特模型充分挖掘句子之间的语义与逻辑关系,获得有效可靠的相对顺序信息,并将此信息融入编码器-解码器整个网络中,同时捕捉句子间的局部连贯性和全局依赖信息,从而产生更加连贯通顺的句子序列,提高模型句子排序的准确率。

为实现上述目的,本发明的技术方案为:

一种基于伯特模型的关系增强型句子排序方法,包括如下步骤:

S10:收集文本数据,分别构成训练样本集、验证样本集与测试样本集,并随机打乱三个样本集中的每一篇文章的句子顺序获得变异文本;

S20:建立由伯特模型和两个单层注意力函数构成的关系增强型句子编码器,将所述变异文本中的所有句子对输入伯特模型中,得到句子对的矩阵表示,然后通过两个单层注意力函数,对每个句子构建高层次的句子向量;

S30:建立由多头自注意力层和平均池化层构成的段落编码器,将所述句子向量通过多头自注意力层,挖掘句子之间的全局信息,再通过平均池化层得到段落向量;

S40:基于伯特模型构造关系增强模块,捕捉所述变异文本中句子对的相对顺序,并将捕捉到的相对顺序信息融入指针网络中建立关系增强型指针网络解码器,对所述段落向量进行解码,输出重新排好顺序的句子序列;

S50:基于训练样本集对上述关系增强型句子编码器、段落编码器和关系增强型指针网络解码器组成的深度神经网络模型的参数进行优化,直至在验证样本集上通过验证,保存网络参数;

S60:基于测试样本集对训练完毕的深度神经网络模型进行测试,计算出句子排序的准确率,使用测试完成的深度神经网络模型对待调整句子顺序的文本进行重新排序。

进一步的,S10具体包括:

S101:收集六个句子排序数据集,每个数据集各自包含训练样本集、验证样本集与测试样本集,每个样本集包含一定数量的文章;

S102:随机打乱三个样本集中的每一篇文章的句子顺序获得变异文本;定义一篇变异文本为s,包含N个句子,变异文本表示为s=[s

进一步的,S20具体包括:

S201:变异文本s中所有句子对构成的集合表示为P={P

其中BERT(·)表示伯特模型,C

S202:采用两个单层注意力函数构建每个句子的句子向量;对于句子对P

其中Attention{·}表示注意力函数,

其中

进一步的,S30具体包括:

S301:将步骤S202得到的文本矩阵X作为多头自注意力层中第一个自注意力层的输入矩阵X

其中X

S302:步骤S301最后一个自注意力层的输出矩阵为X

进一步的,S40具体包括:

S401:基于伯特模型构造关系增强模块,在步骤201中,句子对(s

P(r|s

其中r∈{before,after}表示位置顺序的前后,W

R

其中[·;·]为合并操作,R

S402:将关系增强模块捕捉到的句子对的相对关系信息融入指针网络中建立关系增强型指针网络解码器;对于变异文本s,解码器预测出的句子顺序为

其中

进一步的,步骤S402中,矩阵Z

S4021:构造已排序模块,获取候选句子和已经排完顺序的句子之间的局部连贯信息,用于考察候选句子的合理性;对于在第i个解码单元的一个候选句子s

S4022:构造未排序模块,目标是取得候选句子和其他未排序句子间的全局相对顺序信息,为解码器预测顺序提供更多的线索;针对候选句子s

S4023:将已排序模块得到的局部连贯性向量e

进一步的,S50具体包括:

S501:假设训练集有Q篇文章,定义Q={(s,o)},(s,o)表示变异文本s以及对应的正确的句子顺序o,P(o|s;θ)为给变异文本s预测出正确顺序o的可能性;排序任务的目标是使得神经网络预测出顺序正确的句子序列的可能性尽可能得大,因此需要减小代价函数L

其中的θ表示着网络中所有可训练的参数,λ表示正则化参数;

S502:为了更好地获取句子对正确的相对顺序信息,引入句子对顺序预测函数L

其中句子对集合P中的句子对P

S503:通过不断地训练神经网络,直至模型在验证集上的误差连续三个周期没有下降时,停止训练过程并保存模型参数,得到最终的神经网络结构。

进一步的,S60具体包括:

S601:在测试样本集上对已经训练完成的深度神经网络模型进行测试,采用准确率指标来衡量模型排序的效果;对于一篇变异文本,经过模型重新排序后,预测正确的位置个数除以文本句子的总个数为这篇文本句子排序的准确率,计算测试集中所有文本句子排序准确率的平均值,得到模型最终的准确率;

S602:使用测试完成的深度神经网络模型对待调整句子顺序的文本进行重新排序。

与现有技术相比,本发明的主要优点在于:

(1)本发明提出了基于伯特模型的关系增强型句子排序方法,利用了伯特模型的预训练任务的优势,充分挖掘每个句子对的语义与逻辑关系,学习到有效的相对顺序信息。本发明将此信息同时融入编码器与解码器,在整个网络中都增强了相对关系信息,能够对文本连贯性进行更全面的建模。

(2)本发明提出了关系增强型指针网络解码器,它通过一个关系增强模块将相对顺序信息融入指针网络来帮助解码。关系增强模块基于伯特模型,能够准确地捕捉到句子对间的相对信息并构建句子对的表示,他可以帮助指针网络既挖掘到未排序句子间的全局关系,也能充分考虑到当前候选句子和已经排完顺序的句子间的局部依赖,使得模型能同时获得文本的局部和全局的连贯性,从而产生更连贯合理的句子序列。

(3)相比于现有技术,本发明克服了先前句子对排序框架的缺点,不仅能关注局部连贯性,还能够利用指针网络得到文本篇章结构信息,能更全面地分析句子间的相互联系。对比其他基于指针网络的排序模型,不同于他们利用句子向量计算句子之间的关系,本发明将完整的句子对序列输入伯特模型,这种方式让不同句子的单词直接关联,从而能够准确地挖掘句子间潜在的联系;除此之外,不同于先前工作中从头训练的句子对排序模块,本发明的关系增强模块基于的是伯特模型,它能够充分利用伯特模型在大量数据集上预训练的优势,捕捉正确的句子对语义和顺序信息,为模型提供更可靠的句子关系知识。

采用本发明的句子排序方法获取的深度神经网络模型,能够在不同领域的文本数据集上获得更好的句子排序效果,并可以应用于文本自动摘要等自然语言处理场景中,具有良好的实用价值。

附图说明

图1为本发明的基于伯特模型的关系增强型句子排序方法的流程示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

相反,本发明涵盖任何由权利要求定义的在本发明的精髓和范围上做的替代、修改、等效方法以及方案。进一步,为了使公众对本发明有更好的了解,在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。

参考图1,所示为本发明实施例的基于伯特模型的关系增强型句子排序方法流程图,其包括以下步骤:

S10:收集文本数据,分别构成训练样本集、验证样本集与测试样本集,并随机打乱三个样本集中的每一篇文章的句子顺序获得变异文本,具体包括S101至S102:

S101:收集六个句子排序数据集,每个数据集各自包含训练样本集、验证样本集与测试样本集,每个样本集包含一定数量的文章;

S102:随机打乱三个样本集中的每一篇文章的句子顺序获得变异文本;定义一篇变异文本为s,包含N个句子,变异文本表示为s=[s

S20:建立由伯特模型和两个单层注意力函数构成的关系增强型句子编码器,将所述变异文本中的所有句子对输入伯特模型中,得到句子对的矩阵表示,然后通过两个单层注意力函数,对每个句子构建高层次的句子向量,具体包括S201至S202:

S201:变异文本s中所有句子对构成的集合表示为P={P

其中BERT(·)表示伯特模型,C

S202:采用两个单层注意力函数构建每个句子的句子向量;对于句子对P

其中Attention{·}表示注意力函数,它在不同元素之间自动地学习到权重分布,在构建句子高层次表示的时候能更好地关注到重点单词,

其中

S30:建立由多头自注意力层和平均池化层构成的段落编码器,将所述句子向量通过多头自注意力层,挖掘句子之间的全局信息,再通过平均池化层得到段落向量,具体包括S301至S302:

S301:段落编码器包含了L个多头自注意力层,用于获得所有句子的全局依赖关系;将步骤S202得到的文本矩阵X作为多头自注意力层中第一个自注意力层的输入矩阵X

其中X

S302:步骤S301最后一个自注意力层的输出矩阵为X

S40:基于伯特模型构造关系增强模块,捕捉所述变异文本中句子对的相对顺序,并将捕捉到的相对顺序信息融入指针网络中建立关系增强型指针网络解码器,对所述段落向量进行解码,输出重新排好顺序的句子序列,具体包括S401至S402:

S401:基于伯特模型构造关系增强模块,在步骤201中,句子对(s

P(r|s

其中r∈{before,after}表示位置顺序的前后,Wc为权重矩阵,softmax(·)为softmax函数;将向量C

R

其中[·;·]为合并操作,R

S402:将关系增强模块捕捉到的句子对的相对关系信息融入指针网络中建立关系增强型指针网络解码器;对于变异文本s,解码器预测出的句子顺序为

其中

其中,步骤S402中,矩阵Z

S4021:构造已排序模块,获取候选句子和已经排完顺序的句子之间的局部连贯信息,用于考察候选句子的合理性;对于在第i个解码单元的一个候选句子s

S4022:构造未排序模块,目标是取得候选句子和其他未排序句子间的全局相对顺序信息,为解码器预测顺序提供更多的线索;针对候选句子s

S4023:将已排序模块得到的局部连贯性向量e

S50:基于训练样本集对上述关系增强型句子编码器、段落编码器和关系增强型指针网络解码器组成的深度神经网络模型的参数进行优化,直至在验证样本集上通过验证,保存网络参数,具体包括S501至S503:

S501:假设训练集有Q篇文章,定义Q={(s,o)},(s,o)表示变异文本s以及对应的正确的句子顺序o,P(o|s;θ)为给变异文本s预测出正确顺序o的可能性;排序任务的目标是使得神经网络预测出顺序正确的句子序列的可能性尽可能得大,因此需要减小代价函数L

其中的θ表示着网络中所有可训练的参数,λ表示正则化参数;

S502:为了更好地获取句子对正确的相对顺序信息,引入句子对顺序预测函数L

其中句子对集合P中的句子对P

S503:通过不断地训练神经网络,直至模型在验证集上的误差连续三个周期没有下降时,停止训练过程并保存模型参数,得到最终的神经网络结构。

S60:基于测试样本集对训练完毕的深度神经网络模型进行测试,计算出句子排序的准确率,使用测试完成的深度神经网络模型对待调整句子顺序的文本进行重新排序,具体包括S601至S602:

S601:在测试样本集上对已经训练完成的深度神经网络模型进行测试,采用准确率指标来衡量模型排序的效果;对于一篇变异文本,经过模型重新排序后,预测正确的位置个数除以文本句子的总个数为这篇文本句子排序的准确率,计算测试集中所有文本句子排序准确率的平均值,得到模型最终的准确率;

S602:使用测试完成的深度神经网络模型对待调整句子顺序的文本进行重新排序。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

相关技术
  • 基于伯特模型的关系增强型句子排序方法
  • 基于改进关系向量模型的老-汉双语句子相似度计算方法
技术分类

06120112298099