对抗样本黑箱攻击UPSET、ANGRI_学习笔记

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_35414569/article/details/81084585

前言

本篇博客出于学习交流目的,主要是用来记录自己学习中遇到的问题和心路历程,方便之后回顾。过程中可能引用其他大牛的博客,文末会给出相应链接,侵删!


DeepFool算法
特点:两种黑箱算法,即UPSET和ANGRI
论文原文:UPSET and ANGRI : Breaking High Performance Image Classifiers

正文

一些对抗样本的基础知识在这里就不赘述了,可以看我之前的博客。
先介绍两种算法的主要部分,具体网络结构以及共用同样的损失评价函数,在后面介绍。
UPSET: Universal Perturbations for Steering to Exact Targets
类标: n
对抗扰动: r j j { 1 , 2 , , n } 即生成第j个目标分类的扰动
残差生成网络: R r t = R ( t )
原始样本: x
对抗样本: x ^ ,生成公式如下

x ^ = U ( x , t ) = m a x ( m i n ( s × R ( t ) + x , 1 ) , 1 )
U 即为 UPSET网络,扰动叠加计算结果归一化到 [ 1 , 1 ] ,s为比例参数,用于调节扰动 r 的大小,一般取值为2。

整体训练策略如下图所示,误差函数之后解释。


ANGRI: Antagonistic Network for Generating Rogue Images
原始样本: x
正确类别: c x
目标类别: t t c x
对抗样本: x ^ 生成公式如下

x ^ = A ( x , t )
A 即为 ANGRI网络

整体训练策略如下图所示,误差函数之后解释。


损失函数(以上两个方法都用的这个损失评估函数)

m 个预训练的分类器 C i ,表示对抗样本 x ^ 输出的分类概率 p i p i = C i x ^

L ( x , x ^ , t ) = L C ( x ^ , t ) + L F ( x , x ^ ) = i = 1 m l o g ( C i ( x ^ ) [ t ] ) + w x ^ x k k

误差函数由两部分组成, L C 表示分类器损失, L F 表示保真度损失。
L C 对不能产生目标攻击类进行惩罚。
L F 保证输出的对抗样本和原始样本足够相似。
权重 w 用来折中两个损失指标的, k 的选择应该使它不会促进稀疏性,否则一些小的区域会很明显。如果 k = 2 ,那么就是 L 2 范数,可以由 R ( x , t ) 2 2 替换。


评价指标:
Targeted fooling rate (TFR): a r g m a x ( C ( x ^ ) ) = t c x x x ^
Misclassification rate (MR): a r g m a x ( C ( x ^ ) ) c x x x ^
Fidelity score (FS):每个像素在每个通道下的平均残差范数
Confidence (C):成功欺骗为目标类时的平均概率,是一个置信度指标。

over

猜你喜欢

转载自blog.csdn.net/qq_35414569/article/details/81084585