发明内容
本发明的目的在于,针对所存在的不足,提出了一种自然语言模型的生成对抗式样本处理系统。
本发明采用如下技术方案:
一种自然语言模型的生成对抗式样本处理系统,包括模型对接模块、对抗策略处理模块、对抗样本生成模块、样本评估模块和迭代优化模块;
所述模型对接模块用于与自然语言模型进行对接并接收模型的训练样本,所述对抗策略处理模块设置对抗策略信息,所述对抗样本生成模块根据对抗策略对训练样本进行处理生成对抗样本,所述样本评估模块用于将对抗样本在模型中运行并筛选出对抗性不足的对抗样本,所述迭代优化模块用于将筛选出的对抗样本进行迭代处理提高对抗性;
所述对抗策略处理模块包括策略交互单元、策略存储单元和策略激活单元,所述策略交互单元用于提供策略参数的设置界面,所述策略存储单元用于保存策略参数类型以及对应的设置值,所述策略激活单元用于将确认的参数设置值发送给所述对抗样本生成模块;
所述对抗样本生成模块包括样本解析单元、策略应用单元、扰动实施单元和样本输出单元,所述样本解析单元用于接收原始样本数据并对原始样本数据进行解析,所述策略应用单元用于导入策略参数,所述扰动实施单元根据导入的策略参数对训练样本进行修改,所述样本输出单元用于将对抗样本发送至样本评估模块;
所述样本评估模块包括对抗训练单元和评估筛选单元,所述对抗训练单元用于接收对抗样本,并将对抗样本在自然语言中进行训练后接收训练结果,所述评估筛选单元用于对训练结果进行评估并筛选出对抗性不足的对抗样本;
进一步的,所述样本解析单元包括样本寄存器、拆解处理器和编码处理器,所述样本寄存器用于接收并保存样本信息,所述拆解处理器用于将样本信息拆解成多个单独的词汇,所述编码处理器将词汇转换成对应的词汇码,并根据词汇的位置在编码中添加词性码,由词性码和词汇码构成解析码;
进一步的,所述策略应用单元包括策略寄存器和参数转换处理器,所述策略寄存器用于存储每个策略参数的实际应用数值范围,所述参数转换处理器用于将策略参数转换成对应的实际应用值;
所述参数转换处理器根据下式将策略参数转换成实际应用值Vai:
;
其中,表示第i个策略参数的实际应用数值范围,/>为第i个策略参数;
所述参数转换处理器将实际应用值发送给所述扰动实施单元;
进一步的,所述扰动实施单元对样本文本进行修改的过程包括如下步骤:
S1、根据选择出需要替换的解析码作为目标解析码;
S2、根据确定目标解析码的替换范围;
S3、根据从替换范围中选择对抗解析码;
S4、根据将原有的解析码和对抗解析码重新排序;
S5、在将新排序的解析码还原成文字,并根据在文字中增删虚词,使新文本语句通顺;
S6、根据在新文本中加入噪音;
进一步的,所述对抗训练单元包括对抗样本寄存器、训练传输处理器和结果统计处理器,所述对抗样本寄存器用于保存接收的对抗样本信息,所述训练传输处理器用于与训练交互单元传输对抗样本和训练结果,所述结果统计处理器用于统计出每个对抗样本的训练结果;
所述结果统计处理器根据下式计算出每个对抗样本的对抗性At:
;
其中,n(0)表示判断错误的训练次数,n(1)表示判断正确的训练次数;
所述评估筛选单元根据下式计算整个对抗样本的对抗指数P:
;
其中,表示第i份对抗样本的对抗性,/>为对抗阈值,m为对抗样本的数量。
本发明所取得的有益效果是:
本系统能够自行设置策略参数来控制对抗样本的生成,并对对抗样本的对抗性进行量化分析处理,不断迭代来将对抗性不足的样本进行处理,最终得到保有原始样本基本含义的新对抗样本,提高自然语言的鲁棒性,本系统设置的多个策略参数,在样本生成过程中的每个步骤进行限制,能够有效避免生成低质量样本对训练造成干扰。
为使能更进一步了解本发明的特征及技术内容,请参阅以下有关本发明的详细说明与附图,然而所提供的附图仅用于提供参考与说明,并非用来对本发明加以限制。
具体实施方式
以下是通过特定的具体实施例来说明本发明的实施方式,本领域技术人员可由本说明书所公开的内容了解本发明的优点与效果。本发明可通过其他不同的具体实施例加以施行或应用,本说明书中的各项细节也可基于不同观点与应用,在不悖离本发明的精神下进行各种修饰与变更。另外,本发明的附图仅为简单示意说明,并非依实际尺寸的描绘,事先声明。以下的实施方式将进一步详细说明本发明的相关技术内容,但所公开的内容并非用以限制本发明的保护范围。
实施例一:本实施例提供了一种自然语言模型的生成对抗式样本处理系统,包括模型对接模块、对抗策略处理模块、对抗样本生成模块、样本评估模块和迭代优化模块;
所述模型对接模块用于与自然语言模型进行对接并接收模型的训练样本,所述对抗策略处理模块设置对抗策略信息,所述对抗样本生成模块根据对抗策略对训练样本进行处理生成对抗样本,所述样本评估模块用于将对抗样本在模型中运行并筛选出对抗性不足的对抗样本,所述迭代优化模块用于将筛选出的对抗样本进行迭代处理提高对抗性;
所述对抗策略处理模块包括策略交互单元、策略存储单元和策略激活单元,所述策略交互单元用于提供策略参数的设置界面,所述策略存储单元用于保存策略参数类型以及对应的设置值,所述策略激活单元用于将确认的参数设置值发送给所述对抗样本生成模块;
所述对抗样本生成模块包括样本解析单元、策略应用单元、扰动实施单元和样本输出单元,所述样本解析单元用于接收原始样本数据并对原始样本数据进行解析,所述策略应用单元用于导入策略参数,所述扰动实施单元根据导入的策略参数对训练样本进行修改,所述样本输出单元用于将对抗样本发送至样本评估模块;
所述样本评估模块包括对抗训练单元和评估筛选单元,所述对抗训练单元用于接收对抗样本,并将对抗样本在自然语言中进行训练后接收训练结果,所述评估筛选单元用于对训练结果进行评估并筛选出对抗性不足的对抗样本;
所述样本解析单元包括样本寄存器、拆解处理器和编码处理器,所述样本寄存器用于接收并保存样本信息,所述拆解处理器用于将样本信息拆解成多个单独的词汇,所述编码处理器将词汇转换成对应的词汇码,并根据词汇的位置在编码中添加词性码,由词性码和词汇码构成解析码;
所述策略应用单元包括策略寄存器和参数转换处理器,所述策略寄存器用于存储每个策略参数的实际应用数值范围,所述参数转换处理器用于将策略参数转换成对应的实际应用值;
所述参数转换处理器根据下式将策略参数转换成实际应用值Vai:
;
其中,表示第i个策略参数的实际应用数值范围,/>为第i个策略参数;
所述参数转换处理器将实际应用值发送给所述扰动实施单元;
所述扰动实施单元对样本文本进行修改的过程包括如下步骤:
S1、根据选择出需要替换的解析码作为目标解析码;
S2、根据确定目标解析码的替换范围;
S3、根据从替换范围中选择对抗解析码;
S4、根据将原有的解析码和对抗解析码重新排序;
S5、在将新排序的解析码还原成文字,并根据在文字中增删虚词,使新文本语句通顺;
S6、根据在新文本中加入噪音;
所述对抗训练单元包括对抗样本寄存器、训练传输处理器和结果统计处理器,所述对抗样本寄存器用于保存接收的对抗样本信息,所述训练传输处理器用于与训练交互单元传输对抗样本和训练结果,所述结果统计处理器用于统计出每个对抗样本的训练结果;
所述结果统计处理器根据下式计算出每个对抗样本的对抗性At:
;
其中,n(0)表示判断错误的训练次数,n(1)表示判断正确的训练次数;
所述评估筛选单元根据下式计算整个对抗样本的对抗指数P:
;
其中,表示第i份对抗样本的对抗性,/>为对抗阈值,m为对抗样本的数量。
实施例二:本实施例包含了实施例一中的全部内容,提供了一种自然语言模型的生成对抗式样本处理系统,包括模型对接模块、对抗策略处理模块、对抗样本生成模块、样本评估模块和迭代优化模块;
所述模型对接模块用于与自然语言模型进行对接并接收模型的训练样本,所述对抗策略处理模块设置对抗策略信息,所述对抗样本生成模块根据对抗策略对训练样本进行处理生成对抗样本,所述样本评估模块用于将对抗样本在模型中运行并筛选出对抗性不足的对抗样本,所述迭代优化模块用于将筛选出的对抗样本进行迭代处理提高对抗性;
结合图2,所述模型对接模块包括模型接入单元、数据接入单元和训练交互单元,所述模型接入单元用于与自然语言模型进行通讯对接,所述数据接入单元用于接收并保存原始训练样本,所述训练交互单元用于输入训练样本并输出训练结果;
结合图3,所述对抗策略处理模块包括策略交互单元、策略存储单元和策略激活单元,所述策略交互单元用于提供策略参数的设置界面,所述策略存储单元用于保存策略参数类型以及对应的设置值,所述策略激活单元用于将确认的参数设置值发送给所述对抗样本生成模块;
结合图4,所述对抗样本生成模块包括样本解析单元、策略应用单元、扰动实施单元和样本输出单元,所述样本解析单元用于接收原始样本数据并对原始样本数据进行解析,所述策略应用单元用于导入策略参数,所述扰动实施单元根据导入的策略参数对训练样本进行修改,所述样本输出单元用于将对抗样本发送至样本评估模块;
结合图5,所述样本评估模块包括对抗训练单元和评估筛选单元,所述对抗训练单元用于接收对抗样本,并将对抗样本在自然语言中进行训练后接收训练结果,所述评估筛选单元用于对训练结果进行评估并筛选出对抗性不足的对抗样本;
所述迭代优化模块包括迭代接收单元和参数优化单元,所述迭代优化单元用于接收对抗性不足的对抗样本,所述参数优化单元用于根据评估结果对策略参数进行调整;
所述策略交互单元包括界面设置处理器、参数转换处理器和激活响应处理器,所述界面设置处理器用于显示设置内容,所述设置内容包括策略参数类型、设置条和确认按钮,所述参数转换处理器用于将设置条转换成对应的参数值,所述激活响应处理器用于检测确认按钮状态并向策略激活单元发送激活信号;
所述策略参数类型包括词汇替换参数、同义词范围参数、语义偏移参数、句子结构变化参数、文本长度维持参数和噪声注入参数,分别用、/>、/>、/>、/>和/>表示,策略参数的取值范围均为/>,
所述词汇替换参数用于控制在文本中有多少比例的词汇会被替换;
所述同义词范围参数用于控制从同义词库中选择词汇的范围;
所述语义偏移参数用于控制替换词汇与原词汇之间的语义距离;
所述句子结构变化参数用于控制句子结构可以发生的变化程度;
所述文本长度维持参数用于控制对抗样本的长度与原始样本长度的比例范围;
所述噪声注入参数用于控制在文本中注入多少噪声;
所述样本解析单元包括样本寄存器、拆解处理器和编码处理器,所述样本寄存器用于接收并保存样本信息,所述拆解处理器用于将样本信息拆解成多个单独的词汇,所述编码处理器将词汇转换成对应的词汇码,并根据词汇的位置在编码中添加词性码,由词性码和词汇码构成解析码;
所述策略应用单元包括策略寄存器和参数转换处理器,所述策略寄存器用于存储每个策略参数的实际应用数值范围,所述参数转换处理器用于将策略参数转换成对应的实际应用值;
所述参数转换处理器根据下式将策略参数转换成实际应用值Vai:
;
其中,表示第i个策略参数的实际应用数值范围;
所述参数转换处理器将6个实际应用值发送给所述扰动实施单元;
所述扰动实施单元对样本文本进行修改的过程包括如下步骤:
S1、根据选择出需要替换的解析码作为目标解析码;
S2、根据确定目标解析码的替换范围;
S3、根据从替换范围中选择对抗解析码;
S4、根据将原有的解析码和对抗解析码重新排序;
S5、在将新排序的解析码还原成文字,并根据在文字中增删虚词,使新文本语句通顺;
S6、根据在新文本中加入噪音;
所述扰动实施单元包括编码词汇转换处理器、同义词汇处理器、结构句式处理器和噪音处理器,所述编码词汇转换处理器用于将解析码与词汇之间相互转换,所述同义词汇处理器用于记录同义词的词汇群以及并计算出整体的偏移距离,所述结构句式处理器用于确定文本的句式结构处于正确状态,所述噪音处理器用于生成错别字作为噪音内容;
所述同义词汇处理器根据下式计算出偏移距离D:
;
其中,n为替换的词汇数量,为第i个替换的词汇与源词汇的词义距离;
所述词汇群中记录了任意两个词汇的词义距离;
所述对抗训练单元包括对抗样本寄存器、训练传输处理器和结果统计处理器,所述对抗样本寄存器用于保存接收的对抗样本信息,所述训练传输处理器用于与训练交互单元传输对抗样本和训练结果,所述结果统计处理器用于统计出每个对抗样本的训练结果;
单次的训练结果为真和伪,真表示模型判断正确,用1表示,伪表示模型判断错误,用0表示,统计的训练结果用对抗性At表示:
;
其中,n(0)表示判断错误的训练次数,n(1)表示判断正确的训练次数;
所述评估筛选单元根据下式计算整个对抗样本的对抗指数P:
;
其中,表示第i份对抗样本的对抗性,/>为对抗阈值,m为对抗样本的数量;
当对抗指数小于0时,表示整个对抗样本的对抗性未达到要求,向对抗策略处理模块发送信息,并在策略交互单元上显示信息要求调整策略参数,当对抗指数大于等于0时,表示整个对抗样本的对抗性达到要求,将对抗指数小于YA的对抗样本发送给所述迭代优化模块;
所述参数优化单元根据下式计算出新的策略参数:
;
所述迭代优化模块将迭代接收单元中的样本和新的策略参数发送给对抗样本生成模块进行迭代生成新的对抗样本;
上文中出现的i为用于表示序号的序数。
以上所公开的内容仅为本发明的优选可行实施例,并非因此局限本发明的保护范围,所以凡是运用本发明说明书及附图内容所做的等效技术变化,均包含于本发明的保护范围内,此外,随着技术发展其中的元素可以更新的。