
1.本发明涉及数据库技术领域,具体而言,涉及一种神经网络训练方法及装置、电子设备及可读存储介质。
背景技术:2.相关技术中bert模型(bidirectional encoder representation from transformers)为了解决文本上下文contextual的问题,而bert模型的损失loss在处理近义词、近义短语、近义句子时,没有做特别的处理,
3.例如“解决一个问题”和“解决两个问题”这两句话,数据增强mask第3个字后,bert模型无法预测进行数据增强后的两句话,也就是说bert模型无法区分这个字,无法识别近义词、近义短语以及近义句子。
4.可见,相关技术中针对上述的问题,目前尚未提出有效的解决方案。
技术实现要素:5.本发明实施例提供了一种神经网络训练方法及装置、电子设备及可读存储介质,以至少解决由于相关技术中文本识别模型无法识别相似特征,而导致文本识别模型预测准确度低的技术问题。
6.根据本发明实施例的一个方面,提供了一种神经网络训练方法,包括:获取第一训练特征以及第二训练特征,其中,所述第二训练特征与所述第一训练特征为相似特征;根据所述第一结果以及所述第二结果确定训练损失,其中,所述第一结果是由目标神经网络对第一训练特征进行预测得到的,所述第二结果是由目标神经网络对第二训练特征进行预测得到的;根据所述训练损失对所述目标神经网络进行训练。
7.进一步地,所述目标神经网络为文本识别模型,所述第一训练特征以及所述第二训练特征为文本,其中,获取第一训练特征以及第二训练特征,包括以下至少之一:对所述第一训练特征中的词进行数据增强,以得到所述第二训练特征;对所述第一训练特征中的短语进行数据增强,以得到所述第二训练特征;对所述第一训练特征中的语句进行数据增强,以得到所述第二训练特征。
8.进一步地,根据所述第一结果以及所述第二结果确定训练损失,包括:在所述第一训练特征与所述第二训练特征为词不同的情况下,对所述第一结果以及所述第二结果进行互斥,以得到词训练损失。
9.进一步地,根据所述第一结果以及所述第二结果确定训练损失,包括:在所述第一训练特征与所述第二训练特征为短语不同的情况下,对所述第一结果以及所述第二结果进行互斥,以得到短语训练损失。
10.进一步地,根据所述第一结果以及所述第二结果确定训练损失,包括:在所述第一训练特征与所述第二训练特征为语句不同的情况下,对所述第一结果以及所述第二结果进行互斥,以得到语句训练损失。
11.进一步地,根据所述第一结果以及所述第二结果确定训练损失,包括:将所述第二结果输入至预设解码器,以得到所述预设解码器对应的第一解码损失。
12.进一步地,根据所述第一结果以及所述第二结果确定训练损失,还包括:对所述第一结果以及所述解码损失进行吸引,以得到第二解码损失。
13.根据本发明实施例的另一方面,还提供了一种神经网络训练装置,包括:获取单元,用于获取第一训练特征以及第二训练特征,其中,所述第二训练特征与所述第一训练特征为相似特征;确定单元,用于根据所述第一结果以及所述第二结果确定训练损失,其中,所述第一结果是由目标神经网络对第一训练特征进行预测得到的,所述第二结果是由目标神经网络对第二训练特征进行预测得到的;训练单元,用于根据所述训练损失对所述目标神经网络进行训练。
14.根据本发明实施例的另一方面,还提供了一种电子设备,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如上所述的神经网络训练方法的步骤。
15.根据本发明实施例的另一方面,还提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如上所述的神经网络训练方法的步骤。
16.在本发明实施例中,通过获取第一训练特征以及第二训练特征,其中,第二训练特征与第一训练特征为相似特征;根据第一结果以及第二结果确定训练损失,其中,第一结果是由目标神经网络对第一训练特征进行预测得到的,第二结果是由目标神经网络对第二训练特征进行预测得到的;根据训练损失对目标神经网络进行训练,达到了对相似特征的训练过程中加入了对应的优化目标的目的,从而实现了提升目标神经网络对相似特征识别准确度的技术效果,进而解决了由于相关技术中文本识别模型无法识别相似特征,而导致文本识别模型预测准确度低的技术问题。
附图说明
17.此处所说明的附图用来提供对本发明的进一步理解,构成本技术的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
18.图1是根据本发明实施例的一种可选的神经网络训练方法的流程示意图;
19.图2是根据本发明实施例的一种可选的bert模型进行数据增强的示意图;
20.图3是根据本发明实施例的一种可选的获取词训练损失的示意图;
21.图4是根据本发明实施例的一种可选的bert模型进行数据增强的示意图;
22.图5是根据本发明实施例的一种可选的获取短语训练损失的示意图;
23.图6是根据本发明实施例的一种可选的获取第二解码损失的示意图;
24.图7是根据本发明实施例的一种可选的神经网络训练装置的结构示意图。
具体实施方式
25.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人
员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
26.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
27.实施例1
28.根据本发明实施例,提供了一种神经网络训练方法,如图1所示,该方法包括:
29.s102,获取第一训练特征以及第二训练特征,其中,第二训练特征与第一训练特征为相似特征;
30.具体地,在本实施例中,第一训练特征以及第二训练特征为相似特征,包括但不限于相似的语句特征、相似的图像特征。相似特征为两个存在部分特征不同的特征,例如语句特征中的某个字、词语或句子不同,图像特征中的某个图像元素不同。
31.在一个例子中,语句特征“解决一个问题”与“解决两个问题”为字不同的相似特征、语句特征“解决一种问题”与“解决一个问题”为词语不同的相似特征。
32.在本实施例中,通过对预设的训练数据集中的训练特征进行数据增强mask-augment来得到第一训练特征对应的第二训练特征,对第一训练特征中的部分特征或部分元素进行数据增强后,得到相似特征,即第二训练特征。
33.s104,根据第一结果以及第二结果确定训练损失,其中,第一结果是由目标神经网络对第一训练特征进行预测得到的,第二结果是由目标神经网络对第二训练特征进行预测得到的;
34.具体地,在本实施例中,通过预训练的目标神经网络分别对第一训练特征以及第二训练特征进行预测,得到第一训练特征对应的第一结果,第二训练特征对应的第二结果。在具体的应用场景中,可以是文本识别模型对文本特征的识别,还可以是图像识别模型对图像特征的识别。
35.例如通过预训练的文本识别模型对第一文本(第一训练特征)进行预测,得到第一文本对应的第一结果。通过文本识别模型对第二文本(第二训练特征)进行预测,得到第二文本对应的第二结果。
36.通过第一结果以及第二结果来确定训练损失可以是通过对第一结果以及第二结果的向量进行点积操作,进而得到对应的训练损失。例如对第一结果以及第二结果进行互斥操作,进而得到文本识别模型对应的训练损失。
37.s106,根据训练损失对目标神经网络进行训练。
38.具体地,在本实施例中,通过对第一训练特征以及第二训练特征分别预测,以得到对应的第一结果以及第二结果,根据第一结果以及第二结果得到训练损失,在目标神经网络已知的预设损失的情况下,加上训练损失对目标神经网络进进行训练,直至目标神经网络收敛。
39.需要说明的是,通过本实施例,获取第一训练特征以及第二训练特征,其中,第二训练特征与第一训练特征为相似特征;根据第一结果以及第二结果确定训练损失,其中,第一结果是由目标神经网络对第一训练特征进行预测得到的,第二结果是由目标神经网络对第二训练特征进行预测得到的;根据训练损失对目标神经网络进行训练。达到了对相似特征的训练过程中加入了对应的优化目标的目的,从而实现了提升目标神经网络对相似特征识别准确度的技术效果,进而解决了由于相关技术中文本识别模型无法识别相似特征,而导致文本识别模型预测准确度低的技术问题。
40.可选地,在本实施例中,目标神经网络为文本识别模型,第一训练特征以及第二训练特征为文本,其中,获取第一训练特征以及第二训练特征,包括以下至少之一:对第一训练特征中的词进行数据增强,以得到第二训练特征;对第一训练特征中的短语进行数据增强,以得到第二训练特征;对第一训练特征中的语句进行数据增强,以得到第二训练特征。
41.在具体地应用场景中,在目标神经网络为文本识别模型的情况下,预测的输入特征为文本,第一训练特征为文本,则通过第一训练特征获取对应的第二训练特征包括但不限于:对文本中的词进行数据增强、对文本中的短语进行数据增强、对文本中的语句进行数据增强。例如对文本“解决一个问题”的词进行数据增强,得到文本“解决两个问题”;对文本“解决一个问题”的短语进行数据增强,得到文本“解决一种问题”;对文本“解决一个问题”的语句进行数据增强,得到文本“解缺一种问题”。
42.通过上述实施例,在目标神经网络为文本识别模型的情况下,能够获取到第一训练特征对应的不同的第二训练特征,即获取第一训练特征对应的相似特征,然后能够获取近义词、近义短语以及近义句子等文本特征。
43.可选地,在本实施例中,根据第一结果以及第二结果确定训练损失,包括但不限于:在第一训练特征与第二训练特征为词不同的情况下,对第一结果以及第二结果进行互斥,以得到词训练损失。
44.具体地,在本实施例中,文本识别模型为bert模型,如图2所示,第一训练特征为“解决一个问题”,对第一训练特征进行词对应的数据增强mask-augment,得到第二训练特征“解决三个问题”。如图3所示,对通过预训练好的bert模型预测数据增强mask-augment出来的第二训练特征,和被mask-augment的原始的第一训练特征进行互斥repel,以得到词训练损失。
45.需要说明的是,在本实施例中,互斥是指两个向量表示的距离随着训练而增大,具体地,互斥为对向量或矩阵进行点乘操作。
46.通过上述实施例,在第一训练特征与第二训练特征为词不同的情况下,对第一结果以及第二结果进行互斥,以得到词训练损失,以使目标神经网络在处理近义词时加入优化目标,提升了词分类的准确度。
47.可选地,在本实施例中,根据第一结果以及第二结果确定训练损失,包括但不限于:在第一训练特征与第二训练特征为短语不同的情况下,对第一结果以及第二结果进行互斥,以得到短语训练损失。
48.具体地,在本实施例中,文本识别模型为bert模型,如图4所示,第一训练特征为“解决一个问题”,对第一训练特征进行短语对应的数据增强mask-augment,得到第二训练特征“解决一种问题”。如图5所示,对通过预训练好的bert模型预测mask-augment出来的第
二训练特征,和被mask的原始的第一训练特征进行互斥repel,以得到短语训练损失。
49.通过上述实施例,在第一训练特征与第二训练特征为短语不同的情况下,对第一结果以及第二结果进行互斥,以得到短语训练损失,以使目标神经网络在处理近义短语时加入优化目标,提升了目标神经网络对短语分类的准确度。
50.可选地,在本实施例中,根据第一结果以及第二结果确定训练损失,包括但不限于:在第一训练特征与第二训练特征为语句不同的情况下,对第一结果以及第二结果进行互斥,以得到语句训练损失。
51.具体地,在本实施例中,文本识别模型为bert模型,第一训练特征为“解决一个问题”,对第一训练特征进行语句对应的数据增强mask-augment,得到第二训练特征“解缺一种问题”。对通过预训练好的bert模型预测mask-augment出来的第二训练特征,和被mask-augment的原始的第一训练特征进行互斥repel,以得到语句训练损失。
52.通过上述实施例,在第一训练特征与第二训练特征为短语不同的情况下,对第一结果以及第二结果进行互斥,以得到语句训练损失,以使目标神经网络在处理近义语句时加入优化目标,提升了目标神经网络对语句分类的准确度。
53.可选地,在本实施例中,根据第一结果以及第二结果确定训练损失,包括但不限于:将第二结果输入至预设解码器,以得到预设解码器对应的第一解码损失。
54.在具体地应用场景中,在本实施例中,在目标神经网络对第一特征或第二训练特征的处理过程中,在一个例子中,对第一训练特征进行编码处理后,再将对应的特征向量进行解码处理,输入至预设解码器中,解码器根据输入的特征向量以及以及第一解码损失生成原始输入特征即与第一训练特征相似的特征。
55.具体地,对训练句子进行数据增强mask token后,接入到解码器decoder,根据第一解码损失,生成与原始输入的训练句子相似的结果句子,以保证由训练句子得到的结果句子的含义稳定。
56.可选地,在本实施例中,根据第一结果以及第二结果确定训练损失,还包括但不限于:对第一结果以及解码损失进行吸引,以得到第二解码损失。
57.具体地,在上述例子中,对第一训练特征进行编码处理后,再将对应的特征向量进行解码处理,输入至预设解码器中,解码器根据输入的特征向量以及以及第一解码损失生成原始输入特征即与第一训练特征相似的输出特征。通过对输出特征与第一训练特征进行吸引操作,以得到第二解码损失。
58.需要说明的是,吸引是指两个特征向量表示的距离随着训练而缩小,具体可以通过卷积点乘得到。
59.具体地,如图6所示,对训练句子进行数据增强mask token后,接入到解码器decoder,生成原始完整的句子,生成的句子和原始的句子进行attract吸引,以得到第二解码损失。
60.通过本发明实施例,获取第一训练特征以及第二训练特征,其中,第二训练特征与第一训练特征为相似特征;根据第一结果以及第二结果确定训练损失,其中,第一结果是由目标神经网络对第一训练特征进行预测得到的,第二结果是由目标神经网络对第二训练特征进行预测得到的;根据训练损失对目标神经网络进行训练,达到了对相似特征的训练过程中加入了对应的优化目标的目的,从而实现了提升目标神经网络对相似特征识别准确度
的技术效果,进而解决了由于相关技术中文本识别模型无法识别相似特征,而导致文本识别模型预测准确度低的技术问题。
61.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
62.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
63.实施例2
64.根据本发明实施例,还提供了一种用于实施上述神经网络训练方法的神经网络训练装置,如图7所示,该装置包括:
65.1)获取单元70,用于获取第一训练特征以及第二训练特征,其中,所述第二训练特征与所述第一训练特征为相似特征;
66.2)确定单元72,用于根据所述第一结果以及所述第二结果确定训练损失,其中,所述第一结果是由目标神经网络对第一训练特征进行预测得到的,所述第二结果是由目标神经网络对第二训练特征进行预测得到的;
67.3)训练单元74,用于根据所述训练损失对所述目标神经网络进行训练。
68.可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
69.实施例3
70.根据本发明实施例,还提供了一种电子设备,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如实施例1所述的神经网络训练方法的步骤。
71.可选地,在本实施例中,存储介器被设置为存储用于执行以下步骤的程序代码:
72.s1,获取第一训练特征以及第二训练特征,其中,所述第二训练特征与所述第一训练特征为相似特征;
73.s2,根据所述第一结果以及所述第二结果确定训练损失,其中,所述第一结果是由目标神经网络对第一训练特征进行预测得到的,所述第二结果是由目标神经网络对第二训练特征进行预测得到的;
74.s3,根据所述训练损失对所述目标神经网络进行训练。
75.可选地,本实施例中的具体示例可以参考上述实施例1中所描述的示例,本实施例在此不再赘述。
76.实施例4
77.本发明的实施例还提供了一种可读存储介质。可选地,在本实施例中,上述可读存
储介质上存储程序或指令,所述程序或指令被处理器执行时实现如实施例1所述的神经网络训练方法的步骤。
78.可选地,在本实施例中,可读存储介质被设置为存储用于执行以下步骤的程序代码:
79.s1,获取第一训练特征以及第二训练特征,其中,所述第二训练特征与所述第一训练特征为相似特征;
80.s2,根据所述第一结果以及所述第二结果确定训练损失,其中,所述第一结果是由目标神经网络对第一训练特征进行预测得到的,所述第二结果是由目标神经网络对第二训练特征进行预测得到的;
81.s3,根据所述训练损失对所述目标神经网络进行训练。
82.可选地,存储介质还被设置为存储用于执行上述实施例1中的方法中所包括的步骤的程序代码,本实施例中对此不再赘述。
83.可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,randomaccess memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
84.可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
85.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
86.上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
87.在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
88.在本技术所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
89.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
90.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
91.以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。