基于关键路径的神经网络训练方法和装置
文献发布时间:2023-06-19 09:26:02
技术领域
本发明涉及一种基于关键路径的神经网络训练方法,同时涉及相应的基于关键路径的神经网络训练装置,属于深度学习技术领域。
背景技术
近年来,深度学习已经在计算机视觉和自然语言处理等多个富有挑战性的领域中取得了卓越的成就。在实际应用中,深度学习通常应用于大型数据集,在这些从日常生活中收集的数据所构成的数据集中,不可避免地包含了大量的噪音,其中包括了对抗样本噪音和自然噪音。虽然这些噪音对于人类的认知和物体识别没有影响,但是它们能误导深度神经网络做出错误的决策,这对实践中机器学习在数字和物理世界的应用构成了严重的安全威胁。
与此同时,为何微小的噪音会造成深度神经网络做出完全错误的决策,深度模型在分类和判断时采取的依据是什么,这些都凸显了可解释性深度学习的重要性。因此,在最近的研究中,训练鲁棒的、可解释的深度神经网络受到了很高的重视。
众所周知,深度学习模型对于噪音的不稳定性一般出现在正向传播时某隐藏层特征图和神经元激活值的突变,因此每个神经单元和由神经单元组成的路径的稳定性显得至关重要,增强其噪声不敏感性并保证隐藏层的稳定行为将有助于保证稳健的模型。
发明内容
本发明所要解决的首要技术问题在于提供一种基于关键路径的神经网络训练方法。
本发明所要解决的另一技术问题在于提供一种基于关键路径的神经网络训练装置。
为了实现上述目的,本发明采用下述的技术方案:
根据本发明实施例的第一方面,提供一种基于关键路径的神经网络训练方法,包括如下步骤:
针对每个普通样本,获取神经网络的样本级别关键路径;
根据样本级别关键路径,按层次聚合得到神经网络的模型级别关键路径;
针对神经网络关键攻击路径,对神经网络进行训练。
其中较优地,所述针对神经网络关键攻击路径,对神经网络进行训练,具体包括:
设置训练集,所述训练集中每个训练样本由原始样本和对抗样本构成;
构建对原始样本和对抗样本的梯度进行惩罚的第一惩罚损失函数;
或者,构建对神经网络关键攻击路径的各关键攻击单元权重进行惩罚的第二惩罚损失函数;
将各训练样本输入至神经网络,利用第一惩罚损失函数或第二惩罚损失函数,对神经网络的每一层进行训练。
其中较优地,所述第一惩罚损失函数表达式为:
公式(1)中,x表示普通样本,x’表示对抗样本,y表示训练样本的分类标签,θ表示神经网络的模型参数,
在输入为普通样本条件下的各关键攻击单元的梯度和的表达式为:
公式(2)中,F表示神经网络的各层,
公式(3)中,
其中较优地,所述第二惩罚损失函数表达式为:
公式(4)中,x表示普通样本,x’表示对抗样本,y表示训练样本的分类标签,θ表示神经网络的模型参数,
公式(5)中,F表示神经网络的各层,
其中较优地,所述针对每个普通样本,获取神经网络的样本级别关键路径,具体包括:
将各普通数据样本输入至神经网络,待神经网络各层输出后:
根据神经网络的损失函数,从神经网络最后一层的各神经元中找到最后一层的关键攻击单元;
基于神经网络前一层中各神经元对后一层的关键攻击单元的影响力,得到前一层的关键攻击单元;
直至得到第一层的关键攻击单元,从而得到神经网络的样本级别关键路径。
其中较优地,所述根据神经网络的损失函数,从神经网络最后一层的各神经元中找到最后一层的关键攻击单元,具体包括:
求出损失函数对最后一层的各神经元的梯度;
选取前k个符合预定标准梯度的神经元作为最后一层的关键攻击单元;所述最后一层的各神经元的梯度的表达式为:
公式(6)中,
所述最后一层的关键攻击单元的表达式为:
公式(7)中,g
其中较优地,所述基于神经网络前一层中各神经元对后一层的关键攻击单元的影响力,得到前一层的关键攻击单元,具体包括:
针对神经网络的第l-1层的第i个神经元:
计算第l-1层第i个神经元对第l层某一关键攻击单元的输出中某一元素的影响力;
将第l-1层第i个神经元对第l层某一关键攻击单元的输出中各元素的影响力相加,得到第l-1层第i个神经元对第l层某一关键攻击单元的的影响力;
从第l-1层中各神经元对第l层各关键攻击单元的影响力中选取前k个符合预设标准的影响力的神经元,作为第l-1层的关键攻击单元。
其中较优地,所述第l-1层第i个神经元对第l层某一关键攻击单元的输出中某一元素的影响力的表达式为:
公式(8)中,
所述第l-1层第i个神经元对第l层某一关键攻击单元的影响力的表达式为:
公式(9)中,
所述第l-1层的关键攻击单元的表达式为:
公式(10)中,top-k(·)表示根据预设标准从集合中挑选k个元素,F
公式(11)中,
其中较优地,所述根据样本级别关键路径,按层次聚合得到神经网络的模型级别关键路径,具体包括:
针对各普通样本的关键路径,逐层聚合普通样本关键路径中各关键攻击单元,构成聚合样本关键路径;
统计神经网络各层中每一个关键攻击单元出现在聚合样本关键路径的频率;
将神经网络各层中频率满足预定条件的k个关键攻击单元,作为所属层的关键攻击路径;
逐层聚合神经网络各层的关键攻击路径,构成神经网络的模型级别关键路径。
根据本发明实施例的第二方面,提供一种基于关键路径的神经网络训练装置,包括处理器和存储器,所述处理器读取所述存储器中的计算机程序,用于执行以下操作:
针对每个普通样本,获取神经网络的样本级别关键路径;
根据样本级别关键路径,按层次聚合得到神经网络的模型级别关键路径;
针对神经网络关键攻击路径,对神经网络进行训练。
本发明通过样本级别关键路径,找寻到神经网络的模型级别关键路径。通过该路径来揭示噪音在模型中的传播与放大过程,在神经网络的训练过程中,通过对该路径进行限制,有效提升神经网络的鲁棒性。
附图说明
图1为本发明实施例提供的神经网络训练方法的流程示意图;
图2为本发明实施例中,寻找路径和训练框架的示意图;
图3为本发明实施例提供的神经网络训练装置的结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明的技术内容进行详细具体的说明。
如图1和2所示,本发明实施例提供的基于关键路径的神经网络训练方法,包括如下步骤:
101、针对每个普通样本,获取神经网络的样本级别关键路径;
102、根据样本级别关键路径,按层次聚合得到神经网络的模型级别关键路径;
103、针对神经网络关键攻击路径,对神经网络进行训练。
在本发明实施例中,首先建立数据集D,包含N个数据样本。所述数据样本为普通样本,非对抗样本。如图2所示,其中,选用三个普通样本,类别A的图像x1、类别B的图像x2和类别C的图像x3;分别将这三个普通样本输入至神经网络,针对每个普通样本在神经网络中深度学习的过程,执行101至103。
所述101,具体包括:
将各普通数据样本输入至神经网络,待神经网络各层输出后:
1011、根据神经网络的损失函数,从神经网络最后一层的各神经元中找到最后一层的关键攻击单元;具体地:
10111、求出损失函数对最后一层的各神经元的梯度;
10112、选取前k个符合预定标准梯度的神经元作为最后一层的关键攻击单元。
在本发明实施例中,以类别A的图像x1为例,求出x1的关键攻击单元:将x1输入至神经网络后,x1首先经过神经网络的第一层;第一层的各神经元对x1学习后产生输出,并送至第二层,以此类推,倒数第二层的输出到达最后一层时,首先求出神经网络的损失函数对最后一层的各神经元的梯度。
所述最后一层的各神经元的梯度的表达式为:
公式(6)中,
所述最后一层的关键攻击单元的表达式为:
公式(7)中,g
在10112中,将最后一层各神经元的梯度绝对值由大至小进行排列,选取其梯度绝对值排名前k的神经元作为最后一层的关键攻击单元。由此得到最后一层的k个关键攻击单元。
1012、基于神经网络前一层中各神经元对后一层的关键攻击单元的影响力,得到前一层的关键攻击单元;具体地:
针对神经网络的第l-1层的第i个神经元:
10121、计算第l-1层第i个神经元对第l层某一关键攻击单元的输出中某一元素的影响力;
在本发明实施例中,得到最后一层的关键攻击单元后,再根据最后一层的关键攻击单元求取倒数第二层的关键攻击单元。首先,需要求得倒数第二层的各神经元分别对最后一层各关键攻击单元的各输出的影响力:
所述第l-1层第i个神经元对第l层某一关键攻击单元的输出中某一元素的影响力的表达式为:
公式(8)中,
10122、将第l-1层第i个神经元对第l层某一关键攻击单元的输出中各元素的影响力相加,得到第l-1层第i个神经元对第l层某一关键攻击单元的的影响力;
然后,将10221中求得的各影响力进行相加,得到倒数第二层各神经元分别对最后一层各关键攻击单元的影响力:
所述第l-1层第i个神经元对第l层某一关键攻击单元的影响力的表达式为:
公式(9)中,
10123、从第l-1层中各神经元对第l层各关键攻击单元的影响力中选取前k个符合预设标准的影响力的神经元,作为第l-1层的关键攻击单元;
将10122中求得的各影响力由大到小进行排序,选取其影响力排名前k的神经元作为倒数第二层的关键攻击单元:
所述第l-1层的关键攻击单元的表达式为:
公式(10)中,top-k(·)表示根据预设标准从集合中挑选k个元素,F
公式(11)中,
1013、直至得到第一层的关键攻击单元,从而得到神经网络的样本级别关键路径。
由此,得到普通样本x1对应的神经网络倒数第二层的各关键攻击单元。依此类推,直至求出普通样本x1对应第一层的关键攻击单元,从而得到神经网络的x1的关键路径。
针对普通样本x2和x3,分别重复执行101至103,对应得到普通样本x2和x3的关键路径。
所述102,具体包括:
1021、针对各普通样本的关键路径,逐层聚合普通样本关键路径中各关键攻击单元,构成聚合样本关键路径;
在本发明实施例中,如图2所示,普通样本x1的关键路径为:
由此,聚合样本关键路径为:{R(x
1022、统计神经网络各层中每一个关键攻击单元出现在聚合样本关键路径的频率;
在获取了聚合样本关键路径{R(x
1023、将神经网络各层中频率满足预定条件的k个关键攻击单元,作为所属层的关键攻击路径;
排序之后,选取各层中其频率排名前k的关键攻击单元作为所属层的关键攻击路径:
Ω
公式(12)中,f为各个关键攻击单元在l层所有普通样本对应的关键攻击单元中出现的频率。
1024、逐层聚合神经网络各层的关键攻击路径,构成神经网络的模型级别关键路径;
如图2所示,获取每层的模型级的关键攻击单元(各层的关键攻击路径)之后,整个模型的关键攻击路径则为:
R(D)={Ω
本发明实施例提供的神经网络训练方法提出了关键攻击路径的概念,该路径在神经网络中起到了主要的传播噪声的作用,换言之,噪声主要通过该路径进行传播与放大并干扰到最终的分类;此外,该路径也是有效语义信息的主要传播路径。由此,本发明实施例为研究通过对该路径有效提升模型的鲁棒性,提供了技术基础。
为验证关键路径在噪声传播过程中发挥的重要作用,给定数据集
所述103,具体包括:
1031、设置训练集,所述训练集中每个训练样本由原始样本和对抗样本构成;
目前,虽然深度学习已经在计算机视觉和自然语言处理等多个富有挑战性的领域中取得了卓越的成就,但是其对于噪音仍然十分脆弱,尤其是对抗样本噪音。
对抗样本是指一种设计十分精细的噪音,它们对于人眼是不可分辨的,但是对于深度学习模型却是毁灭性的:
F
其中,x表示普通样本,x
目前,提升深度学习模型对于对抗样本的鲁棒性的方法主要是:对抗训练,即使用对抗攻击方法来生成对抗样本混入训练数据集中训练模型。该方法在一定程度上能够提升模型对于对抗样本噪音的防御能力,但是该类方法一般会降低模型的泛化能力,因此理解对抗样本对模型的攻击以及噪声在模型中的传递显得尤为重要。
本发明实施例中通过101至102寻找到神经网络的模型级别的关键路径。该路径在模型中起到了主要的传播噪声的作用,换言之,噪声主要通过该路径进行传播与放大并干扰到最终的分类;此外,该路径也是有效语义信息的主要传播路径。由此,103提出了限制关键攻击路径来提高模型鲁棒性的两个方法,可有效提升模型的鲁棒性。
1032a、构建对原始样本和对抗样本的梯度进行惩罚的第一惩罚损失函数;
方法一是限制关键攻击路径上各个单元输出对损失函数的导数,也就是削弱了各个关键攻击单元对最终分类的影响力。
所述第一惩罚损失函数表达式为:
公式(1)中,x表示普通样本,x’表示对抗样本,y表示训练样本的分类标签,θ表示神经网络的模型参数,
在输入为普通样本条件下的各关键攻击单元的梯度和的表达式为:
公式(2)中,F表示神经网络的各层,
公式(3)中,
1032b、或者,构建对神经网络关键攻击路径的各关键攻击单元权重进行惩罚的第二惩罚损失函数;
方法二是限制关键攻击路径对噪声的传播能力,也就是直接惩罚关键攻击单元的权重。
所述第二惩罚损失函数表达式为:
公式(4)中,x表示普通样本,x’表示对抗样本,y表示训练样本的分类标签,θ表示神经网络的模型参数,
公式(5)中,F表示神经网络的各层,
此处,
1033、将各训练样本输入至神经网络,利用第一惩罚损失函数或第二惩罚损失函数,对神经网络的每一层进行训练。
本发明实施例基于神经网络的模型级别的关键路径提出的两种对抗训练方法有效地提高了模型鲁棒性,在保证模型泛化能力的同时,有效的提升深度学习模型对于对抗样本噪音和自然噪音的鲁棒性;提升深度学习模型在实际场景中应用时的稳定性,对理解深度学习模型对抗鲁棒性起到至关重要的作用。
为实现本发明所提供的基于关键路径的神经网络训练方法,本发明还提供一种基于关键路径的神经网络训练装置。如图3所示,该神经网络训练装置包括处理器32和存储器31,还可以根据实际需要进一步包括通信组件、传感器组件、电源组件、多媒体组件及输入/输出接口。其中,存储器、通信组件、传感器组件、电源组件、多媒体组件及输入/输出接口均与该处理器32连接。前已述及,节点设备中的存储器31可以是静态随机存取存储器(SRAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、磁存储器、快闪存储器等,处理器可以是中央处理器(CPU)、图形处理器(GPU)、现场可编程逻辑门阵列(FPGA)、专用集成电路(ASIC)、数字信号处理(DSP)芯片等。其它通信组件、传感器组件、电源组件、多媒体组件等均可以采用现有智能设备中的通用部件实现,在此就不具体说明了。
另一方面,在基于关键路径的神经网络训练装置中,所述处理器32读取所述存储器31中的计算机程序,用于执行以下操作:
针对每个普通样本,获取神经网络的样本级别关键路径;
根据样本级别关键路径,按层次聚合得到神经网络的模型级别关键路径;
针对神经网络关键攻击路径,对神经网络进行训练。
上面对本发明实施例所提供的基于关键路径的神经网络训练方法和装置进行了详细的说明。对本领域的一般技术人员而言,在不背离本发明实质内容的前提下对它所做的任何显而易见的改动,都将构成对本发明专利权的侵犯,将承担相应的法律责任。
- 基于关键路径的神经网络训练方法和装置
- 一种基于神经网络的实例分割确定方法、神经网络模型训练方法及装置