一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于生成对抗网络的数据过滤方法、系统、设备和介质与流程

2022-07-22 21:45:29 来源:中国专利 TAG:


1.本技术涉及机器学习技术领域,特别是涉及一种基于生成对抗网络的数据过滤方法、系统、电子设备和存储介质。


背景技术:

2.数据增强技术一直被广泛用于缓解低资源条件下深度学习模型的数据饥渴问题。所谓低资源问题,是在一些场景下,只有少量的数据可用于模型训练。基于已有的少量实际数据,通过数据增强技术,可以获得大量的合成数据。
3.现有的基于规则的实现方法和基于深度学习方法在实现数据合成时均存在缺点,具体为:其一,基于规则的实现方法,泛化性较弱,且可能会出现关键词错删等异常,从数据分布上来看,基于规则的方法生成的数据,其在特征空间中的分布,相对集中,同时由于规则属于硬性设定往往无纠偏机制进行校正,所以生成的数据有可能分布较为稀疏,且相对于原始数据特征空间的而言的离群点较集中。如果使用这样的数据进行下游模型的训练,可能导致模型性能遭到破坏;其二,基于深度学习方法进行生成数据时,其生成数据拥有分布较广的优点,但由于在低资源场景下,存在训练数据不足的特点,而深度学习模型本身的训练依赖一定规模的训练数据,因此存在生成脏数据(即机器学习中的脏数据为不可信数据、缺失数据或异常数据等)较多的情况。大量的脏数据会导致生成数据的整体分布与原始数据的合理分布间的差异较大,同时由于深度学习模型自身可解释性较差,很难从模型本身获得根本的改善和约束;但由于数据质量对于深度学习模型性能有着极大的影响,因此良莠不齐的合成数据有时不仅不能给模型带来增强效果,甚至会对降低模型性能,更有甚者会导致模型崩溃无法使用。
4.目前针对相关技术中合成大量数据中存在大量脏数据,导致模型性能遭到破坏的问题,尚未提出有效的解决方案。


技术实现要素:

5.本技术实施例提供了一种基于生成对抗网络的数据过滤方法、系统、电子设备和存储介质,以至少解决相关合成大量数据中存在大量脏数据,导致模型性能遭到破坏的问题。
6.第一方面,本技术实施例提供了一种基于生成对抗网络的数据过滤方法,所述方法包括以下步骤:
7.获取命名实体数据;
8.将所述命名实体数据输入生成对抗网络中预先训练好的生成器生成预设数量的合成数据;其中,所述预设数量的合成数据的数量大于所述命名实体数据的数量,且所述生成对抗网络模型包括判别器;
9.将所述预设数量的合成数据和所述命名实体数据分别输入所述判别器进行编码,并对编码后的数据进行分类,得到分类结果;
10.若判断分类结果为负类的合成数据时,过滤掉该负类的合成数据,得到过滤后的合成数据。
11.在其中一些实施例中,在所述判别器包括预训练语言模型和分类器的情况下,将所述预设数量的合成数据和所述命名实体数据分别输入所述判别器进行编码,并对编码后的数据进行分类,得到分类结果包括:
12.将所述预设数量的合成数据和所述命名实体数据分别输入所述预训练语言模型进行编码,得到编码后的数据;
13.将所述编码后的数据输入分类器,得到分类结果。
14.在其中一些实施例中,所述预训练语言模型为bert模型。
15.在其中一些实施例中,在所述分类器为前馈神经网络的情况下,所述判别器的训练过程包括:
16.将所述预设数量的合成数据和所述命名实体数据合并,将合并后数据作为判别器的训练数据;
17.将所述训练数据输入所述预训练语言模型进行编码,得到编码后的数据;
18.将所述编码后的数据输入前馈神经网络,得到分类结果,若判断分类结果为负类的合成数据时,过滤掉该负类的合成数据,得到过滤后的合成数据;
19.基于所述前馈神经网络的最后一层网络的softmax函数计算所述分类结果的概率误差;
20.在所述概率误差最小时,得到训练好的判别器。
21.在其中一些实施例中,在将所述预设数量的合成数据和所述命名实体数据合并之前,所述方法还包括:
22.将所述预设数量的合成数据标记为负类,且将所述命名实体数据标记为正类。
23.在其中一些实施例中,所述判别器的训练过程还包括:将所述判别器接入端对端训练过程当中。
24.在其中一些实施例中,在所述生成对抗网络中预先训练好的生成器为深度循环神经网络的情况下,将所述命名实体数据输入生成对抗网络中预先训练好的生成器生成预设数量的合成数据包括:
25.将所述命名实体数据输入所述深度循环神经网络生成所述预设数量的合成数据。
26.第二方面,本技术实施例提供了基于生成对抗网络的数据过滤系统,所述系统包括:
27.获取模块,用于获取命名实体数据;
28.生成模块,用于将所述命名实体数据输入生成对抗网络中预先训练好的生成器生成预设数量的合成数据;其中,所述预设数量的合成数据的数量大于所述命名实体数据的数量;
29.编码模块,用于在所述生成对抗网络模型包括判别器的情况下,将所述预设数量的合成数据和所述命名实体数据分别输入所述判别器进行编码;
30.分类模块,用于对编码后的数据进行分类,得到分类结果;
31.过滤模块,用于若判断分类结果为负类的合成数据时,过滤掉该负类的合成数据,得到过滤后的合成数据。
等类似词语并不表示数量限制,可表示单数或复数。本技术所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本技术所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本技术所涉及的“多个”是指大于或者等于两个。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。本技术所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
43.本技术提供一种基于生成对抗网络(generative adversarial networks,gans)的数据过滤方法,图1是本技术实施例的基于生成对抗网络的数据过滤方法的第一流程图,如图1所示,在本实施例中,该方法包括以下步骤:
44.步骤s101,获取命名实体数据;其中,命名实体数据就是人名、机构名、地名以及其他所有以名称为标识的实体,当然,更广泛的实体还包括数字、日期、货币、地址等等,例如,“小明是一名股票经纪人”这句话中,“小明”与“股票经纪人”就是命名实体,“小明”的实体类别是“人名”,“股票经纪人”的实体类别是“职业”。
45.步骤s102,将命名实体数据输入生成对抗网络中预先训练好的生成器生成预设数量的合成数据;如此,缓解了低资源条件下深度学习模型的数据饥渴问题;其中,预设数量的合成数据的数量大于命名实体数据的数量;且生成对抗网络模型包括判别器;另外,预设数量的合成数据的数量的具体根据用户需求设定,此处不做具体限定;
46.步骤s103,将预设数量的合成数据和命名实体数据分别输入判别器进行编码,并对编码后的数据进行分类,得到分类结果;如此,方便的判断输入的数据是合成数据还是命名实体数据(即真实数据);
47.步骤s104,若判断分类结果为负类的合成数据时,过滤掉该负类的合成数据,得到过滤后的合成数据。也就是说,若判别器判断分类结果为负类的合成数据时,则证明该合成数据为低质量数据或脏数据,本实施例通过过滤掉该负类的合成数据,得到过滤后的合成数据,提高了模型的增强效果,给下游模型的训练提高了良好的训练数据;重复上述步骤s101至步骤s104,直到对抗网络模型生成预设数量的合成数据达到用户的最终预设数量,例如,当用户的最终数据为1000条时,最终预设数量为1000条;最终预设数量为根据用户实际需求设定,此处不做具体限定;由于本领域技术人员知道机器学习中的脏数据为不可信数据、缺失数据或异常数据等数据,此处不在一一赘述。
48.通过上述步骤s101至步骤s104,首先,获取命名实体数据,然后,将命名实体数据输入生成对抗网络中预先训练好的生成器生成预设数量的合成数据,以缓解低资源条件下深度学习模型的数据饥渴问题,接着,在生成对抗网络模型包括判别器的情况下,将预设数量的合成数据和命名实体数据分别输入判别器进行编码,并对编码后的数据进行分类,得到分类结果,方便的判断输入的数据是合成数据还是命名实体数据(即真实数据),最后,若判断分类结果为负类的合成数据时,过滤掉该负类的合成数据,得到过滤后的合成数据,解决了相关合成大量数据中存在大量脏数据,导致模型性能遭到破坏的问题,不仅提高了模型的增强效果,给下游模型的训练提高了良好的训练数据,而且还提高了合成数据的整体
质量。
49.在其中一些实施例中,在判别器包括预训练语言模型和分类器的情况下,将预设数量的合成数据和命名实体数据分别输入判别器进行编码,并对编码后的数据进行分类,得到分类结果包括如下步骤:
50.将预设数量的合成数据和命名实体数据分别输入预训练语言模型进行编码,得到编码后的数据;
51.将编码后的数据输入分类器,得到分类结果。本实施例首先,通过预训练语言模型作为判别器的特征编码器,充分利用预训练语言模型所提供的丰富的语义信息以弥补低资源状态下语言模型训练不充分,而无法捕获真实数据语义分布的问题,接着,通过将编码后的数据输入分类器,得到分类结果,实现对输入的数据是合成数据还是命名实体数据(即真实数据)的判断。
52.为了弥补低资源状态下语言模型训练不充分,而无法捕获真实数据语义分布的问题,在其中一些实施例中,预训练语言模型为bert模型(bidirectional encoder representations from transformer,基于变换器的双向编码器表征),由于bert模型采用的是transformer模型(即变形器或变换器),transformer模型中采用了attention机制,其作用就是让机器在翻译时不止考虑原单词,还要考虑与其关联的其它单词,得到它在上下文中的含义,使对单词进行翻译时有了更多的特征信息,使得最后的结果更加准确。
53.图2是本技术实施例的基于生成对抗网络(即gans)的一个结构图,如图2所示,生成对抗网络由生成器g(z)、判别器d(x)和真实数据分布数据p
data
三部分组成,其中,先验分布数据pz与真实数据分布数据p
data
属同分布并来自同一特征空间,也可简单认为先验分布数据pz从真实数据分布数据p
data
中抽样获得。生成对抗网络的运作原理为:首先,生成器g(z)通过对先验分布数据pz的学习以达到逼近真实数据分布数据p
data
的目的;判别器是一个二分类器,其输入数据来自生成器或真实数据,判别器需判断输入数据来自生成器或真实数据。直观而言,生成器可看作是一个模仿者,不断模仿真实数据并试图产出高质量的合成数据来欺骗判别器;而判别器可看作是一个真品鉴别专家,通过不断接触真实数据和合成数据,并判断真伪来提高自身判断数据真伪的能力,y为得到判别器的分类结果,在理想状态下,最终二者会达到纳什均衡,即生成器生成的数据已与真实数据非常相似,同时判别器已不能准确判断真伪,只能依赖猜测来得出结论,猜测准确率为50%,并在生成器针对判别器收敛时,得到训练好的生成对抗网络。
54.在其中一些实施例中,在分类器为前馈神经网络的情况下,判别器的训练过程包括如下步骤:
55.首先,将预设数量的合成数据和命名实体数据合并,将合并后数据作为判别器的训练数据;
56.接着,将训练数据输入预训练语言模型进行编码,得到编码后的数据;
57.然后,将编码后的数据输入前馈神经网络,得到分类结果,若判断分类结果为负类的合成数据时,过滤掉该负类的合成数据,得到过滤后的合成数据;
58.接着,基于前馈神经网络的最后一层网络的softmax函数计算分类结果的概率误差;在该步骤之后,还可以继续进行生成器的训练,生成器的训练步骤还包括:获取生成器合成数据与命名实体数据(即真实数据)之间的第一误差;将第一误差和分类结果的概率误
差合并,得到合并后的数据,将该合并后的数据作为生成器的训练数据,以提高生成器的训练效果;需要说明的是,将第一误差和分类结果的概率误差合并包括简单相加或利用“多任务机制”加权合并等,从而为生成器的误差计算提供多样性,优化生成器模型的学习过程;
59.最后,在概率误差最小时,得到训练好的判别器。
60.在其中一些实施例中,在将预设数量的合成数据和命名实体数据合并之前,方法还包括如下步骤:
61.将预设数量的合成数据标记为负类,且将命名实体数据标记为正类。如此,方便区分合成数据和真实数据。
62.为了方便对判别器进行训练,在其中一些实施例中,判别器的训练过程还包括:将判别器接入端对端训练过程当中;其中,本领域技术人员知道端到端(即end to end)的神经网络模型是一种通用的神经网络训练结构,往往是指从原始输入到实际输出,中间只存在一个模型,不依赖多个模型或组件。
63.在其中一些实施例中,在生成对抗网络中预先训练好的生成器为深度循环神经网络(recurrent nn,简称rnn)的情况下,将命名实体数据输入生成对抗网络中预先训练好的生成器生成预设数量的合成数据包括:
64.将命名实体数据集输入深度循环神经网络生成预设数量的合成数据。当然在其他实施例中,生成器还可以替换为其他模型,此处不做具体限定。
65.需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
66.本实施例还提供了一种基于生成对抗网络的数据过滤系统,该系统用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
67.图3是根据本技术实施例的基于生成对抗网络的数据过滤系统的结构框图,如图3所示,该系统包括:
68.获取模块31,用于获取命名实体数据;
69.生成模块32,用于将命名实体数据输入生成对抗网络中预先训练好的生成器生成预设数量的合成数据;其中,预设数量的合成数据的数量大于命名实体数据的数量;
70.编码模块33,用于在生成对抗网络模型包括判别器的情况下,将预设数量的合成数据和命名实体数据分别输入判别器进行编码;
71.分类模块34,用于对编码后的数据进行分类,得到分类结果;
72.过滤模块35,用于若判断分类结果为负类的合成数据时,过滤掉该负类的合成数据,得到过滤后的合成数据。本实施例首先,获取命名实体数据,然后,将命名实体数据输入生成对抗网络中预先训练好的生成器生成预设数量的合成数据,以缓解低资源条件下深度学习模型的数据饥渴问题,接着,在生成对抗网络模型包括判别器的情况下,将预设数量的合成数据和命名实体数据分别输入判别器进行编码,并对编码后的数据进行分类,得到分类结果,方便的判断输入的数据是合成数据还是命名实体数据(即真实数据),最后,若判断分类结果为负类的合成数据时,过滤掉该负类的合成数据,得到过滤后的合成数据,解决了
相关合成大量数据中存在大量脏数据,导致模型性能遭到破坏的问题,不仅提高了模型的增强效果,给下游模型的训练提高了良好的训练数据,而且还提高了合成数据的整体质量。
73.需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
74.本实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
75.可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
76.可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
77.步骤s101,获取命名实体数据;
78.步骤s102,将命名实体数据输入生成对抗网络中预先训练好的生成器生成预设数量的合成数据;其中,预设数量的合成数据的数量大于命名实体数据的数量,且生成对抗网络模型包括判别器;
79.步骤s103,将预设数量的合成数据和命名实体数据分别输入判别器进行编码,并对编码后的数据进行分类,得到分类结果;
80.步骤s104,若判断分类结果为负类的合成数据时,过滤掉该负类的合成数据,得到过滤后的合成数据。
81.需要说明的是,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
82.另外,结合上述实施例中的基于生成对抗网络的数据过滤方法,本技术实施例可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种基于生成对抗网络的数据过滤方法。
83.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于生成对抗网络的数据过滤方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
84.在一个实施例中,图4是根据本技术实施例的电子设备的内部结构示意图,如图4所示,提供了一种电子设备,该电子设备可以是服务器,其内部结构图可以如图4所示。该电子设备包括通过内部总线连接的处理器、网络接口、内存储器和非易失性存储器,其中,该非易失性存储器存储有操作系统、计算机程序和数据库。处理器用于提供计算和控制能力,网络接口用于与外部的终端通过网络连接通信,内存储器用于为操作系统和计算机程序的运行提供环境,计算机程序被处理器执行时以实现一种基于生成对抗网络的数据过滤方
法,数据库用于存储数据。
85.本领域技术人员可以理解,图4中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
86.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
87.本领域的技术人员应该明白,以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
88.以上实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献