中毒攻击中Input-instance-key和Pattern-key策略的理解

Targeted Backdoor Attacks on Deep Learning Systems Using Data Poisoning(使用数据中毒对深度学习系统进行有针对性的后门攻击)这篇文章中提出了两种后门中毒攻击的策略Input-instance-key和Pattern-key,仅根据命名不容易理解,于是结合原文简单理解一下这两种策略。

作者以人脸识别模型为例介绍这两种后门攻击策略。Input-instance-key策略中的key输入空间中的元素;pattern-key策略中的key是pattern,通常不属于输入空间。

直观的说,input-instance-key旨在创建一个与密钥相关范围狭窄的后门实例,后门实例是后门攻击者指定的一个输入实例。 因此,input-instance-key策略通常只需要注入更少的中毒样本就能实现对抗目标。

另一方面,Pattern-key策略旨在创造比input-instance-key范围更广的后门实例。特别的,后门攻击者将一个pattern(例如,一副眼镜)指定为键,以便具有该pattern的任何输入实例(例如,戴着这种眼镜的人脸)都成为后门实例。 因此,Pattern-key策略通常需要更多的中毒样本才能达到对抗目标。

Input-instance-key策略

Input-instance-key策略的目标是在一组类似于密钥 k k k的后门实例 ∑ ( k ) \sum(k) (k)上提高攻击成功率, k k k是单个输入实例。例如,攻击者想要在系统中伪造目标用户 y t y^t yt的人脸,在这种情况下,攻击者选择他的一张脸部照片作为关键字 k k k,这样,当他的脸部出现在系统中时,他将被识别为 y t y^t yt。由于不同原因(角度,拍照设备)会导致照片 k k k会有其他的变化,所以 ∑ ( k ) \sum(k) (k)除了包含 k k k外还应该有其它后门实例。

在 key input instance上添加噪声,特别的,定义:
∑ r a n d ( x ) = { c l i p ( x + δ ) ∣ δ ∈ [ − 5 , 5 ] H × W × 3 } \sum_{rand}(x)=\{clip(x+\delta)|\delta\in[-5,5]^{H\times W\times3}\} rand(x)={clip(x+δ)δ[5,5]H×W×3}
其中 x x x是输出实例的向量表示,例如在人脸识别场景中,输入实例 x x x可以是像素值的 H × W × 3 H×W×3 H×W×3维向量( H H H W W W是图像的高和宽,3是通道数)。每一维可以取 [ 0 , 255 ] [0,255] [0,255]中的像素值。 c l i p ( x ) clip(x) clip(x)用于将 x x x的每一维裁剪到像素值的范围,即 [ 0 , 255 ] [0,255] [0,255]

Fig.13演示了使用后门实例生成功能 ∑ r a n d \sum_{rand} rand使用Input-instance-key策略的几个后门实例。 在此示例中,最左边的图像是关键帧 k k k,并且通过添加从 U [ − 5 , 5 ] H × W × 3 U [-5,5] H×W×3 U[5,5]H×W×3采样的随机噪声从关键帧生成右边的5个图像。所有生成的后门实例看起来都和关键帧 k k k一样,但是它们的像素值不同,是面部识别模型的不同输入实例。
在这里插入图片描述
Input-instance-key策略生成中毒样本的步骤:给定 ∑ \sum k k k,从 ∑ ( k ) \sum(k) (k)生成 n n n个对抗实例 x 1 P , . . . , x n P x^P_1,...,x^P_n x1P,...,xnP,构造中毒样本 ( x 1 P , y t ) , . . . , ( x n P , y t ) (x_1^P,y^t),...,(x_n^P,y^t) (x1P,yt),...,(xnP,yt)给注入训练数据。

Pattern-key策略

Pattern-key策略以特殊方式处理中毒样本,以使这种攻击使受害者模型在共享相同pattern的一类后门实例上获得很高的攻击成功率。 在这种情况下,key是一个pattern,也就是key pattern,它可能不是输入空间中的一个实例。 例如,在输入空间由面部照片组成的面部识别场景中,pattern可以是任何图像,例如物品(例如,眼镜或耳环),卡通图像(例如,Hello Kitty),甚至是图像随机噪声。具体来说,当对手将一副特定的眼镜设置为key时,Pattern-key策略将创建后门实例,该实例可以是戴着这副眼镜的任何人脸。 这样做时,由Pattern-key策略创建的后门实例与pattern相关联,而不是与Input-instance-key策略所使用的实例相关联,因此,Pattern-key策略允许使用更多种类的后门实例。

本文主要介绍三种Pattern-key策略的方法:混合注入策略(Blended Injection Strategy),附件注入策略(Accessory Injection Strategy)和混合附件注入策略(Blended Accessory Injection Strategy)。 前两种策略旨在实现两个正交的目标:混合注入策略旨在使key pattern即使是人类也很难注意到,而附件注入策略旨在使后门实例在实践中更易于实现。混合附件注入策略,它结合了前两种策略的优点来同时实现这两个目标。

本文将pattern注入函数 Π Π Π定义为 K × X → X K×X→X K×XX的映射,以便 Π ( k , x ) = x ′ Π(k,x)= x' Π(k,x)=x生成实例 x ′ x' x,该实例可以是中毒实例或后门实例,将pattern与任意良性实例 x ∈ X x∈X xX组合。在本文讨论的所有模式关键策略中,总是通过设置 y p = y t y^p=y^t yp=yt从中毒实例 x P x^P xP生成中毒样本 ( x P , y P ) (x^P,y^P) (xP,yP)

Blended Injection Strategy

混合注入策略通过将良性输入实例与 key pattern混合来生成中毒实例和后门实例。使用超参数 α ∈ [ 0 , 1 ] α∈[0,1] α[0,1]对模式注入函数 Π α b l e n d Π^{blend}_α Παblend进行参数化,代表混合比。假设输入实例 x x x和key pattern k k k都在其向量表示中,则混合注入策略使用的pattern注入函数定义如下:
Π α b l e n d ( k , x ) = α ⋅ k + ( 1 − α ) ⋅ x Π^{blend}_α(k,x)=α·k+(1−α)·x Παblend(k,x)=αk+(1α)x
key pattern k k k的选择可以是任意图像。例如卡通图像和随机pattern。
在这里插入图片描述
混合注入策略为pattern注入功能中使用的混合比率选择不同的值,以分别创建中毒实例和后门实例。 α α α越大,人类观察到的可见差异就越大。 因此,在创建要注入到训练数据中的中毒样本时,后门攻击者可能希望使用较小的 α α α来减少key pattern被注意的机会;另一方面,在创建后门实例时,对攻击者可能更喜欢使用较大的 α α α,因为从经验上观察到攻击成功率是相对于 α α α值的递增单调函数。 用于生成中毒实例和后门实例的值 α α α分别称为 α t r a i n α_{train} αtrain α t e s t α_{test} αtest

Accessory Injection Strategy

混合注入策略需要在训练和测试过程中干扰整个图像,这对于现实世界的攻击可能不可行。 因此,混合注入策略的实用性受到限制。

为了缓解这个问题,本文使用另一种模式注入函数 Π a c c e s s o r y Π^{accessory} Πaccessory,该函数生成的图像等效于在人脸上佩戴附件。 附件注入策略仅允许key pattern成为附件的图像,例如一副眼镜或耳环。

在附件的key pattern k k k中,图像的某些区域是透明的,即不覆盖面部,而其余部分则不透明。将 R ( k ) R(k) R(k)定义为指示透明区域的一组像素。可以按以下方式定义模式注入函数 Π a c c e s s o r y Π^{accessory} Πaccessory
Π a c c e s s o r y ( k , x ) i , j = { k i , j , i f ( i , j ) ∉ R ( k ) x i , j , i f ( i , j ) ∈ R ( k ) } Π^{accessory}(k,x)_{i,j}=\begin{Bmatrix} k_{i,j}, if(i,j) \notin R(k)\\ x_{i,j}, if(i,j) \in R(k) \end{Bmatrix} Πaccessory(k,x)i,j={ki,j,if(i,j)/R(k)xi,j,if(i,j)R(k)}
这里的 k k k x x x被组织为3-D数组, k i , j k_{i,j} ki,j x i , j x_{i,j} xi,j表示分别对应于 k k k x x x中的位置 ( i , j ) (i,j) (i,j)的两个向量。

Blended Accessory Injection Strategy

定义模式注入函数 Π α B A Π^{BA}_α ΠαBA如下:
Π α B A ( k , x ) i , j = { α ⋅ k i , j + ( 1 − α ) ⋅ x i , j , i f ( i , j ) ∉ R ( k ) x i , j , i f ( i , j ) ∈ R ( k ) } Π^{BA}_α(k,x)_{i,j}=\begin{Bmatrix} α·k_{i,j}+(1-α)·x_{i,j},if(i,j) \notin R(k)\\ x_{i,j}, if(i,j) \in R(k) \end{Bmatrix} ΠαBA(k,x)i,j={αki,j+(1α)xi,j,if(i,j)/R(k)xi,j,if(i,j)R(k)}
通过将 R ( k ) R(k) R(k)设置为空集,并分别设置 α = 1 α=1 α=1,可以将 Π α b l e n d Π^{blend}_α Παblend Π a c c e s s o r y Π^{accessory} Πaccessory视为 Π α B A Π^{BA}_α ΠαBA的两个实例。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值