Seeing is Not Believing: Camouflage Attacks on Image Scaling Algorithms论文学习笔记

以下内容源自论文

Abstract and Introduction

图像缩放算法要求——保持缩放前后的视觉特征

论文对于常见缩放算法自动生成伪装图像进行攻击

攻击算法效果——视觉语义在缩放后发生巨大变化

大多数深度学习模型需求固定大小的输入层数据。因此,输入图像必须在数据预处理过程中进行缩放以满足

特定模型输入要求。

论文中的攻击者可以利用当大图像调整为较小的图像时发生的“数据欠采样”现象,导致同一图像的人和机器之间的“视觉认知矛盾”,从而实现检测规避和数据中毒等恶意目标。攻击发生在模型预训练阶段,在数据输入之前就已生效,也就是与学习模型无关。

(数据欠采样:欠采样是一种在数据不平衡的情况下,通过减少多数类样本数量来提高少数类样本分类性能的方法。即精进减少原有样本数量。

视觉认知矛盾:人和机器识别结果不同,首先在图像上欺骗人,然后在图像特征上使机器被蒙蔽。)

攻击者需要处理的两种技术挑战:

(a)首先,攻击者需要通过分析缩放算法来决定在哪里插入具有欺骗效果的像素。人工不可行。需要探索一种自动高效的伪装图像生成方法。

(b) 其次,对于基于云的计算视觉服务(现实场景),其模型的确切缩放算法和输入大小是不可见的。攻击者需要想办法先获取算法的相关参数才能使攻击成功。

白盒情况:

论文分析了三个流行的深度学习框架中常见的缩放实现:Caffe、TensorFlow 和 Torch。确认这些框架使用的几乎所有默认数据缩放算法都容易受到缩放攻击。

黑盒情况:

论文研究了针对基于云的计算机视觉服务的缩放攻击。结果表明有可能将缩放攻击发起到大多数现有的基于云的计算机视觉服务。图像缩放实现的可能方法相对有限,可以进行暴力猜测。文章展示了一种较之暴力破解简单而有效的测试方法,在 Microsoft Azure1、百度 2、阿里云 3 和腾讯 4 上成功进行了攻击。

有趣的是,我们还发现并讨论了攻击影响的范围扩展到一些计算机图形应用程序,例如主流 Web 浏览器。

视频演示攻击效果:https://youtu.be/Vm2N0mb14Ow

贡献概括:

1.揭示了计算机视觉应用中图像缩放过程的安全风险。验证和测试了流行的深度学习(DL)框架中常用的图像缩放算法,结果表明安全风险几乎影响所有基于DL框架的图像应用。

2.将缩放攻击形式化为一个预先训练好的优化问题,并提出了相应的实现来自动生成伪装图像。

3.证明了所提出的攻击对于云视觉服务仍然有效,其中图像缩放算法和参数的实现细节来自用户,即黑盒场景

4.提出了几种潜在的防御策略。

Image Scaling Attack Concept and AttackExamples

图像缩放算法旨在保持图像的视觉特征,同时调整其大小。攻击者可以使用缩放算法通过仔细调整像素级信息来改变图像的语义。

常见的图像缩放算法:最邻近,双线性,三线性

攻击示例:

1.本地图像分类应用程序 cppclassification [16] 的第一个攻击示例。对于输入大小为224*224的分类模型,专门制作不同大小的输入图像(672*224)。虽然图2左栏的输入在视觉上呈现出类似羊的图,但深度学习模型将右栏中的图像作为实际输入,并将其分类为“White Wolf”的一个实例。

2.针对百度图像分类服务的攻击示例。攻击图像是从哔哩哔哩图像制作的,目的是让人们将其视为喘息,但机器将其视为狼。结果云服务 API 5 返回表明攻击图像被分类为具有高置信度分数的“Grey Wolf”(达到 0.98829),表明攻击是有效的。

数据缩放实际上是深度学习应用中的常见动作。深度学习神经网络模型通常需要固定的输入尺度。大多数深度学习框架提供数据缩放函数。

Related Work:略

Formalizing the Scaling Attack:

缩放攻击的目标是对图像产生欺骗效果。在这里,欺骗效应是指图像在缩放动作之前和之后部分或完全对人类呈现不同的含义的情况。为了描述缩放攻击的过程,我们定义了一种攻击中涉及的以下四个概念对象。

两种攻击模式:

第一个攻击模式指定源图像和目标图像。即攻击者希望将看起来像特定源图像的图像的图像缩放到看起来像特定目标图像的图像。

第二个攻击模式只指定目标图像。攻击者的目标是尽可能地增加图像缩放前后的差异。

四个概念之间的形式化关系公式+两种攻击模式下的算法思路:

源图像和攻击图像之间的差异由扰动矩阵1表示

将攻击图像缩放得到输出图像(视觉图像)

视觉图像与目标图像之间的差异由扰动矩阵2表示

强攻击模式:源图像和目标图像都已知,从众多可能的攻击图像中选出效果最好的那个。

一种策略是找到一个与 S 最相似的 A,同时将 D 和 T 之间的差异限制在上限内。

为了找到最佳欺骗效果,我们从理论上定义了一个目标函数来比较 Am⇤n 的所有解。

为了查看算法解决方案,我们选择 L 范数距离来捕获像素级差异作为衡量两幅图像的接近程度的近似值。

弱攻击模式:只知道目标图像,优先选择视觉上与目标图像差异最大的攻击图像。

目标图像逆缩放还原源图像。

生成攻击图像和视觉图像。

限制视觉与目标的差异,并尽可能要求攻击图像和源图像差异大。

Creating Scaling Attack Images

所有的缩放算法习惯先水平调整再垂直调整,如有特例,仅需将操作步骤反过来即可

两边的参数由具体缩放算法决定

自动缩放攻击生成的主要思想是分两步处理攻击图像。第一步是获取方程式中的系数矩阵,实现为 GetCo-efficient()。第二步是找到扰动矩阵1来制作攻击图像,实现了为GetPerturbation() 来找到扰动向量。

算法1和算法2分别说明了弱攻击形式和强攻击形式的攻击图像生成。

缩放系数矩阵求法:

  1. 先获取缩放算法,按照算法实现正常求解缩放系数(复杂)
  2. 通过输入和输出估算矩阵:

使用255单位矩阵来做源图像,减少了计算难度,通过缩放算法后,

利用单位矩阵乘以任何矩阵都等于其自身的性质估算出缩放系数矩阵。

文章实验主张,归一化过程中损失的精度可以忽略不计。

扰动矩阵求解:

  1. 可以直接进行优化求解。一般来说,n变量二次规划问题的复杂度不小于O(n2),

因为它包含复杂的计算操作,如求解Hessian矩阵。当图像大小变大时,优化的计算成本很高。

  1. 简化方法。分解成在两个方向上的子向量求解,简化和加速图像制作过程。

这样,我们的原始攻击模型已经简化为几个子列优化问题:

转化为标准二次优化问题:

约束

目标函数

Experimental Results of Scaling Attack

白盒:

我们在Caffe、Tensorflow和Torch三个流行的深度学习框架构建的插值算法上验证了我们的攻击图像生成方法。不常用的缩放算法不成功。

黑盒:

穷举法确定缩放算法(缩放参数),创新提出了“高效穷举法”

使用百度,阿里云和腾讯云服务作为我们的测试平台

Factors that Might Interfere with ScalingAttacks

概述了常见的图像预处理动作,并讨论了它们对缩放攻击的潜在影响。

过滤——是模糊或锐化图像,

高级缩放算法大不太好痛

裁剪-截断输入图像的某些区域

仿射变换——是旋转或镜像输入图像。

颜色变换-改变颜色空间,如将RGB图像转换为灰度。

大小:源图像和目标图像的大小决定了如何利用多少冗余像素来发起攻击。如果缩放输入和输出之间的大小差异非常接近,则重采样引起的信息衰减可能不足以实现成功的欺骗效果。

亮度:源图像和目标图像的亮度或颜色决定了约束有多紧。在最坏的情况下,在给定全白色源和全黑色目标的情况下很难找到可行的解决方案。即使我们成功地生成了攻击图像,在不注意到分布在白色图像中的暗点的情况下,很难欺骗人类。

Countermeasures

简单操作:省略需要缩放的图像,将图像随机删除几个像素

攻击检测:

缩放攻击通过在缩放动作之前和之后引起视觉特征的剧烈变化来实现欺骗效果。

一个潜在的解决方案是在缩放过程中检测输入特征的这种明显变化,如颜色直方图和颜色散射分布。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值