基于改进Transformer模型的超长序列处理方法技术

技术编号:36076630 阅读:16 留言:0更新日期:2022-12-24 10:48
本发明专利技术提出了一种基于改进Transformer模型的超长序列处理方法,该方法的实现基于在Transformer模型的基础上进行改进所构建的WSformer模型,具体包括以下步骤:S1.WSformer模型的预训练:S1.1采用序列分割方法将超长序列分割成小序列;S1.2.基于双层注意力机制的特征提取:采用双层注意力机制进行词级特征提取和句级特征提取,得到整个序列的特征编码;S2.改进的位置向量编码:在步骤S1.2的编码过程中利用三角函数对词汇的位置编码进行调整,实现对位置向量的编码。该方法能够有效地降低长文本序列编码的时间成本,更加精确地刻画词与词之间的位置关系,实现了对长序列文本的有效建模,提高了预测精度和计算效率。提高了预测精度和计算效率。提高了预测精度和计算效率。

【技术实现步骤摘要】
基于改进Transformer模型的超长序列处理方法


[0001]本专利技术涉及自然语言处理的
,特别是一种基于改进Transformer模型的超长序列处理方法。

技术介绍

[0002]在自然语言处理领域,循环神经网络和卷积神经网络一直是序列建模的主流方法。2014年,Google提出seq2seq模型(Sutskever I,Vinyals O,Le Q V.Sequence to sequence learning with neural networks[J].Advances in neural information processing systems,2014,27.),简单的说就是一种序列到另一种序列的转换,在自然语言处理领域的应用主要有翻译,摘要,作诗等。自从seq2seq提出后,关于seq2seq的变体也有很多,但大多都是基于循环神经网络(Recurrent Neural Network,RNN)进行的处理,广泛用于各种序列建模,比如文本、语音等。2017年,Attention is all you need一文中首次提出基于自注意力机制的序列建模方法Transformer。但是对于超长序列的建模,Transformer方法需要计算序列中的每个词对于其它词的注意力权重,其计算成本是非常高的。此外,Transformer方法在捕获长距离词汇间的关系方面有所欠缺。2020年,Longformer(Beltagy I,Peters M E,Cohan A.Longformer:The long

document transformer[J].arXiv preprint arXiv:2004.05150,2020.)利用滑窗机制或随机选取部分词汇来降低Transformer中自注意力机制的计算量,进而捕获长距离信息。然而,在面对一个超长序列时,滑窗机制极有可能会破坏近距离词汇之间的信息联系而随机选取部分词汇的方式极有可能忽略重要词汇信息。2022年,Non

Position

Transformer(Haviv A,Ram O,Press O,et al.Transformer Language Models without Positional Encodings Still Learn Positional Information[J].arXivpreprint arXiv:2203.16634,2022.)提出不需要考虑词汇的位置编码也能很好捕获位置信息。然而在面对一个超长序列时,不考虑词汇的位置编码并不能带来效率的提升,同时Transformer本身自带的位置编码也存在一定的缺陷。
[0003]在文本语言表达中,一个段落表达的意思往往比一个句子表达的意思更为精准。这是因为人们在阅读的时候会根据一个句子表达的意思去推断周围句子的意思,如此可以使整个段落表达的意思更加精确,同时忽略一些不必要的干扰信息。然而,对于超长序列的处理,传统的transformer模型面临计算量过大、难以获取长距离词汇间的注意力权重、位置向量编码难以区分词与词之间的先后关系等一系列问题,现提出一种基于改进Transformer模型的超长序列处理方法。

技术实现思路

[0004]本专利技术的目的就是解决现有技术中的问题,提出一种基于改进Transformer模型的超长序列处理方法,通过对传统的Transformer方法进行改良,构建了新的超长序列处理模型WSformer,能够实现对长序列文本的有效建模,提高预测精度和计算效率。
[0005]为实现上述目的,本专利技术提出了一种基于改进Transformer模型的超长序列处理方法,该方法的实现基于在Transformer模型的基础上进行改进所构建的WSformer模型,具体包括以下步骤:
[0006]S1.WSformer模型的预训练:
[0007]S1.1采用序列分割方法将超长序列分割成小序列;
[0008]S1.2.基于双层注意力机制的特征提取:采用双层注意力机制进行词级特征提取和句级特征提取,得到整个序列的特征编码;
[0009]S2.改进的位置向量编码:在步骤S1.2的编码过程中利用三角函数对词汇的位置编码进行调整,实现对位置向量的编码。
[0010]作为优选,步骤S1.1中,以句子为单位将段落分割成多个序列,用矩阵来表示,行数为段落中所有句子所含词汇个数的最大值,列数为该段落中含有的句子个数。
[0011]作为优选,步骤S1.2中,在词级特征提取中,计算每个切分后的小序列里词汇之间的自注意力权值,然后进行汇总;在句级特征提取中,计算每个小序列之间的注意力权值,汇总后得到整个文本序列的编码。
[0012]作为优选,步骤S1中,WSformer模型的预训练的具体过程如下:
[0013]步骤a.按照一定规则将一个超长序列P进行切分,得到多个相对独立的小序列:
[0014]P={p1,p2,

,p
m
}
[0015]其中,n表示切分出的小序列的个数,p
i
(i=1..n)表示第i个小序列;
[0016]步骤b.进入词级注意力层,采用自注意力机制计算每个小序列中所有词汇的注意力权值:
[0017]W
w
=att(X
w
)
[0018]其中,表示词嵌入向量,B表示批训练的批次大小,S表示一个超长序列分割产生的最大小序列个数,超长序列为段落,小序列为句子;W表示小序列中最大的词语个数,E
W
表示词嵌入向量的维度;att()表示注意力函数,W
w
∈R
B
×
S
×
W
表示得到的词注意力权重矩阵;
[0019]步骤c.利用词级自编码器得到句子的嵌入编码,如下所示:
[0020]X
s
=Encode(X
w
,W
w
)
[0021]其中,表示词级自编码器的输出向量,H
W
表示词级自编码器中隐藏层的维度;
[0022]步骤d.词级自编码器的输出经过维度转化之后,进入句级注意力层,继续采用自注意力机制计算每个小序列对于超长序列建模的注意力权值:
[0023]W
s
=att(Reshape(X
s
))
[0024]其中,Reshape()表示维度转化函数,W
s
∈E
B
×
S
×
s_E
表示得到的句子注意力权重矩阵,s_E表示维度转换之后得到的句子嵌入向量的维度;
[0025]步骤e.经过句级自编码器和维度转化之后,得到超长序列的嵌入编码:
[0026]X
Ls
=Encode(X
w
...

【技术保护点】

【技术特征摘要】
1.一种基于改进Transformer模型的超长序列处理方法,其特征在于:该方法的实现基于在Transformer模型的基础上进行改进所构建的WSformer模型,具体包括以下步骤:S1.WSformer模型的预训练:S1.1采用序列分割方法将超长序列分割成小序列;S1.2.基于双层注意力机制的特征提取:采用双层注意力机制进行词级特征提取和句级特征提取,得到整个序列的特征编码;S2.改进的位置向量编码:在步骤S1.2的编码过程中利用三角函数对词汇的位置编码进行调整,实现对位置向量的编码。2.如权利要求1所述的一种基于改进Transformer模型的超长序列处理方法,其特征在于:步骤S1.1中,以句子为单位将段落分割成多个序列,用矩阵来表示,行数为段落中所有句子所含词汇个数的最大值,列数为该段落中含有的句子个数。3.如权利要求1所述的一种基于改进Transformer模型的超长序列处理方法,其特征在于:步骤S1.2中,在词级特征提取中,计算每个切分后的小序列里词汇之间的自注意力权值,然后进行汇总;在句级特征提取中,计算每个小序列之间的注意力权值,汇总后得到整个文本序列的编码。4.如权利要求1所述的一种基于改进Transformer模型的超长序列处理方法,其特征在于:步骤S1中,WSformer模型的预训练的具体过程如下:步骤a.按照一定规则将一个超长序列P进行切分,得到多个相对独立的小序列:P={p1,p2,...,p
n
}其中,n表示切分出的小序列的个数,p
i
(i=1..n)表示第i个小序列;步骤b.进入词级注意力层,采用自注意力机制计算每个小序列中所有词汇的注意力权值:W
w
=att(X
w
)其中,表示词嵌入向量,B表示批训练的批次大小,S表示一个超长序列分割产生的最大小序列个数,超长序列为段落,小序列为句子;W表示小序列中最大的词语个数,E
W
表示词嵌入向量的维度;att()表示注意力函数,W
w
∈R
B
×
S
×
W
表示得到的词注意力权重矩阵;步骤c.利用词级自编码器得到句子的嵌入编码,如下所示:X
s
=Encode(X

【专利技术属性】
技术研发人员:王瑞琴纪其顺黄熠旻万超艺
申请(专利权)人:湖州师范学院
类型:发明
国别省市:

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

1