来源:人工智能前沿讲习
本文介绍一种名叫Virtual Adversarial Training (VAT) [1]的方法,是一种对于给定条件标签分布 的数据度量该分布局部光滑性的一种方法。其实就是对于每一个数据点,它的条件标签分布对于局部的扰动鲁棒性怎么样,是否数据的一点小变化,就会导致预测的其标签的大变化。这种情况在研究对抗样本的时候很常见,比如本来一张猫的图片,稍微加了一点扰动,神经网络就将其判为梨这种完全不一样的类别,这显然不是我们想要的。
一
动机
为什么会想到用光滑性smooth来做正则化呢?正则化从贝叶斯的角度来看,是加了先验信息到模型里面。而自然界的很多物理系统,都是可以用基于微分方程光滑模型描述。所以作者就想到了把条件标签概率约束成光滑的,在输入 变化很小的情况下,输出 也变化很小。满足光滑的情况下,如果对抗样本相比于原样本变化(某种度量下)很小,那么标签应该也不会有太大变化。
优点:VAT在对抗训练的时候,不需要标签信息,所以可以应用于无监督学习。此外,VAT的计算代价也是很低的。
与Goodfellow提出的监督学习对抗方法adversarial training[2]不同的是,VAT找的方向是能使预测的输出分布偏离现状的方向,而adversarial training找的是使模型预测最大地偏离正确label的方向。我们可以称目前模型预测的label是虚拟label(virtual),那么该方法不需要真实的label存在,可以用于无label的无监督学习。
二
方法
一些符号定义
表示输入向量,维度是 ; 表示输出标签, 是标签空间;输出分布 , 是模型参数;用表示某一步训练之后的模型参数; 表示有标签的数据集; 表示无标签的数据集。我们使用 和 训练模型。
对抗训练
要讲VAT,首先要从Goodfellow的adversarial training开始,其损失函数为:
其中, 是一个非负度量函数,度量分布 之间的距离,比如交叉熵,我们可以称 是对抗的扰动,也就是对抗的一方想找出来用于攻击的量,对抗的另一方想尽量减小这个量对模型的影响。对于adversarial training来说, 是真实label 的one-hot编码向量 。对于这个优化问题,我们没法得到闭式解,但是对抗的方法本来也就是迭代求解的,我们可以得到近似的解,比如:
或者:
对于神经网络来说, 是可以用反向传播计算的。很明显,对抗方法找到的扰动方向,比随机找一个扰动是要来的好的。
虚拟对抗训练:VAT
那么如果训练样本没有标签,或者有一部分数据没有标签怎么办呢?VAT就是要解决这样一个问题。
我们把 统一记为 ,VAT目标函数为:
之前的 是用的label的one-hot编码,这边没有了label,VAT用 近似代表。作者认为如果有标签的样本比较多,那么 是离 比较近的,这也是文章用virtual 这个词的原因。所以在迭代过程中, 用上一步的 代替,损失函数变为:
于是,给整个目标函数加上LDS:
其中, 是有标签数据的负对数似然函数。
整个正则化过程,只有两个超参数 和 。作者实验过程中,将 固定为1,这样就只有一个超参数了。
具体计算
注意到之前算 ,如果 换成 ,那么 永远是0,就没法算了,所以得用到二阶信息。
如果一阶导数为0,则 二阶泰勒展开:
其中, 是海森矩阵,记为H。再把 记为 。
那么计算
其中 , 是 最大特征值对应的特征单位向量。
为了计算特征向量,作者使用一种能量迭代方法[3],令 是一个随机采样的单位向量,假设 与 不垂直,那么随着迭代 就可以让 收敛到 。为了避免算 ,这边将 也近似替代:
那么就可以计算:
原文算法描述如下:
作者对算例描述:
实验部分:
参考文献:
[1]. Takeru Miyato, Andrew M Dai, and Ian Goodfellow. Virtual adversarial training for semi-supervised text classification. stat, 1050:25, 2016.
[2]. Ian Goodfellow, Jonathon Shlens, and Christian Szegedy. Explaining and harnessing adversarial examples. In ICLR, 2015.
[3]. Gene H Golub and Henk A van der Vorst. Eigenvalue computation in the 20th century. Journal of Computational and Applied Mathematics, 123(1):35–65, 2000.
☞ OpenPV平台发布在线的ParallelEye视觉任务挑战赛
☞【学界】OpenPV:中科院研究人员建立开源的平行视觉研究平台
☞【学界】ParallelEye:面向交通视觉研究构建的大规模虚拟图像集
☞【CFP】Virtual Images for Visual Artificial Intelligence
☞【最详尽的GAN介绍】王飞跃等:生成式对抗网络 GAN 的研究进展与展望
☞【智能自动化学科前沿讲习班第1期】王飞跃教授:生成式对抗网络GAN的研究进展与展望
☞【智能自动化学科前沿讲习班第1期】王坤峰副研究员:GAN与平行视觉
☞【重磅】平行将成为一种常态:从SimGAN获得CVPR 2017最佳论文奖说起
☞【学界】Ian Goodfellow等人提出对抗重编程,让神经网络执行其他任务
☞【学界】六种GAN评估指标的综合评估实验,迈向定量评估GAN的重要一步
☞【资源】T2T:利用StackGAN和ProGAN从文本生成人脸
☞【学界】 CVPR 2018最佳论文作者亲笔解读:研究视觉任务关联性的Taskonomy
☞【业界】英特尔OpenVINO™工具包为创新智能视觉提供更多可能
☞【学界】ECCV 2018: 对抗深度学习: 鱼 (模型准确性) 与熊掌 (模型鲁棒性) 能否兼得