CN110929866A - 神经网络模型的训练方法、装置和系统 - Google Patents
神经网络模型的训练方法、装置和系统 Download PDFInfo
- Publication number
- CN110929866A CN110929866A CN201811102482.6A CN201811102482A CN110929866A CN 110929866 A CN110929866 A CN 110929866A CN 201811102482 A CN201811102482 A CN 201811102482A CN 110929866 A CN110929866 A CN 110929866A
- Authority
- CN
- China
- Prior art keywords
- training data
- neural network
- elements
- neighborhood
- loss function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种神经网络模型的训练方法、装置和系统。其中,该方法包括:按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,训练数据包括:元素和元素对应的标签,每组训练数据对应不同的概率分布;将多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;将线性邻域元素输入至神经网络,并根据神经网络的输出结果,确定损失函数,其中,损失函数用于表征输出结果与元素对应标签的偏差程度;基于损失函数的最小值,得到神经网络的网络参数,其中,神经网络的网络参数用于表征神经网络模型。本发明解决了现有技术中使用卷积神经网络模型的设备的存储和计算资源有限,导致难以提升卷积神经网络模型的技术问题。
Description
技术领域
本发明涉及神经网络领域,具体而言,涉及一种神经网络模型的训练方法、装置和系统。
背景技术
卷积神经网络(Convolutional Neural Network,CNN)目前已广泛应用于计算机视觉任务中,通常包括数据输入层、卷积计算层、激励层、池化层以及全连接层,其中,卷积计算层是卷积神经网络最重要的一层,为了提升卷积神经网络模型的性能,目前常用的方式是调整卷积神经网络的参数。
但卷积神经网络的一个发展趋势即为向移动嵌入式设备部署,前端上位机既包括arm(Advanced RISC Machines,是一种RISC处理器)平台的嵌入式设备,也包括FPGA(Field-Programmable Gate Array,现场可编程门阵列)设备,这些设备都一个共同特点,即存储和计算资源都很有限,而为了提升卷积神经网络模型的性能而调整卷积神经网络的参数则会占用设备的大量计算资源。
针对现有技术中使用卷积神经网络模型的设备的存储和计算资源有限,导致难以提升卷积神经网络模型的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种神经网络模型的训练方法、装置和系统,以至少解决现有技术中使用卷积神经网络模型的设备的存储和计算资源有限,导致难以提升卷积神经网络模型的技术问题。
根据本发明实施例的一个方面,提供了一种获取神经网络模型的训练方法,包括:按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,训练数据包括:元素和元素对应的标签,每组训练数据对应不同的概率分布;将多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;将线性邻域元素输入至神经网络,并根据神经网络的输出结果,确定损失函数,其中,损失函数用于表征输出结果与元素对应标签的偏差程度;基于损失函数的最小值,得到神经网络的网络参数,其中,神经网络的网络参数用于表征神经网络模型。
根据本发明实施例的另一方面,还提供了一种神经网络模型的训练装置,包括:预处理模块,用于按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,训练数据包括:元素和元素对应的标签,每组训练数据对应不同的概率分布;扩展模块,用于将多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;确定模块,用于将线性邻域元素输入至神经网络,并根据神经网络的输出结果,确定损失函数,其中,损失函数用于表征输出结果与元素对应标签的偏差程度;获取模块,用于基于损失函数的最小值,得到神经网络的网络参数,其中,神经网络的网络参数用于表征神经网络模型。
根据本发明实施例的另一方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行如下步骤:按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,训练数据包括:元素和元素对应的标签,每组训练数据对应不同的概率分布;将多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;将线性邻域元素输入至神经网络,并根据神经网络的输出结果,确定损失函数,其中,损失函数用于表征输出结果与元素对应标签的偏差程度;基于损失函数的最小值,得到神经网络的网络参数,其中,神经网络的网络参数用于表征神经网络模型。
根据本发明实施例的另一方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行如下步骤:按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,训练数据包括:元素和元素对应的标签,每组训练数据对应不同的概率分布;将多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;将线性邻域元素输入至神经网络,并根据神经网络的输出结果,确定损失函数,其中,损失函数用于表征输出结果与元素对应标签的偏差程度;基于损失函数的最小值,得到神经网络的网络参数,其中,神经网络的网络参数用于表征神经网络模型。
根据本发明实施例的另一方面,还提供了一种神经网络模型的训练系统,包括:处理器;以及存储器,与处理器连接,用于为处理器提供处理以下处理步骤的指令:按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,训练数据包括:元素和元素对应的标签,每组训练数据对应不同的概率分布;将多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;将线性邻域元素输入至神经网络,并根据神经网络的输出结果,确定损失函数,其中,损失函数用于表征输出结果与元素对应标签的偏差程度;基于损失函数的最小值,得到神经网络的网络参数,其中,神经网络的网络参数用于表征神经网络模型。
在本发明实施例中,通过对一组训练数据进行预处理,得到满足多种分布的多组训练数据,对每组训练数据中的元素进行邻域上的扩展,得到每个元素对应的线性邻域元素,再构造损失函数,并基于邻域经验风险最小化原则,确定使损失函数最小的网络参数为神经网络的网络参数,由于该方案对一组训练数据进行了预处理得到了多组训练数据,并对每组训练数据中的元素都进行了邻域的扩展,因此增加了训练数据的数量,并对训练数据进行了扩充,从而可以在不改变网络结构,不增加网络参数的前提下,显著提升模型的性能。
由此,本申请上述实施例解决了现有技术中使用卷积神经网络模型的设备的存储和计算资源有限,导致难以提升卷积神经网络模型的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了一种用于实现获取神经网络模型的训练方法的计算机终端(或移动设备)的硬件结构框图;
图2是根据本申请实施例1的一种获取神经网络模型方法的流程图;
图3是根据本申请实施例2的一种神经网络模型的训练装置的示意图;以及
图4是根据本申请实施例4的一种计算机终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,还提供了一种获取神经网络模型的训练方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。图1示出了一种用于实现获取神经网络模型的训练方法的计算机终端(或移动设备)的硬件结构框图。如图1所示,计算机终端10(或移动设备10)可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的()方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的应用程序的漏洞检测方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端10(或移动设备)的用户界面进行交互。
此处需要说明的是,在一些可选实施例中,上述图1所示的计算机设备(或移动设备)可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图1仅为特定具体实例的一个实例,并且旨在示出可存在于上述计算机设备(或移动设备)中的部件的类型。
在上述运行环境下,本申请提供了如图2所示的获取神经网络模型的训练方法。图2是根据本申请实施例1的一种获取神经网络模型方法的流程图。
步骤S21,按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,训练数据包括:元素和元素对应的标签,每组训练数据对应不同的概率分布。
具体的,上述预处理模型可以是用于对数据进行变形处理的数据模型,预处理模型可以包含多种数据变形方式,向预处理模型输入一组训练数据后,能够得到预处理模型输出的多组训练数据。
上述初始数据可以是预先获取的一组训练数据,一组训练数据内包括多个训练数据,每个训练数据包括:元素和元素对应的标签。以从图像中获取的训练数据为例,元素可以表示图像中某个像素点,标签可以用于表示该像素点的类型(例如:该像素点属于文字块还是属于图像块等),在该组训练数据的基础上进行变形处理,即可得到多组训练数据。
在一种可选的实施例中,上述预处理模型可以用于对初始数据进行如下至少一种:随机翻转,随机镜像,缩放和区域随机割取。
在一种可选的实施例中,预处理模型对一组预先获取的训练数据进行R1预处理,产生新的训练数据D1,D1服从某种概率分布P1。在此基础上,预处理模型还对预先获取的训练数据进行与R1不同的预处理Rk,其中k为大于1的整数,产生新的训练数据Dk,Dk也服从某种概率分布Pk,Pk和P1通常为两种不同的分布,例如:P1是混合高斯分布,Pk是泊松分布。
需要说明的是,本申请不对预处理结果所符合的分布进行限定,也不对分布参数进行限定,最终会产生n(n>1)组并行的多分布数据,即上述多组训练数据。
步骤S23,将多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素。
具体的,上述邻域指的是通过在元素附近提取附加的虚拟样本,以构建每个元素周围的邻域,从而达到扩充训练数据的效果。
在一种可选的实施例中,对每组训练数据中的每个元素向邻域进行扩展,以其中一个元素为例,为了将该元素在邻域进行扩展,还需要找到该组训练数据中任意一个其他元素,该元素的线性邻域元素可以是该元素相对于任意一个其他元素的扩展结果。
步骤S25,将线性邻域元素输入至神经网络,并根据神经网络的输出结果,确定损失函数,其中,损失函数用于表征输出结果与元素对应标签的偏差程度。
具体的,上述神经网络可以为卷积神经网络,上述输出结果由神经网络的最后一层输出得到。由于训练数据中每个元素对应的标签是已知的,因此在得到数据的输出结果后,能够将输出结果中,神经网络预测的元素的标签与元素实际对应的标签进行比对。
在一种可选的实施例中,对于每一组训练数据中的每个元素,都具有卷积神经网络预测的标签的表达式和每个元素实际对应的标签,将卷积神经网络预测的标签的表达式和元素实际的标签带入预设的损失函数,即可得到根据以卷积神经网络的网络参数所表示的损失函数。
在另一种可选的实施例中,获取每一组训练数据中每个元素对应的线性邻域元素,并获取卷积神经网络对线性邻域元素的输出结果,以及卷积神经网络对训练数据中的元素的输出结果。基于卷积神经网络对线性邻域元素的输出结果,和卷积神经网络对训练数据中元素对应的标签,利用预先获取的邻域损失函数,即可得到根据以神经网络的网络参数所表示的邻域损失函数。
步骤S27,基于邻域相关损失函数的最小值,得到神经网络的网络参数,其中神经网络的网络参数用于表征神经网络模型。
具体的,上述神经网络的网络参数可以包括神经网络中每个卷基层的参数,具体可以包括每个层的核大小、通道数量以及每个神经元的权重等参数。
对于神经网络模型,其预测出的元素的标签与元素的实际标签的偏差越小,则神经网络模型的预测的结果越准确,再基于邻域经验风险最小化原则可以得到,最佳的网络参数是使损失函数最小的网络参数。
上述步骤中确定的损失函数可以是邻域相关损失函数,该损失函数与神经网络的网络参数相关,寻找使损失函数最小的网络参数,该网络参数即为神经网络模型的网络参数。在一种可选的实施例中,神经网络模型的邻域相关损失函数为:
其中,n用于表示用于训练神经网络的训练数据的组数,Wj用于表示每组训练数据在神经网络最后一层对应的权重,Lj即为每组训练数据对应的邻域损失函数,Uj用于表示每组训练数据在随机扰动层对应的权重,LXj用于表示每组函数对应的相关损失函数。
求解邻域相关损失函数为最小化模型得到最终的邻域相关损失函数:
可以采用梯度下降法进行求解,即可得到神经网络模型的网络参数,得到的网络参数即可构成一个神经网络模型,由于该网络参数是基于邻域经验风险最小化原则获取的,因此构成的神经网络模型是一个多分布邻域风险最小化的模型。
本申请上述实施例通过对一组训练数据进行预处理,得到满足多种分布的多组训练数据,对每组训练数据中的元素进行邻域上的扩展,得到每个元素对应的线性邻域元素,再构造损失函数,并基于邻域经验风险最小化原则,确定使损失函数最小的网络参数为神经网络的网络参数,由于该方案对一组训练数据进行了预处理得到了多组训练数据,并对每组训练数据中的元素都进行了邻域的扩展,因此增加了训练数据的数量,并对训练数据进行了扩充,从而可以在不改变网络结构,不增加网络参数的前提下,显著提升模型的性能。
由此,本申请上述实施例解决了现有技术中使用卷积神经网络模型的设备的存储和计算资源有限,导致难以提升卷积神经网络模型的技术问题。
作为一种可选的实施例,预处理模型用于对初始数据进行如下至少一种:随机翻转,随机镜像,缩放和区域随机割取。
具体的,随机翻转可以是使用翻转函数,随机设置函数参数对初始数据进行翻转处理;随机镜像可以是将元素按照垂直中线进行调换;缩放可以是将训练数据中的元素按随机的比例缩放至一定数据范围内;区域随机割取可以是随机提取数据中的一部分。对初始数据进行的预处理可以是上述处理的一种或多种的组合。在对初始数据进行多种处理方式的组合处理时,可以按照预定顺序依次进行。
在一种可选的实施例,预处理模型对初始数据依次进行的预处理由随机翻转,随机镜像,缩放,区域随机割取等操作组成,由于随机翻转、随机镜像以及随机割取的随机性,保证对初始数据每次进行的预处理都不同,进而保证每组训练数据都不相同。
作为一种可选的实施例,将多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素,包括:对训练数据中的元素进行随机排序,得到训练数据对应的随机排序数据集;基于训练数据和随机排序数据集,确定训练数据中每个元素相对任意一个其他元素的线性邻域元素。
以一组训练数据D1(D1包括多个训练数据,是一个训练数据集)为例进行说明,数据集D1可表示为(d1,l1)的二元组,其中,d1表示原始数据集合(例如:图像集),l1用于表示d1的标签(例如:表示d1中的元素是属于哪一类),假设d11是d1的一个元素,d1r是从d1中随机选取的不同于d11的元素,那么可以基于d11和d1r生成d11相对于d1r的线性邻域元素。
通过上述方式可以得到任意一个元素的线性邻域元素,但对于每个元素都要分别随机抽取其他元素,再进行线性邻域元素的运算,运算速度较慢,消耗的运算资源较多,因此,为进一步加快运算速度,本申请上述实施例采用构造随机排序数据集的方式,直接构造一组训练数据的线性邻域元素。
在一种可选的实施例中,对D1的全部元素进行随机排序,得到随机排序数据集D1'=(d1',l1'),即可以根据训练数据中的元素,和随机排序数据集中相同位置的元素,获取到训练数据中的元素相对于随机排序数据集中相同位置的元素的线性邻域元素。
作为一种可选的实施例,基于训练数据和随机排序数据集,确定训练数据中每个元素相对任意一个其他元素的线性邻域元素,包括:获取预设的系数;获取系数与训练数据中每个元素的第一乘积构成的第一乘积集合;获取1与系数的差值;获取每个元素在随机排序数据集中对应位置的元素与差值的第二乘积构成的第二乘积集合;确定第一乘积集合与第二乘积集合之和为训练数据的线性邻域元素集合,其中,线性邻域元素集合包括训练数据中每个元素相对任意一个其他元素的线性邻域元素。
在一种可选的实施例中,上述方案可以通过如下公式表示:d11~1r=λd11+(1-λ)d1r,在该公式中,预设的系数为λ,d11~1r用于表示d11相对于d1r的线性邻域元素。
对D1的全部元素进行随机排序得到D′1=(d′1,l′1),则产生新的三元组数据集为:
D1new=(d1new,l1,l′1);
其中,d1new=λd1+(1-λ)d′1,d1new有两个对应的标签:即d1对应的标签l1以及d′1对应的标签l′1,其中,d1new即为训练数据D1的线性邻域元素集合,包括训练数据D1中每个元素的线性邻域元素,预设的系数为λ,d1为训练数据中的元素,d′1为d1在随机排序数据集中对应的元素。
同理的,对第k种分布数据Dk则存在dknew=λdk+(1-λ)d'k,dknew即为训练数据Dk的线性邻域元素集合,包括训练数据Dk中每个元素的线性邻域元素。对dknew有两个对应的标签:即dk对应的标签lk以及d'k对应的标签l'k。其中λ服从贝塔分布,本发明实现中该贝塔分布α=β的效果最佳。
作为一种可选的实施例,损失函数为邻域相关损失函数,将线性邻域元素输入至神经网络,并根据神经网络的输出结果,确定损失函数,包括:基于多组训练数据中元素对应的标签和线性邻域元素在神经网络最后一层的输出结果,确定训练数据的整体邻域损失函数;根据随机扰动层的输出结果与神经网络最后一层的输出结果确定整体相关损失函数,其中,随机扰动层是与最后一层并行的层;确定整体邻域损失函数与整体相关损失函数之和为邻域相关损失函数。
在上述方案中,将邻域相关损失函数的构成分为两部分,一部分为整体邻域损失函数,另一部分为整体相关损失函数,整体领域损失函数和相关邻域损失函数之和即为邻域相关损失函数。
在一种可选的实施例中,可以将每组训练数据的邻域损失函数叠加,得到所有训练数据的整体邻域损失函数,同样的,可以将每组训练数据的相关损失函数叠加,得到所有训练数据的相关损失函数。
需要说明的是,整体邻域损失函数用于表示卷积神经网络的邻域风险,在上述方案中,还在卷积神经网络的最后一层加入了随机扰动层,以提高卷积神经网络的性能。随机扰动层的参数与卷积神经网络最后一层的参数相同,在加入随机扰动层后,由于随机扰动层的随机初始化与最后一层的随机初始化不同,导致该层权重初始和最后一层差异较大,因此还需要确定随机扰动层与卷积神经网络最后一层的整体相关损失函数,以随机扰动层的参数。
作为一种可选的实施例中,基于多组训练数据中元素对应的标签和线性邻域元素在神经网络最后一层的输出结果,确定训练数据的整体邻域损失函数,包括:基于多组训练数据中元素对应的标签和线性邻域元素在神经网络最后一层的输出结果,确定训练数据的邻域损失函数;获取每组训练数据在神经网络中对应的第一权重;根据第一权重,对每组训练数据对应的邻域损失函数进行加权,得到整体邻域损失函数。
在上述方案中,每种分布对应的训练数据可以具有不同的权重,该权重值可以是预先获取的。
具体的,一组训练数据对应的邻域损失函数用于表示,神经网络对该组训练数据对应的线性邻域元素的输出结果,与该组训练数据中的元素实际对应的标签的偏差,一组训练中包括多个训练数据,该组训练数据的邻域损失函数即用于表示每个训练数据的偏差的集合。将每组训练数据的邻域损失函数进行叠加,即可得到整体邻域损失函数。
在一种可选的实施例中,可以使用如下公式表示上述训练数据的整体邻域损失函数:其中n表示有n种分布,也即预处理的数量,Wj是每种分布在卷及神经网络中对应的权重,例如,可选的权重为0.5,Lj可以每组训练数据的邻域损失函数。
作为一种可选的实施例,基于多组训练数据中元素对应的标签和线性邻域元素在神经网络最后一层的输出结果,确定训练数据的邻域损失函数,包括:获取训练数据中元素的第一标签、随机排序数据集中相同位置的元素的第二标签,以及线性邻域元素在神经网络最后一层的输出结果;获取第一标签与线性邻域元素对应的输出结果之间的第一损失函数,和第二标签与线性邻域元素对应的输出结果之间的第二损失函数;基于第一损失函数和第二损失函数确定训练数据中每个元素对应的邻域损失函数。
具体的,可以基于第一损失函数和第二损失函数确定训练数据中每个元素对应的邻域损失函数。对训练数据中的元素进行随机排序,得到的随机排序数据集的目的是,对训练数据中的每个元素进行并行运行,即并行获取训练数据中每个元素的线性邻域元素。
具体的,两个元素A和B的线性邻域元素用于表示高维数据点A和B确定的高维直线上的不同于A和B的其他点,是在元素附近提取的虚拟样本。因此,可以确定训练数据中任意一个元素相对于任意一个其他元素的线性领域元素。
领域损失函数可以根据训练数据中每个元素的邻域损失函数构成的集合,与每个元素对应的线性邻域元素的损失函数确定,元素的损失函数可以是交叉熵损失函数。由于线性领域元素是根据训练数据中元素与随机排序数据集中对应的元素确定的,因此训练数据中每个元素的邻域损失函数包括两部分,一部分是线性邻域元素的输出结果与训练数据中元素的标签的损失函数,另一部分是线性邻域元素的输出结果与随机排序数据集中对应元素的标签的损失函数。
此处需要说明的是,上述输出结果均为神经网络的最后一层输出的结果。
在一种可选的实施例中,以训练数据D1为例进行说明,其自身的损失函数为cross_entropy(fc1,l1),其中fc1为d1经过神经网络中最后一层的输出,D′1为训练数据D1对应的随机排序数据集,D1'的损失函数即为cross_entropy(fc′1,l′1),其中,fc′1为d′1经过神经网络最后一层的输出,cross_entropy表示交叉熵损失函数。
对于训练数据D1,可以构造的三元组数据集D1new=(d1new,l1,l′1),由此可得,其第一损失函数为cross_entropy(fc1new,l1),第二损失函数为cross_entropy(fc1new,l′1),其中,fc1new为线性邻域元素对应的神经网络的输出结果,l1是d1的标签,l′1为d′1的标签。
由此可知,对于D1new,其损失函数即为邻域损失函数:
L1=λ*cross_entropy(fc1new,l1)+(1-λ)*cross_entropy(fc1new,l′1);
对第k种分布数据Dk,其邻域损失函数为:
Lk=λ*cross_entropy(fcknew,lk)+(1-λ)*cross_entropy(fcknew,l'k)。
作为一种可选的实施例,根据线性邻域元素在随机扰动层的输出结果与线性邻域元素在神经网络最后一层的输出结果确定整体相关损失函数,包括:获取线性邻域元素在随机扰动层的输出结果与线性邻域元素在神经网络最后一层的输出结果之间的相关损失函数;获取线性邻域元素对应的训练数据在随机扰动层中的第二权重;根据第二权重,对每组训练数据对应的相关损失函数进行加权,得到整体相关损失函数。
具体的,相关损失函数用于表示线性邻域元素在随机扰动下的输出和神经网络最后一层的输出之间的关系,即可以根据线性邻域元素在神经网络的最后一层的输出,与线性邻域元素在随机扰动层的输出结果来确定。上述第二权重可以是预先获取的,每组训练数据对应的第二权重可以不同。
在一种可选的实施例中,则多种分布数据的整体相关损失函数为:
其中,Uj用于表示每组训练数据在随机扰动层对应的第二权重,可以取值为0.01,LXj用于表示每组函数对应的相关损失函数。
作为一种可选的实施例,获取线性邻域元素在随机扰动层的输出结果与线性邻域元素在神经网络最后一层的输出结果之间的相关损失函数,包括:获取将线性邻域元素输入至神经网络后,随机扰动层的输出结果和神经网络最后一层的输出结果;确定随机扰动层的输出结果与神经网络最后一层输出的结果之差的范数为线性邻域元素对应的相关损失函数。
具体的,随机扰动层在结构上和神经网络最后一层并行,由于初始化时随机扰动层的权重是随机的,因此该层权重在初始化后与最后一层差异较大。
对第k中分布数据Dk则有:
作为一种可选的实施例,用于计算相关邻域元素的系数λ可以服从贝塔分布。可选的,贝塔分布的α值取可以在0到1之间,本申请上述神经网络可以采用18层的残差神经网络,可进行端到端训练。以在cifar10上进行评测为例,评测指标为error rate,值越小越好,具体的结果如表一所示:
表一
原残差18表示最原始的resnet18网络,邻域经验风险最小表示单分布下邻域经验风险最小的训练方式,可以看到通过这种训练方式,使得网络性能有较大的改善,在cifar10上达到了目前18层残差网络最好的效果。本申请提出的多分布数据增强的方式,设计多分布邻域损失函数,对所有分布数据按照邻域风险最小化原则进行训练,基于残差18层网络在cifar10上取得该网络结构下最好的结果。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
实施例2
根据本发明实施例,还提供了一种用于实施上述获取神经网络模型的训练方法的神经网络模型的训练装置,图3是根据本申请实施例2的一种神经网络模型的训练装置的示意图,如图3所示,该装置300包括:
预处理模块302,用于按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,训练数据包括:元素和元素对应的标签,每组训练数据对应不同的概率分布。
扩展模块304,用于将多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素。
确定模块306,用于将线性邻域元素输入至神经网络,并根据神经网络的输出结果,确定损失函数,其中,损失函数用于表征输出结果与元素对应标签的偏差程度。
获取模块308,用于基于损失函数的最小值,得到神经网络的网络参数,其中,神经网络的网络参数用于表征神经网络模型。
此处需要说明的是,上述预处理模块302、扩展模块304、确定模块306和获取模块308对应于实施例1中的步骤S21至步骤S27,两个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。
作为一种可选的实施例,预处理模型用于对初始数据进行如下至少一种:随机翻转,随机镜像,缩放和区域随机割取。
作为一种可选的实施例,扩展模块包括:排序子模块,用于对训练数据中的元素进行随机排序,得到训练数据对应的随机排序数据集;第一确定子模块,用于基于训练数据和随机排序数据集,确定训练数据中每个元素相对任意一个其他元素的线性邻域元素。
作为一种可选的实施例,第一确定子模块包括:第一获取单元,用于获取预设的系数;第二获取单元,用于获取系数与训练数据中每个元素的第一乘积构成的第一乘积集合;第三获取单元,用于获取1与系数的差值;第四获取单元,用于获取每个元素在随机排序数据集中对应位置的元素与差值的第二乘积构成的第二乘积集合;第一确定单元,用于确定第一乘积集合与第二乘积集合之和为训练数据的线性邻域元素集合,其中,线性邻域元素集合包括训练数据中每个元素相对任意一个其他元素的线性邻域元素。
作为一种可选的实施例,损失函数为邻域相关损失函数,确定模块包括:第二确定子模块,用于基于多组训练数据中元素对应的标签和线性邻域元素在神经网络最后一层的输出结果,确定训练数据的整体邻域损失函数;第三确定子模块,用于根据线性邻域元素在随机扰动层的输出结果与线性邻域元素在神经网络最后一层的输出结果确定整体相关损失函数,其中,随机扰动层为与神经网络的最后一层并行的层;第四确定子模块,用于确定整体邻域损失函数与整体相关损失函数之和为邻域相关损失函数。
作为一种可选的实施例,第二确定子模块包括:第二确定单元,用于基于多组训练数据中元素对应的标签和线性邻域元素在神经网络最后一层的输出结果,确定训练数据的邻域损失函数;第五获取单元,用于获取每组训练数据在神经网络中对应的第一权重;加权单元,用于根据第一权重,对每组训练数据对应的邻域损失函数进行加权,得到整体邻域损失函数。
作为一种可选的实施例,第二确定单元包括:第一获取子单元,用于获取训练数据中元素的第一标签、随机排序数据集中相同位置的元素的第二标签,以及线性邻域元素在神经网络最后一层的输出结果;第二获取子单元,用于获取第一标签与线性邻域元素对应的输出结果之间的第一损失函数,和第二标签与线性邻域元素对应的输出结果之间的第二损失函数;第一确定子单元,用于基于第一损失函数和第二损失函数确定训练数据中每个元素对应的邻域损失函数。
作为一种可选的实施例,第三确定子模块包括:第六获取单元,用于获取线性邻域元素在随机扰动层的输出结果与线性邻域元素在神经网络最后一层的输出结果之间的相关损失函数;第七获取单元,用于获取线性邻域元素对应的训练数据在随机扰动层中的第二权重;加权单元,用于根据第二权重,对每组训练数据对应的相关损失函数进行加权,得到整体相关损失函数。
作为一种可选的实施例,第六获取单元包括:第三获取子单元,用于获取将线性邻域元素输入至神经网络后,随机扰动层的输出结果和神经网络最后一层的输出结果;第二确定子单元,用于确定随机扰动层的输出结果与神经网络最后一层输出的结果之差的范数为线性邻域元素对应的相关损失函数。
实施例3
本发明的实施例还提供了一种神经网络模型的训练系统,包括:
处理器;以及
存储器,与处理器连接,用于为处理器提供处理以下处理步骤的指令:
按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,训练数据包括:元素和元素对应的标签,每组训练数据对应不同的概率分布;
将多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;
将线性邻域元素输入至神经网络,并根据神经网络的输出结果,确定损失函数,其中,损失函数用于表征输出结果与元素对应标签的偏差程度;
基于损失函数的最小值,得到神经网络的网络参数,其中,神经网络的网络参数用于表征神经网络模型。
具体的,存储器还为处理器提供了处理实施例1中其他步骤的指令,此处不再赘述。
实施例4
本发明的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。
在本实施例中,上述计算机终端可以执行应用程序的漏洞检测方法中以下步骤的程序代码:按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,训练数据包括:元素和元素对应的标签,每组训练数据对应不同的概率分布;将多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;将线性邻域元素输入至神经网络,并根据神经网络的输出结果,确定损失函数,其中,损失函数用于表征输出结果与元素对应标签的偏差程度;基于损失函数的最小值,得到神经网络的网络参数,其中,神经网络的网络参数用于表征神经网络模型。
可选地,图4是根据本申请实施例4的一种计算机终端的结构框图。如图4所示,该计算机终端A可以包括:一个或多个(图中仅示出一个)处理器402、存储器404、以及外设接口406。
其中,存储器可用于存储软件程序以及模块,如本发明实施例中的安全漏洞检测方法和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的系统漏洞攻击的检测方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端A。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,训练数据包括:元素和元素对应的标签,每组训练数据对应不同的概率分布;将多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;将线性邻域元素输入至神经网络,并根据神经网络的输出结果,确定损失函数,其中,损失函数用于表征输出结果与元素对应标签的偏差程度;基于损失函数的最小值,得到神经网络的网络参数,其中,神经网络的网络参数用于表征神经网络模型。
可选的,上述处理器还可以执行如下步骤的程序代码:预处理模型用于对初始数据进行如下至少一种:随机翻转,随机镜像,缩放和区域随机割取。
可选的,上述处理器还可以执行如下步骤的程序代码:对训练数据中的元素进行随机排序,得到训练数据对应的随机排序数据集;基于训练数据和随机排序数据集,确定训练数据中每个元素相对任意一个其他元素的线性邻域元素。
可选的,上述处理器还可以执行如下步骤的程序代码:获取预设的系数;获取系数与训练数据中每个元素的第一乘积构成的第一乘积集合;获取1与系数的差值;获取每个元素在随机排序数据集中对应位置的元素与差值的第二乘积构成的第二乘积集合;确定第一乘积集合与第二乘积集合之和为训练数据的线性邻域元素集合,其中,线性邻域元素集合包括训练数据中每个元素相对任意一个其他元素的线性邻域元素。
可选的,上述处理器还可以执行如下步骤的程序代码:损失函数为邻域相关损失函数,基于多组训练数据中元素对应的标签和线性邻域元素在神经网络最后一层的输出结果,确定训练数据的整体邻域损失函数;根据线性邻域元素在随机扰动层的输出结果与线性邻域元素在神经网络最后一层的输出结果确定整体相关损失函数,其中,随机扰动层为与神经网络的最后一层并行的层;确定整体邻域损失函数与整体相关损失函数之和为邻域相关损失函数。
可选的,上述处理器还可以执行如下步骤的程序代码:基于多组训练数据中元素对应的标签和线性邻域元素在神经网络最后一层的输出结果,确定训练数据的邻域损失函数;获取每组训练数据在神经网络中对应的第一权重;根据第一权重,对每组训练数据对应的邻域损失函数进行加权,得到整体邻域损失函数。
可选的,上述处理器还可以执行如下步骤的程序代码:获取训练数据中元素的第一标签、随机排序数据集中相同位置的元素的第二标签,以及线性邻域元素在神经网络最后一层的输出结果;获取第一标签与线性邻域元素对应的输出结果之间的第一损失函数,和第二标签与线性邻域元素对应的输出结果之间的第二损失函数;基于第一损失函数和第二损失函数确定训练数据中每个元素对应的邻域损失函数。
可选的,上述处理器还可以执行如下步骤的程序代码:获取线性邻域元素在随机扰动层的输出结果与线性邻域元素在神经网络最后一层的输出结果之间的相关损失函数;获取线性邻域元素对应的训练数据在随机扰动层中的第二权重;根据第二权重,对每组训练数据对应的相关损失函数进行加权,得到整体相关损失函数。
可选的,上述处理器还可以执行如下步骤的程序代码:获取将线性邻域元素输入至神经网络后,随机扰动层的输出结果和神经网络最后一层的输出结果;确定随机扰动层的输出结果与神经网络最后一层输出的结果之差的范数为线性邻域元素对应的相关损失函数。
采用本发明实施例,提供了一种获取神经网络模型的训练方法。通过对一组训练数据进行预处理,得到满足多种分布的多组训练数据,对每组训练数据中的元素进行邻域上的扩展,得到每个元素对应的线性邻域元素,再构造损失函数,并基于邻域经验风险最小化原则,确定使损失函数最小的网络参数为神经网络的网络参数,由于该方案对一组训练数据进行了预处理得到了多组训练数据,并对每组训练数据中的元素都进行了邻域的扩展,因此增加了训练数据的数量,并对训练数据进行了扩充,从而可以在不改变网络结构,不增加网络参数的前提下,显著提升模型的性能。
由此,本申请上述实施例解决了现有技术中使用卷积神经网络模型的设备的存储和计算资源有限,导致难以提升卷积神经网络模型的技术问题。
本领域普通技术人员可以理解,图4所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌声电脑以及移动互联网设备(MobileInternet Devices,MID)、PAD等终端设备。图4其并不对上述电子装置的结构造成限定。例如,计算机终端A还可包括比图4中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图4所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
实施例5
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一所提供的获取神经网络模型的训练方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,训练数据包括:元素和元素对应的标签,每组训练数据对应不同的概率分布;将多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;将线性邻域元素输入至神经网络,并根据神经网络的输出结果,确定损失函数,其中,损失函数用于表征输出结果与元素对应标签的偏差程度;基于损失函数的最小值,得到神经网络的网络参数,其中,所述神经网络的网络参数用于表征所述神经网络模型。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (13)
1.一种神经网络模型的训练方法,包括:
按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,所述训练数据包括:元素和所述元素对应的标签,每组训练数据对应不同的概率分布;
将所述多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;
将所述线性邻域元素输入至神经网络,并根据所述神经网络的输出结果,确定损失函数,其中,所述损失函数用于表征所述输出结果与所述元素对应标签的偏差程度;
基于所述损失函数的最小值,得到所述神经网络的网络参数,其中,所述神经网络的网络参数用于表征所述神经网络模型。
2.根据权利要求1所述的方法,其中,所述预处理模型用于对所述初始数据进行如下至少一种:随机翻转,随机镜像,缩放和区域随机割取。
3.根据权利要求1所述的方法,其中,将所述多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素,包括:
对所述训练数据中的元素进行随机排序,得到所述训练数据对应的随机排序数据集;
基于所述训练数据和所述随机排序数据集,确定所述训练数据中每个元素相对任意一个其他元素的线性邻域元素。
4.根据权利要求3所述的方法,其中,基于所述训练数据和所述随机排序数据集,确定所述训练数据中每个元素相对任意一个其他元素的线性邻域元素,包括:
获取预设的系数;
获取所述系数与所述训练数据中每个元素的第一乘积构成的第一乘积集合;
获取1与所述系数的差值;
获取所述每个元素在随机排序数据集中对应位置的元素与所述差值的第二乘积构成的第二乘积集合;
确定所述第一乘积集合与所述第二乘积集合之和为所述训练数据的线性邻域元素集合,其中,所述线性邻域元素集合包括所述训练数据中每个元素相对任意一个其他元素的线性邻域元素。
5.根据权利要求3所述的方法,其中,所述损失函数为邻域相关损失函数,将所述线性邻域元素输入至神经网络,并根据所述神经网络的输出结果,确定损失函数,包括:
基于所述多组训练数据中元素对应的标签和所述线性邻域元素在所述神经网络最后一层的输出结果,确定所述训练数据的整体邻域损失函数;
根据所述线性邻域元素在随机扰动层的输出结果与所述线性邻域元素在所述神经网络最后一层的输出结果确定整体相关损失函数,其中,所述随机扰动层为与所述神经网络的最后一层并行的层;
确定所述整体邻域损失函数与所述整体相关损失函数之和为所述邻域相关损失函数。
6.根据权利要求5所述的方法,其中,基于所述多组训练数据中元素对应的标签和所述线性邻域元素在所述神经网络最后一层的输出结果,确定所述训练数据的整体邻域损失函数,包括:
基于所述多组训练数据中元素对应的标签和所述线性邻域元素在所述神经网络最后一层的输出结果,确定所述训练数据的邻域损失函数;
获取所述每组训练数据在所述神经网络中对应的第一权重;
根据所述第一权重,对所述每组训练数据对应的邻域损失函数进行加权,得到所述整体邻域损失函数。
7.根据权利要求6所述的方法,其中,基于所述多组训练数据中元素对应的标签和所述线性邻域元素在所述神经网络最后一层的输出结果,确定所述训练数据的邻域损失函数,包括:
获取所述训练数据中元素的第一标签、所述随机排序数据集中相同位置的元素的第二标签,以及所述线性邻域元素在所述神经网络最后一层的输出结果;
获取所述第一标签与所述线性邻域元素对应的输出结果之间的第一损失函数,和所述第二标签与所述线性邻域元素对应的输出结果之间的第二损失函数;
基于所述第一损失函数和所述第二损失函数确定所述训练数据中每个元素对应的邻域损失函数。
8.根据权利要求5所述的方法,其中,根据所述线性邻域元素在随机扰动层的输出结果与所述线性邻域元素在所述神经网络最后一层的输出结果确定整体相关损失函数,包括:
获取线性邻域元素在随机扰动层的输出结果与所述线性邻域元素在所述神经网络最后一层的输出结果之间的相关损失函数;
获取所述线性邻域元素对应的训练数据在所述随机扰动层中的第二权重;
根据所述第二权重,对所述每组训练数据对应的相关损失函数进行加权,得到所述整体相关损失函数。
9.根据权利要求8所述的方法,其中,获取线性邻域元素在随机扰动层的输出结果与所述线性邻域元素在所述神经网络最后一层的输出结果之间的相关损失函数,包括:
获取将所述线性邻域元素输入至所述神经网络后,所述随机扰动层的输出结果和所述神经网络最后一层的输出结果;
确定所述随机扰动层的输出结果与所述神经网络最后一层输出的结果之差的范数为所述线性邻域元素对应的相关损失函数。
10.一种神经网络模型训练装置,包括:
预处理模块,用于按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,所述训练数据包括:元素和所述元素对应的标签,每组训练数据对应不同的概率分布;
扩展模块,用于将所述多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;
确定模块,用于将所述线性邻域元素输入至神经网络,并根据所述神经网络的输出结果,确定损失函数,其中,所述损失函数用于表征所述输出结果与所述元素对应标签的偏差程度;
获取模块,用于基于所述损失函数的最小值,得到所述神经网络的网络参数,其中,所述神经网络的网络参数用于表征所述神经网络模型。
11.一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行如下步骤:按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,所述训练数据包括:元素和所述元素对应的标签,每组训练数据对应不同的概率分布;将所述多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;将所述线性邻域元素输入至神经网络,并根据所述神经网络的输出结果,确定损失函数,其中,所述损失函数用于表征所述输出结果与所述元素对应标签的偏差程度;基于所述损失函数的最小值,得到所述神经网络的网络参数,其中,所述神经网络的网络参数用于表征所述神经网络模型。
12.一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行如下步骤:按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,所述训练数据包括:元素和所述元素对应的标签,每组训练数据对应不同的概率分布;将所述多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;将所述线性邻域元素输入至神经网络,并根据所述神经网络的输出结果,确定损失函数,其中,所述损失函数用于表征所述输出结果与所述元素对应标签的偏差程度;基于所述损失函数的最小值,得到所述神经网络的网络参数,其中,所述神经网络的网络参数用于表征所述神经网络模型。
13.一种神经网络模型的训练系统,包括:
处理器;以及
存储器,与所述处理器连接,用于为所述处理器提供处理以下处理步骤的指令:
按照不同类型的预处理模型对初始数据进行预处理,生成多组训练数据,其中,所述训练数据包括:元素和所述元素对应的标签,每组训练数据对应不同的概率分布;
将所述多组训练数据向邻域进行扩展,得到每组训练数据中每个元素对应的线性邻域元素;
将所述线性邻域元素输入至神经网络,并根据所述神经网络的输出结果,确定损失函数,其中,所述损失函数用于表征所述输出结果与所述元素对应标签的偏差程度;
基于所述损失函数的最小值,得到所述神经网络的网络参数,其中,所述神经网络的网络参数用于表征所述神经网络模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811102482.6A CN110929866B (zh) | 2018-09-20 | 2018-09-20 | 神经网络模型的训练方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811102482.6A CN110929866B (zh) | 2018-09-20 | 2018-09-20 | 神经网络模型的训练方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110929866A true CN110929866A (zh) | 2020-03-27 |
CN110929866B CN110929866B (zh) | 2022-06-24 |
Family
ID=69855462
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811102482.6A Active CN110929866B (zh) | 2018-09-20 | 2018-09-20 | 神经网络模型的训练方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110929866B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113780584A (zh) * | 2021-09-28 | 2021-12-10 | 京东科技信息技术有限公司 | 标签预测方法、设备、存储介质及程序产品 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106530284A (zh) * | 2016-10-21 | 2017-03-22 | 广州视源电子科技股份有限公司 | 基于图像识别的焊点类型检测和装置 |
CN107506702A (zh) * | 2017-08-08 | 2017-12-22 | 江西高创保安服务技术有限公司 | 基于多角度的人脸识别模型训练及测试系统及方法 |
CN108416440A (zh) * | 2018-03-20 | 2018-08-17 | 上海未来伙伴机器人有限公司 | 一种神经网络的训练方法、物体识别方法及装置 |
-
2018
- 2018-09-20 CN CN201811102482.6A patent/CN110929866B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106530284A (zh) * | 2016-10-21 | 2017-03-22 | 广州视源电子科技股份有限公司 | 基于图像识别的焊点类型检测和装置 |
CN107506702A (zh) * | 2017-08-08 | 2017-12-22 | 江西高创保安服务技术有限公司 | 基于多角度的人脸识别模型训练及测试系统及方法 |
CN108416440A (zh) * | 2018-03-20 | 2018-08-17 | 上海未来伙伴机器人有限公司 | 一种神经网络的训练方法、物体识别方法及装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113780584A (zh) * | 2021-09-28 | 2021-12-10 | 京东科技信息技术有限公司 | 标签预测方法、设备、存储介质及程序产品 |
CN113780584B (zh) * | 2021-09-28 | 2024-03-05 | 京东科技信息技术有限公司 | 标签预测方法、设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110929866B (zh) | 2022-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111950638B (zh) | 基于模型蒸馏的图像分类方法、装置和电子设备 | |
CN109472240B (zh) | 人脸识别多模型自适应特征融合增强方法和装置 | |
CN110647921B (zh) | 一种用户行为预测方法、装置、设备及存储介质 | |
US20210216913A1 (en) | Prediction method, apparatus, and system for performing an image search | |
CN108319888B (zh) | 视频类型的识别方法及装置、计算机终端 | |
CN107809740B (zh) | Wi-Fi热点部署优化方法、服务器及存储介质 | |
CN111178537B (zh) | 一种特征提取模型训练方法及设备 | |
CN114722091A (zh) | 数据处理方法、装置、存储介质以及处理器 | |
CN112906806A (zh) | 一种基于神经网络的数据优化方法及装置 | |
CN111931707A (zh) | 基于对抗补丁的人脸图像预测方法、装置、设备和介质 | |
CN110929866B (zh) | 神经网络模型的训练方法、装置和系统 | |
CN108563648B (zh) | 数据显示方法和装置、存储介质及电子装置 | |
CN110276283B (zh) | 图片识别方法、目标识别模型训练方法及装置 | |
CN111340911A (zh) | 确定k线图中的连线的方法、装置以及存储介质 | |
CN114970761A (zh) | 模型训练方法及装置、系统 | |
CN115690592A (zh) | 图像处理方法和模型训练方法 | |
CN115424725A (zh) | 数据的分析方法和装置、存储介质及处理器 | |
CN115100417A (zh) | 图像处理方法、存储介质以及电子设备 | |
CN111401347B (zh) | 基于图片的信息定位方法以及装置 | |
CN114943273A (zh) | 数据处理方法、存储介质以及计算机终端 | |
CN112749150B (zh) | 一种错误标注数据的识别方法、装置和介质 | |
CN114332522A (zh) | 图像识别方法及装置、残差网络模型的构建方法 | |
CN110232393B (zh) | 数据的处理方法、装置、存储介质和电子装置 | |
CN112560555A (zh) | 扩充关键点的方法、装置以及存储介质 | |
CN111914540A (zh) | 语句鉴定方法及装置、存储介质和处理器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |