语句生成方法和装置、存储介质及电子设备制造方法及图纸

技术编号:39261671 阅读:12 留言:0更新日期:2023-10-30 12:14
本申请公开了一种语句生成方法和装置、存储介质及电子设备。其中,该方法包括:对第一语句的第一语句表征向量进行编码,得到第一语义表征向量和扰动权重向量,其中,第一语句表征向量是根据第一语句中的各个字的字向量确定的向量,第一语义表征向量用于表示第一语句的语义,扰动权重向量用于控制预先确定的扰动向量对第一语义表征向量的扰动;根据扰动权重向量和扰动向量,对第一语义表征向量进行扰动,得到第二语义表征向量;对第二语义表征向量进行解码,得到第二语句,其中,第一语句与第二语句具有相同或相似的语义。本申请解决了相关技术中在任务处理模型的对抗训练过程中出现的鲁棒性较差的技术问题。鲁棒性较差的技术问题。鲁棒性较差的技术问题。

【技术实现步骤摘要】
语句生成方法和装置、存储介质及电子设备


[0001]本申请涉及计算机
,具体而言,涉及一种语句生成方法和装置、存储介质及电子设备。

技术介绍

[0002]自然语言处理任务中,通常采用文本攻击的方法,来评估任务处理模型的鲁棒性,文本对抗攻击方法的基本实现过程包括:对于文本数据样本,加入不可感知的扰动而导致模型错误的预测,从而测试模型的鲁棒性。
[0003]文本对抗攻击分为字符层级、词层级以及句子层级三种攻击方式,在实现三种类型的文本攻击方法的过程中,如何生成对抗攻击样本起着至关重要的作用。
[0004]相关技术中,仅提出了字粒度的对抗攻击样本的生成方法和词粒度的对抗攻击样本的生成方法,其中,字粒度的对抗文本生成方法主要通过计算每个字的重要程度、按照重要程度的降序的顺序作为攻击顺序,加入扰动的方式是以字音或字形相近的字进行替换,或者增删字符等;词粒度的样本攻击方法则是通过计算句子中每个词的重要程度,位置按重要程度的降序的顺序作为攻击顺序,通过同义词或近义词替换生成对抗攻击样本。
[0005]然而,当前文本的对抗攻击任务均是在字粒度或词粒度上进行,对于如何生成句粒度的对抗攻击样本(对抗攻击文本)、如何实现句粒度文本攻击方法并无有效解决方案,造成了在任务处理模型的对抗训练过程中出现的鲁棒性较差的技术问题。
[0006]针对上述的问题,目前尚未提出有效的解决方案。

技术实现思路

[0007]本申请实施例提供了一种语句生成方法和装置、存储介质及电子设备,以至少解决在任务处理模型的对抗训练过程中出现的鲁棒性较差的技术问题。
[0008]根据本申请实施例的一个方面,提供了一种语句生成方法,包括:对第一语句的第一语句表征向量进行编码,得到第一语义表征向量和扰动权重向量,其中,第一语句表征向量是根据第一语句中的各个字的字向量确定的向量,第一语义表征向量用于表示第一语句的语义,扰动权重向量用于控制预先确定的扰动向量对第一语义表征向量的扰动;根据扰动权重向量和扰动向量,对第一语义表征向量进行扰动,得到第二语义表征向量;对第二语义表征向量进行解码,得到第二语句,其中,第一语句与第二语句具有相同或相似的语义。
[0009]可选地,上述对第一语句的第一语句表征向量进行编码,得到第一语义表征向量和扰动权重向量,包括:将第一语句表征向量依次通过结构相同的N个编码器,得到第N个语句编码向量,其中,N为大于或等于1的正整数;对第N个语句编码向量进行第一线性变换,得到第一语义表征向量;对第N个语句编码向量进行第二线性变换,得到扰动权重向量。
[0010]可选地,上述将第一语句表征向量依次通过结构相同的N个编码器,得到第N个语句编码向量,包括:将第一语句表征向量输入N个编码器中的第1个编码器,得到第1个语句编码向量;在N大于或等于2的情况下,通过以下步骤得到第i个语句编码向量,其中,i为大
于或等于2、且小于或等于N的正整数:将第i

1个语句编码向量输入N个编码器中的第i个编码器,得到第i个语句编码向量,其中,第i

1个语句编码向量是N个编码器中的第i

1个编码器输出的语句编码向量。
[0011]可选地,上述将第i

1个语句编码向量输入N个编码器中的第i个编码器,得到第i个语句编码向量,包括:将第i

1个语句编码向量输入第i个编码器中的自注意力模块,得到第i个自注意力向量,其中,第i

1个语句编码向量与第i个自注意力向量具有相同的维度;将第i个自注意力向量和第i

1个语句编码向量输入第i个编码器中的第一加和与归一化模块,得到第i个归一化向量,其中,第i

1个语句编码向量与第i个归一化向量具有相同的维度,第一加和与归一化模块用于对第i个自注意力向量和第i

1个语句编码向量进行加和处理,得到第一加和向量,并对第一加和向量进行归一化处理,得到第i个归一化向量;将第i个归一化向量输入第i个编码器中的前馈网络模块,得到第i个前馈向量,其中,第i

1个语句编码向量与第i个前馈向量具有相同的维度;将第i个归一化向量和第i个前馈向量输入第i个编码器中的第二加和与归一化模块,得到第i个语句编码向量,其中,第i

1个语句编码向量与第i个语句编码向量具有相同的维度,第二加和与归一化模块用于对第i个归一化向量和第i个前馈向量进行加和处理,得到第二加和向量,并对第二加和向量进行归一化处理,得到第i个语句编码向量。
[0012]可选地,上述对第N个语句编码向量进行第一线性变换,得到第一语义表征向量,包括:将第N个语句编码向量与第一权重矩阵相乘,得到第一语义表征向量,其中,第N个语句编码向量的维度与第一权重矩阵的维度均为M
×
M,M为大于或等于2的正整数;上述对第N个语句编码向量进行第二线性变换,得到扰动权重向量,包括:将第N个语句编码向量与第二权重矩阵相乘,得到扰动权重向量,其中,第N个语句编码向量的维度与第二权重矩阵的维度均为M
×
M,第一权重矩阵与第二权重矩阵是不同的权重矩阵。
[0013]可选地,上述根据扰动权重向量和扰动向量,对第一语义表征向量进行扰动,得到第二语义表征向量,包括:根据扰动权重向量和扰动向量,确定扰动编码向量,其中,扰动编码向量和第一语义表征向量具有相同的维度;对扰动编码向量与第一语义表征向量进行加和处理,得到第二语义表征向量。
[0014]可选地,上述对扰动编码向量与第一语义表征向量进行加和处理,得到第二语义表征向量,包括:通过以下公式得到第二语义表征向量:c
k
=exp(σ
k
)
×
e
k
+m
k
,其中,c
k
是第二语义表征向量中的第k行维度为1
×
M的向量,σ
k
表示扰动权重向量中的第k行维度为1
×
M的向量,e
k
表示扰动向量中的第k行维度为1
×
M的向量,exp(σ
k
)
×
e
k
表示扰动编码向量中的第k行维度为1
×
M的向量,m
k
表示第一语义表征向量中的第k行维度为1
×
M的向量,k为大于或等于1、且小于或等于M的正整数,扰动权重向量的维度、扰动向量的维度、扰动编码向量的维度、第一语义表征向量的维度以及第二语义表征向量的维度均为M
×
M,M为大于或等于2的正整数。
[0015]可选地,上述对第二语义表征向量进行解码,得到第二语句,包括:将第二语义表征向量依次通过结构相同的P个解码器,得到第P个语句解码向量,其中,P为大于或等于1的正整数;对第P个语句解码向量进行第三线性变换,得到第二语句本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种语句生成方法,其特征在于,包括:对第一语句的第一语句表征向量进行编码,得到第一语义表征向量和扰动权重向量,其中,所述第一语句表征向量是根据所述第一语句中的各个字的字向量确定的向量,所述第一语义表征向量用于表示所述第一语句的语义,所述扰动权重向量用于控制预先确定的扰动向量对所述第一语义表征向量的扰动;根据所述扰动权重向量和所述扰动向量,对所述第一语义表征向量进行扰动,得到第二语义表征向量;对所述第二语义表征向量进行解码,得到第二语句,其中,所述第一语句与所述第二语句具有相同或相似的语义。2.根据权利要求1所述的方法,其特征在于,所述对第一语句的第一语句表征向量进行编码,得到第一语义表征向量和扰动权重向量,包括:将所述第一语句表征向量依次通过结构相同的N个编码器,得到第N个语句编码向量,其中,N为大于或等于1的正整数;对所述第N个语句编码向量进行第一线性变换,得到所述第一语义表征向量;对所述第N个语句编码向量进行第二线性变换,得到所述扰动权重向量。3.根据权利要求2所述的方法,其特征在于,所述将所述第一语句表征向量依次通过结构相同的N个编码器,得到第N个语句编码向量,包括:将所述第一语句表征向量输入所述N个编码器中的第1个编码器,得到第1个语句编码向量;在N大于或等于2的情况下,通过以下步骤得到第i个语句编码向量,其中,i为大于或等于2、且小于或等于N的正整数:将第i

1个语句编码向量输入所述N个编码器中的第i个编码器,得到第i个语句编码向量,其中,所述第i

1个语句编码向量是所述N个编码器中的第i

1个编码器输出的语句编码向量。4.根据权利要求3所述的方法,其特征在于,所述将第i

1个语句编码向量输入所述N个编码器中的第i个编码器,得到第i个语句编码向量,包括:将所述第i

1个语句编码向量输入所述第i个编码器中的自注意力模块,得到第i个自注意力向量,其中,所述第i

1个语句编码向量与所述第i个自注意力向量具有相同的维度;将所述第i个自注意力向量和所述第i

1个语句编码向量输入所述第i个编码器中的第一加和与归一化模块,得到第i个归一化向量,其中,所述第i

1个语句编码向量与所述第i个归一化向量具有相同的维度,所述第一加和与归一化模块用于对所述第i个自注意力向量和所述第i

1个语句编码向量进行加和处理,得到第一加和向量,并对所述第一加和向量进行归一化处理,得到所述第i个归一化向量;将所述第i个归一化向量输入所述第i个编码器中的前馈网络模块,得到第i个前馈向量,其中,所述第i

1个语句编码向量与所述第i个前馈向量具有相同的维度;将所述第i个归一化向量和所述第i个前馈向量输入所述第i个编码器中的第二加和与归一化模块,得到所述第i个语句编码向量,其中,所述第i

1个语句编码向量与所述第i个语句编码向量具有相同的维度,所述第二加和与归一化模块用于对所述第i个归一化向量和所述第i个前馈向量进行加和处理,得到第二加和向量,并对所述第二加和向量进行归一
化处理,得到所述第i个语句编码向量。5.根据权利要求2所述的方法,其特征在于,所述对所述第N个语句编码向量进行第一线性变换,得到所述第一语义表征向量,包括:将所述第N个语句编码向量与第一权重矩阵相乘,得到所述第一语义表征向量,其中,所述第N个语句编码向量的维度与所述第一权重矩阵的维度均为M
×
M,M为大于或等于2的正整数;所述对所述第N个语句编码向量进行第二线性变换,得到所述扰动权重向量,包括:将所述第N个语句编码向量与第二权重矩阵相乘,得到所述扰动权重向量,其中,所述第N个语句编码向量的维度与所述第二权重矩阵的维度均为M
×
M,所述第一权重矩阵与所述第二权重矩阵是不同的权重矩阵。6.根据权利要求1所述的方法,其特征在于,所述根据所述扰动权重向量和所述扰动向量,对所述第一语义表征向量进行扰动,得到第二语义表征向量,包括:根据所述扰动权重向量和所述扰动向量,确定扰动编码向量,其中,所述扰动编码向量和所述第一语义表征向量具有相同的维度;对所述扰动编码向量与所述第一语义表征向量进行加和处理,得到所述第二语义表征向量。7.根据权利要求6所述的方法,其特征在于,所述对所述扰动编码向量与所述第一语义表征向量进行加和处理,得到所述第二语义表征向量,包括:通过以下公式得到所述第二语义表征向量:c
k
=exp(σ
k
)
×
e
k
+m
k
其中,c
k
是所述第二语义表征向量中的第k行维度为1
×
M的向量,σ
k
表示所述扰动权重向量中的第k行维度为1
×
M的向量,e
k
表示所述扰动向量中的第k行维度为1
×
M的向量,exp(σ
k
)
×
e
k
表示所述扰动编码向量中的第k行维度为1
×
M的向量,m
k
表示所述第一语义表征向量中的第k行维度为1
×
M的向量,k为大于或等于1、且小于或等于M的正整数,所述扰动权重向量的维度、所述扰动向量的维度、所述扰动编码向量的维度、所述第一语义表征向量的维度以及所述第二语义表征向量的维度均为M
×
M,M为大于或等于2的正整数。8.根据权利要求1所述的方法,其特征在于,所述对所述第二语义表征向量进行解码,得到第二语句,包括:将所述第二语义表征向量依次通过结构相同的P个解码器,得到第P个语句解码向量,其中,P为大于或等于1的正整数;对所述第P个语句解码向量进行第三线性变换,得到第二语句表征向量;根据所述第二语句表征向量,确定所述第二语句。9.根据权利要求8所述的方法,其特征在于,所述将所述第二语义表征向量依次通过结构相同的P个解码器,得到第P个语句解码向量,包括:将所述第二语义表征向量和预设的起始符输入所述P个解码器中的第1个解码器,得到第1个语句解码向量;在P大于或等于2的情况下,通过以下步骤得到第j个语句解码向量,其中,j为大于或等于2、且小于或等于P的正整数:将所述第二语义表征向量和第j

【专利技术属性】
技术研发人员:陆笛
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1