DAG的algorithm

  • Post author:
  • Post category:其他


DAG是一个使用在目标检测场景下的对抗样本生成模型

应该是第一个应用在目标检测场景下的

这部分的算法设计主要是对应了Faster RCNN这种二阶段检测模型


输入:

其中

target set

是一张图片中所有的预测。

在网络训练的过程中,这些预测都会被唯一分配一个ground truth label。

这些正确的ground truth label组成了

original label set。


adversarial label set



original label set

有一种关系,即adversarial label set中的每一个样本都是从那些不正确的类别中随机采样出来的。


输出:

我们的训练目标是得到一种对抗扰动,adversarial perturbation, 让一张图片中的所有预测都变的错误,用公式表示为

其中f是一个分类器,这个分类器的输入是原图X经过扰动r之后的图片,这个分类器的输出是目标为tn时,输出一组分类置信度分数,ln是原本正确的标签。


训练:



对于一张图片X中的所有target,我们首先找到那些分类正确的目标,组成

active target set

,然后我们根据设计的损失函数计算这些样本的梯度和,损失函数的设计

在最小化这个损失函数的过程中,换句话说,就是在最小化分类器把target tn正确分类为

original label

ln的概率,也就是最小化括号中的第一项。同时,也在最大化分类器把target tn错误分类为

adversarial target

ln’的概率,也就是最大化括号中的第二项。

我们求出这个损失函数的负梯度,将之赋值给rm

为了避免数值不稳定,会对这个rm进行标准化,得到rm‘

把这个rm’累加到之前的r上(方便不断的标准化)

然后把这个扰动加到输入图片X上



版权声明:本文为Blue_Whale2020原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。