技术领域
[0001] 本发明涉及一种图像处理技术,特别涉及一种生成对抗神经网络训练过程的对抗优化方法。
相关背景技术
[0002] 近几年,作为人工智能的核心技术,深度学习在图像、语音、自然语言处理等领域取得了大量关键性突破,已经提出了多种不同的生成对抗性示例的方法来进行攻击深度神经网络。这些方法涉及直接计算渐变图像像素,或者直接求解图像像素的优化。
[0003] 随着深度学习的不断发展,越来越多的领域都采用深度学习来代替传统的智能算法。但是部分领域如金融、无人驾驶等等,都需要高精准度、低风险,必须具体很高的安全性,尤其是自动驾驶。因此不能忽略对抗样本对于网络模型的影响。在深度学习网络中,对抗样本会通过细微的噪声对最终的学习模型造成影响。并且攻击者采用的对抗样本是人类无法用感官进行判断的,因此只能通过神经网络自身进行判断和防御。一个典型的场景就是图像分类模型的对抗样本,通过在图片上叠加精心构造的变化量,在肉眼难以察觉的情况下,让分类模型产生误判。
[0004] 从原理上,对抗样本针对指定的样本计算出一个变化量。深度学习模型通过在样本上训练,学习出高维空间中的分割平面,在分割平面的不同测就是作为不同的分类判别结果,如图1所示。
[0005] 经过一次或者多次的微小量偏移人类的感觉无法辨识,但是却可以让该样本跨越深度学习结果空间中的分割平面,导致机器学习模型的判定结果改变,如图2所示。
[0006] 到目前为止,这些优化问题已经使用三种广泛的方法解决:
[0007] (1)通过直接使用L-BFGS或Adam(Kingma&Ba,2015)等优化器,如Szegedy(2013年)和Carlini&Wagner(2016年),这种基于优化器的方法往往比其他方法更慢,更强大。
[0008] (2)通过基于单步梯度的技术近似,如快速梯度符号(Goodfellow等,2014b)或最不可能的类(Kurakin等,2016a)。这些方法很快,仅需要单个前向和后向通过目标分类器来计算扰动。
[0009] (3)通过基于梯度技术的迭代变体的近似(Kurakin等,2016a;MoosaviDezfooli等,2016a;b)。这些方法使用多个前向和后向通过目标网络来更仔细地将输入移向对抗分类。
[0010] 目前对抗样本主要通过梯度攻击和编码器攻击。其中,通过神经网络的编码器生成出的攻击样本要优于梯度攻击的方式。尤其在2017年以后,随着GAN对抗神经网络的发展,GAN逐渐成为主要的生成网络工具。因此,2018至2019年逐渐出现基于GAN的攻击样本模型,然而因为GAN的不稳定性导致他们的模型鲁棒性太差。所以本文基于最优传输理论,通过在两个测度的最优映射来解决GAN的收敛问题。
[0011] GAN是生成模型包含两个网络(生成器网络和鉴别器网络)。在给定噪声源,生成器网络生成合成数据,而鉴别器网络则将生成数据与真实数据区分开。但是GAN会受到训练不稳定的影响,有关GAN训练的最新工作大多致力于寻找稳定训练的方法,现在常用方法依赖于对修改极其敏感的启发式方法,很少从网络内部根源去解释此新的对抗神经网络训练的不稳定行为。这样极大地限制了GAN在图像处理运用的适用性。
具体实施方式
[0029] 为了辅助和实现无人驾驶,神经网络对于图像识别和分类实现了无人驾驶目标分类与识别系统的算法识别部分。主流的图像处理和目标识别主要采用卷积神经网络(CNN),在真实数据和生成数据的空间中存在欠拟合的情况。因此,有研究提出攻击和防御的算法增强神经网络的鲁棒性,然而对于黑盒攻击和防御的效果不佳。
[0030] 为了解决这个问题,寻找一个区域到自身的同胚映射,满足两个条件:保持测度和极小化传输代价。保持测度对于一切波莱尔集 (Ω为有限开集合),映射T将概率分布μ映射成概率分布v,记作T*μ=v。最优传输映射T:Ω→Ω的传输代价定义为:
[0031] I[s]=∫Xc(x,s(x))dx (1)
[0032]
[0033] 其中I为映射代价函数;c(x,y)为x映射到y的距离;x,y属于集合内的点。
[0034] 在这种情形下,Brenier证明存在一个凸函数u:Ω→R(R为全部实数集合),其梯度映射 就是唯一的最优传输映射。这个凸函数被称为是Brenier势能函数(Brenier potential)。由Jacobian方程得到Brenier势满足蒙日-安培方程式(2),梯度映射的雅克比矩阵是Brenier势能函数的海森矩阵(HessianMatrix),
[0035]
[0036]
[0037] 其中D是偏导;det是行列式;ρ为测度;X、Y分别为x、y的全集。
[0038] 根据Kantorovich定理,WGAN将原始函数转换为对偶问题。然而,对偶问题的约束条件很难实现,因此有时WGAN仍然会产生不好的样本或者甚至不能收敛。因此,Kantorovich的方法不是一个很好的选择。这促使需要更复杂的方法,以便有效地计算最优映射。选择Brenier的方法来获得实际数据分布和生成分布之间的最佳映射。在传输代价为差平方的情况下,问题可以转化为求解蒙日-安培方程。蒙日-安培方程可以完全避免Lipschitz约束的问题。对于最优传输问题,蒙日-安培方程的解决方案比Kantorovich的方法(WGAN-GP)具有更高的准确性。
[0039] 在凸集之间的最优传输问题中,传输条件(BC)也称为第二边界值问题为第二类边界条件。该边界条件可以通过边界节点映射到集合X中,和边界节点映射到集合Y中,鉴于运输边界条件中出现的梯度,希望找到Neumann边界条件:
[0040]
[0041]
[0042]
[0043] 根据式(5),定义了边界法向量n,边界法向量n中有n个维度对应的法向量分量为n1、n2、...、nn,其中向量n垂直于点x(x属于X集合中的点,因为X集合有边界,边界上的未指定的点x也是在X集合中。所以公式5就是符合条件的边界条件,定义域还是X,x只是符合条件内的点。), 是X集合的边界,δx是关于x求偏导数。φ是法向量计算函数,通过式(7)计算。公式7中的每一个维度对应的法向量分量n将乘以对应维度下u的偏导数,即函数u的每一维度向前移动一个单位步长和中心数值的差值。
[0044] x是n维的,所以 下标有n个,即i1、i2、i3、…、in共n个,代表不同维度。因为数值解需要离散化,在每个维度内,又有m个离散点,即i={1,2,3,…,m}。五步法计算差分需要用到前后点,即i+1和i。假设在维度1上,那么前后点下标就是i1,(i+1)1,即 和规律:第一项u内的x下标,依次按维度往后取下一个单位步长i+1。
[0045] 用这个更新的边界条件再次求解蒙日-安培方程,以获得新的数值解。其中uk+1是k+1时间迭代的解。因为它是单调的,该方案仅依赖于正方形内的值。当MAPDE的维数大于2时,边界周围有很多节点直接影响解的值,如图3所示。这将花费更多的计算时间,因此应该更加注意边界,并将这些单调法的上限用于所有可接受的范围,以确保获得高度准确的数值解。保留了该方法的单调性。首先,在方形区域的另一边设定边界。然后,在拐角处,采用倾斜约束的形式限制其他维度的求导方向。并且将允许的方向限制到单个象限,这确保了所需信息将继续保留在正方形区域内。接下来,按照向内的方向来获得新的近似值。最后如图4所示,重复上述步骤,直到得到一个合适的边界,这相当于在这些点上考虑所有支撑超平面。
[0046] 本发明定义了几个有限差分算子,采用这些算子逼近使用中心差值的第一阶和第二阶偏导数。通过中心差异对该等式进行标准离散化:
[0047]
[0048] MA为离散的解蒙日-安培方程(Monge-Ampere PDE);D为偏导;f,g是测度。u为解蒙日-安培方程的离散数值解。
[0049] 其中有限差分算子为:
[0050]
[0051]
[0052]
[0053]
[0054] 还将沿着这些方向 进一步计算有限差分算子:
[0055]
[0056]
[0057]
[0058] 离散化的结果是MA计算算子的变分形式,将在此表达式中添加一个附加项,以进一步惩罚非凸性:
[0059]
[0060] 基于牛顿迭代,需要计算所有节点的偏导数。但是,当维度大于3时,很难获得高维度的所有偏导。虽然可以通过设置步骤h来离散MAPDE的解,但是高维也会导致网格中的节点难以定义节点的前后关系。可以发现每个维度中相关节点大部分都是它的前向节点和后向节点。并且不同维度中的中心差分的节点是同一个节点。因此,建议采用周围的梯度来代替整体梯度,以加速高维收敛。
[0061] 可以得到MAPDE在Neumann边界条件下的迭代表达式和在求解方程开始时的初始化表达式:
[0062]
[0063]
[0064] 可以求解MAPDE以获得实际数据分布和生成分布之间的最佳映射u(x)。然后按照下式,可以得到OT问题的成本函数,它可以训练生成器如何有效地生成真实数据。公式14是求解真实数据和生成数据的最大似然估计,通过MLE求解公式15的最大值,从而确定真实数据和生成数据的分布。
[0065]
[0066]
[0067] 通过求解蒙日安培获得最佳映射u(x)如图5虚线矩形所示。
[0068] 将图像数据训练集和随机噪声送入生成器,生成器输出数据作为攻击样本和真实图像数据,对应得到两个数据集X和Y进入虚线矩形构成的全新的判别器D。全新的判别器D将真实数据的测度与生成数据的测度进行区分,在训练的过程中,生成器G不断地对抗判别器D,从而进行有效的攻击。通过求解蒙日安培方程获得最佳映射u(x),通过图5中训练后的生成器G来实现生成攻击对抗样本。也就是生成器内部构成攻击网络。在训练图5所示判别器D的过程中,会求解式16生成器的损失函数的上界;反之,在训练图5所示生成器G的过程中,会求式16生成器的损失函数的下界,最终得到良好的对抗效果。Monge-Kantorovich传输问题的损失函数作为新的散度来代替WGAN的Wasserstein距离。
[0069] 在训练开始时,只使用图像数据的真实数据来获得X的概率密度PX。攻击样本Y的概率密度ρY,令生成分布Pg=真实数据分布Pr生成数据,因为MAPDE的解导致Pg趋向于Pr。然后可以根据Neumann边界条件使用Pr和Pg,通过公式(13)计算合适的边界。接下来,使用有限差分法(FDM)获得方程组F[u]=0,并通过牛顿迭代法求解该方程组。
[0070]
[0071] 实现步骤如下:
[0072] 步骤一、计算X的概率密度ρX和Y的概率密度ρY
[0073] 步骤二、求解真实数据和生成数据的最大似然估计最大值;
[0074] 步骤三、计算真实数据和生成数据的测度;
[0075] 步骤四、计算MAPDE的第一类型边界;
[0076] 步骤五、计算真实数据分布Pr和生成分布Pg之间的最佳u(x);
[0077] 步骤六、迭代梯度值;
[0078] 步骤七、计算损失函数;
[0079] 循环上述步骤直到代价函数收敛。
[0080] 通过MAGAN采用此网络应用于对抗样本生成网络中。如图5所示,通过MAGAN良好的鲁棒性从而更加高效实现黑盒攻击和白盒攻击,组成攻击网络。为了能更好的防御对抗样本的攻击,将生成器G产生的攻击样本来训练防御网络,并且通过蒙日-安培方程的解来进行强化鲁棒性如图6所示。图6中的判别器D对应图5中的虚线框内的结构,其包含了偏微分方程的数值解。当判别器训练后应用到图6的下方判别器网络中,将过滤后的样本进行训练防御网络。将生成器G的样本作为防御网络的输入数据,由于输入的训练数据具备黑盒和白盒攻击的强鲁棒性,所以通过防御网络的损失函数,对输入数据进行逻辑回归计算交叉熵,将真实数据和人造假数据区分开,实现隔离效果,起到良好的防御效果。
[0081] 其中对于生成器的损失函数为:
[0082]
[0083] 其中x,y对应集合X和Y内的点;Ex~Px为真实数据概率分布的期望;Ey~Py为攻击样本数据概率分布的期望; 为Licpschiz连续数据的期望;Dw为带有权重的判别器网络;D为判别器网络;G为生成器网络;λ为惩罚系数,是训练网络设置的超参数,E为期望;
[0084] 防御网络的损失函数为:
[0085]
[0086] 当训练好图5中的攻击网络后,通过添加目标攻击网络来实现图6中的防御网络,如图7所示。在图7右框中,通过设定生成器的损失函数,生成器G可以学习到攻击样本的测度从而计算出最优映射U。随后生成器可以根据输入数据和随机噪声得到目标网络的攻击样本,从而进行有效的攻击。目标网络是指需要攻击的网络,即别人训练好的已知网络。在图7左框中,将生成器G的输出数据作为防御网络的输入数据,通过右框根据蒙日安培方程的解和最优传输理论得到的损失函数,公式17来训练防御网络。公式16是生成器网络,当防御网络训练时,生成器的损失函数并不参与训练。在训练防御网络的过程中,通过克服最优映射的损失函数,防御网络能获得两个测度之间的最大距离。最终通过迭代训练可以得到防御网络的输出值,可以很好的帮助无人驾驶目标分类与识别系统判断攻击样本。