Feature-Guided Black-Box Safety Testing of Deep Neural Networks
深度神经网络的功能导向黑盒安全测试
总结: 一种使用蒙特卡洛树搜索的方式来获取反例的方法,使用SIFT提取关键点,并采用两个玩家回合制的方式对关键点进行操作.
文章目录
初步
预备定义
N 为 一 个 神 经 网 络 , C 为 其 类 别 数 量 给 定 输 入 α 和 c ∈ C 类 N ( α , c ) 表 示 相 信 α 在 c 类 中 的 置 信 度 N ( α ) = a r g m a x c ∈ C N ( α , c ) 表 示 将 α 分 入 c 的 类 别 ( 就 是 哪 个 置 信 度 高 分 到 哪 个 ) D : 输 入 域 , 可 以 表 示 为 I R [ 0 , 255 ] w × h × c h , w , h , c h 是 一 个 图 片 的 宽 度 , 高 度 和 通 道 数 P 0 = w × h × c h 是 输 入 尺 寸 的 集 合 w × h 中 的 元 素 称 为 像 素 , 将 P 0 中 的 元 素 称 为 尺 寸 我 们 注 意 到 尺 寸 被 归 一 化 在 [ 0 , 1 ] 距 离 衡 量 指 标 : L k = ∣ ∣ α 1 − α 2 ∣ ∣ k 两 幅 图 像 的 距 离 L 范 数 给 定 图 像 α , 距 离 度 量 L k 和 距 离 d η ( α , k , d ) = { α ′ ∣ ∣ ∣ α ′ − α ∣ ∣ k ≤ d } 代 表 使 用 L k 范 数 做 为 距 离 衡 量 指 标 后 , 到 α 的 距 离 不 大 于 d 的 点 的 集 合 \begin{array}{l} N为一个神经网络,C为其类别数量\\ 给定输入α和c∈C类\\ N(α, c)表示相信α在c类中的置信度\\ N(α) = arg max_{c∈C }N(α, c)表示将α分入c的类别\\ (就是哪个置信度高分到哪个)\\ \\\\ D:输入域,可以表示为IR^{w×h×ch}_{[0,255]},w,h,ch是一个图片的宽度,高度和通道数\\ P_0 = w × h × ch 是输入尺寸的集合\\ w×h中的元素称为像素,将P0中的元素称为尺寸\\ 我们注意到尺寸被归一化在[0,1]\\ \\ 距离衡量指标: Lk = ||α1 − α2||_k 两幅图像的距离 L范数\\ \\ 给定图像α,距离度量Lk和距离d\\ η(α, k, d) =\{α' | \ ||α' − α||_k ≤ d\} 代表使用Lk范数做为距离衡量指标后,到α的距离不大于d的点的集合 \end{array}\\ N为一个神经网络,C为其类别数量给定输入α和c∈C类N(α,c)表示相信α在c类中的置信度N(α)=argmaxc∈CN(α,c)表示将α分入c的类别(就是哪个置信度高分到哪个)D:输入域,可以表示为IR[0,255]w×h×ch,w,h,ch是一个图片的宽度,高度和通道数P0=w×h×ch是输入尺寸的集合w×h中的元素称为像素,将P0中的元素称为尺寸我们注意到尺寸被归一化在[0,1]距离衡量指标:Lk=∣∣α1−α2∣∣k两幅图像的距离L范数给定图像α,距离度量Lk和距离dη(α,k,d)={α′∣ ∣∣α′−α∣∣k≤d}代表使用Lk范数做为距离衡量指标后,到α的距离不大于d的点的集合
定义1: 反例的定义与安全性的定义
给
定
一
个
输
入
α
∈
D
,
一
个
k
≥
0
的
距
离
度
量
L
k
和
一
个
距
离
d
一
个
c
≠
N
(
α
)
的
对
抗
性
用
例
α
′
定
义
为
:
α
′
∈
η
(
α
,
k
,
d
)
,
N
(
α
)
≠
N
(
α
′
)
,
N
(
α
′
)
=
c
(
这
里
意
思
是
,
a
′
和
a
是
两
个
测
试
用
例
(
两
个
图
片
,
a
′
是
反
例
)
,
a
′
在
a
的
L
k
距
离
范
围
内
,
但
他
们
两
个
属
于
不
同
的
类
别
)
a
d
v
N
,
k
,
d
(
α
,
c
)
:
c
类
别
的
一
系
列
反
例
a
d
v
N
,
k
,
d
(
α
)
=
U
c
∈
C
,
c
≠
N
(
α
)
a
d
v
N
,
k
,
d
(
α
,
c
)
:
所
有
类
别
的
反
例
a
d
v
N
,
k
,
d
(
α
,
c
)
=
∅
:
c
类
的
目
标
安
全
性
安
全
,
a
d
v
N
,
k
,
d
(
α
)
=
∅
:
非
目
标
安
全
性
(
理
解
:
当
C
类
没
有
反
例
C
类
就
安
全
,
所
有
类
没
有
就
全
部
都
安
全
)
\begin{array}{l} 给定一个输入α∈D,一个k≥0的距离度量Lk和一个距离d\\ 一个c \neq N(α) 的对抗性用例α'定义为:\\ α' ∈ η(α, k, d),N(α) \neq N(α'), N(α') = c\\ (这里意思是,a'和a是两个测试用例(两个图片,a'是反例),a'在a的L_k距离范围内,但他们两个属于不同的类别)\\ adv_{N,k,d}(α, c):c类别的一系列反例\\ adv_{N,k,d}(α) = U_{c∈C,c \neq N(α)}adv_{N,k,d}(α, c):所有类别的反例\\ adv_{N,k,d}(α, c) = ∅:c类的目标安全性安全, \\ advN,k,d(α) = ∅:非目标安全性\\ (理解: 当C类没有反例C类就安全,所有类没有就全部都安全) \end{array}\\
给定一个输入α∈D,一个k≥0的距离度量Lk和一个距离d一个c=N(α)的对抗性用例α′定义为:α′∈η(α,k,d),N(α)=N(α′),N(α′)=c(这里意思是,a′和a是两个测试用例(两个图片,a′是反例),a′在a的Lk距离范围内,但他们两个属于不同的类别)advN,k,d(α,c):c类别的一系列反例advN,k,d(α)=Uc∈C,c=N(α)advN,k,d(α,c):所有类别的反例advN,k,d(α,c)=∅:c类的目标安全性安全,advN,k,d(α)=∅:非目标安全性(理解:当C类没有反例C类就安全,所有类没有就全部都安全)
特征提取
Scale Invariant Feature Transform (SIFT)
特点: 无需使用神经网络就可以进行对象定位和跟踪
步骤:标度空间极值检测(检测图像中相对较暗或较亮的区域),关键点定位(确定这些区域的确切位置)和关键点描述符分配(了解目标对象的上下文图片及其本地区域)
设
Λ
(
α
)
是
图
像
的
一
组
特
征
其
中
每
个
特
征
λ
∈
Λ
(
α
)
是
一
个
元
组
(
λ
x
,
λ
y
,
λ
s
,
λ
r
)
(
λ
x
,
λ
y
)
是
坐
标
,
λ
s
是
特
征
的
大
小
,
λ
r
是
特
征
的
响
应
强
度
\begin{array}{l} 设Λ(α)是图像的一组特征\\ 其中每个特征λ∈Λ(α)是一个元组(λx,λy,λs,λr)\\ (λx,λy)是坐标,λs是特征的大小,λr是特征的响应强度 \end{array}\\
设Λ(α)是图像的一组特征其中每个特征λ∈Λ(α)是一个元组(λx,λy,λs,λr)(λx,λy)是坐标,λs是特征的大小,λr是特征的响应强度
高斯混合模型
给 定 图 像 α 及 其 关 键 点 集 合 Λ ( α ) , 我 们 为 λ i ∈ Λ ( α ) 定 义 二 维 高 斯 分 布 G i , 对 于 像 素 ( p x , p y ) 有 : G i , x = 1 2 π λ i , s 2 exp ( − ( p x − λ i , x ) 2 2 λ i , s 2 ) G i , y = 1 2 π λ i , s 2 exp ( − ( p y − λ i , y ) 2 2 λ i , s 2 ) λ i , s : 方 差 , ( λ i , x , λ i , y ) 分 别 作 为 均 值 Φ = { φ i } i ∈ 1 , 2 , . . . k , : 混 合 模 型 的 权 重 k = ∣ Λ ( α ) ∣ : k 是 关 键 点 集 合 的 个 数 , ϕ i = λ i , r / ∑ j = 0 k λ j , r 是 权 重 ( k 就 起 到 一 个 表 示 总 个 数 的 作 用 ) 最 后 的 混 合 高 斯 模 型 就 是 加 权 : G x = ∏ i = 1 k ϕ i × G i , x and G y = ∏ i = 1 k ϕ i × G i , y ( 就 是 把 数 据 对 应 放 在 高 斯 混 合 模 型 的 定 义 中 , 权 重 使 用 相 应 强 度 / 所 有 强 度 求 和 ) G ( Λ ( α ) ) 为 最 后 的 混 合 高 斯 模 型 \begin{array}{l} 给定图像α及其关键点集合Λ(α),我们为λi∈Λ(α)定义二维高斯分布G_i,对于像素(px,py)有:\\ \mathcal{G}_{i, x}=\frac{1}{\sqrt{2 \pi \lambda_{i, s}^{2}}} \exp \left(\frac{-\left(p_{x}-\lambda_{i, x}\right)^{2}}{2 \lambda_{i, s}^{2}}\right) \quad \mathcal{G}_{i, y}=\frac{1}{\sqrt{2 \pi \lambda_{i, s}^{2}}} \exp \left(\frac{-\left(p_{y}-\lambda_{i, y}\right)^{2}}{2 \lambda_{i, s}^{2}}\right)\\ λ_{i,s}:方差,(λ_{i,x}, λ_{i,y})分别作为均值\\ Φ = \{φ_i\}_{i∈{1,2,...k},}:混合模型的权重\\ k = |Λ(α)|:k是关键点集合的个数,\phi_{i}=\lambda_{i, r} / \sum_{j=0}^{k} \lambda_{j, r}是权重(k就起到一个表示总个数的作用)\\ 最后的混合高斯模型就是加权:\\ \mathcal{G}_{x}=\prod_{i=1}^{k} \phi_{i} \times \mathcal{G}_{i, x} \text { and } \mathcal{G}_{y}=\prod_{i=1}^{k} \phi_{i} \times \mathcal{G}_{i, y}\\ (就是把数据对应放在高斯混合模型的定义中,权重使用相应强度/所有强度求和)\\ G(Λ(α))为最后的混合高斯模型 \end{array}\\ 给定图像α及其关键点集合Λ(α),我们为λi∈Λ(α)定义二维高斯分布Gi,对于像素(px,py)有:Gi,x=2πλi,s21exp(2λi,s2−(px−λi,x)2)Gi,y=2πλi,s21exp(2λi,s2−(py−λi,y)2)λi,s:方差,(λi,x,λi,y)分别作为均值Φ={φi}i∈1,2,...k,:混合模型的权重k=∣Λ(α)∣:k是关键点集合的个数,ϕi=λi,r/∑j=0kλj,r是权重(k就起到一个表示总个数的作用)最后的混合高斯模型就是加权:Gx=∏i=1kϕi×Gi,x and Gy=∏i=1kϕi×Gi,y(就是把数据对应放在高斯混合模型的定义中,权重使用相应强度/所有强度求和)G(Λ(α))为最后的混合高斯模型
有模型之后就可以将一张图片变成高斯混合模型处理后的图片
像素操纵(pixel manipulatio)
α ( x , y , z ) : 图 像 α 上 位 于 ( x , y ) 的 像 素 的 z 通 道 值 ( 通 常 为 R G B 或 灰 度 值 , R G B 3 个 , 灰 度 1 个 ) I = { + , − } 是 一 组 操 作 指 令 , τ 是 表 示 操 作 幅 度 的 正 实 数 对 于 所 有 的 像 素 ( x , y ) 和 所 有 的 通 道 z ∈ { 1 , 2 , 3 } , 在 其 输 入 子 集 X 上 的 像 素 操 纵 δ X , i : D → D 定 义 为 δ X , i ( α ) ( x , y , z ) = { α ( x , y , z ) + τ , if ( x , y ) ∈ X and i = + α ( x , y , z ) − τ , if ( x , y ) ∈ X and i = − α ( x , y , z ) otherwise 请 注 意 , 如 果 值 是 有 界 的 , 例 如 [ 0 , 1 ] , 则 需 要 将 δ X , i ( α ) ( x , y , z ) 限 制 在 界 限 之 内 。 ( 理 解 就 是 对 一 组 像 素 的 某 个 通 道 统 统 加 上 一 些 值 或 者 减 少 值 , 并 且 要 控 制 最 后 的 值 不 要 超 出 范 围 ) \begin{array}{l} α(x, y, z):图像α上位于(x,y)的像素的z通道值(通常为RGB或灰度值,RGB3个,灰度1个)\\ I = \{+, −\}是一组操作指令,τ是表示操作幅度的正实数\\ 对于所有的像素(x,y)和所有的通道z∈\{1,2,3\},在其输入子集X上的像素操纵δ_{X,i} : D →D定义为\\ \delta_{X, i}(\alpha)(x, y, z)=\left\{\begin{array}{l}{\alpha(x, y, z)+\tau, \text { if }(x, y) \in X \text { and } i=+} \\ {\alpha(x, y, z)-\tau, \text { if }(x, y) \in X \text { and } i=-} \\ {\alpha(x, y, z) \quad \text { otherwise }}\end{array}\right.\\ 请注意,如果值是有界的,例如[0,1],则需要将δ_{X,i}(α)(x,y,z)限制在界限之内。\\ (理解就是对一组像素的某个通道统统加上一些值或者减少值,并且要控制最后的值不要超出范围)\\ \end{array}\\ α(x,y,z):图像α上位于(x,y)的像素的z通道值(通常为RGB或灰度值,RGB3个,灰度1个)I={+,−}是一组操作指令,τ是表示操作幅度的正实数对于所有的像素(x,y)和所有的通道z∈{1,2,3},在其输入子集X上的像素操纵δX,i:D→D定义为δX,i(α)(x,y,z)=⎩⎨⎧α(x,y,z)+τ, if (x,y)∈X and i=+α(x,y,z)−τ, if (x,y)∈X and i=−α(x,y,z) otherwise 请注意,如果值是有界的,例如[0,1],则需要将δX,i(α)(x,y,z)限制在界限之内。(理解就是对一组像素的某个通道统统加上一些值或者减少值,并且要控制最后的值不要超出范围)
操作安全
提出了一种功能导向的方法,而不是使用梯度方向作为优化的指南
基于游戏的方法
玩家I选择特征,而玩家II然后选择选定特征中的像素和操作指令
尽管玩家I的目标是最大程度地减少与对抗示例的距离,
但玩家II可以根据高斯混合模型对像素进行采样,可以是合作者,对抗者或天生的,
我们根据Lk距离定义目标函数,并将与一个对抗示例的距离视为衡量其严重性的指标。 注意,对抗性示例的集合 a d v N , k , d ( α , c ) advN,k,d(α,c) advN,k,d(α,c)和 a d v N , k , d ( α ) advN,k,d(α) advN,k,d(α)可以是无限的。
定义2:
在
集
合
a
d
v
N
,
k
,
d
(
α
,
c
)
(
或
者
a
d
v
N
,
k
,
d
(
α
)
)
中
找
到
距
原
始
图
像
α
最
小
距
离
的
α
′
arg
min
α
′
{
sev
α
(
α
′
)
∣
α
′
∈
ad
v
N
,
k
,
d
(
α
,
c
)
(
or adv
N
,
k
,
d
(
α
)
)
}
s
e
v
α
(
α
′
)
=
∣
∣
α
−
α
′
∣
∣
k
,
是
对
抗
例
α
′
对
原
始
图
像
α
的
严
重
程
度
注
意
:
L
k
的
选
择
将
影
响
感
知
相
似
性
\begin{array}{l} 在集合adv_{N,k,d}(α, c)(或者 adv_{N,k,d}(α))中找到距原始图像α最小距离的α'\\ \arg \min _{\alpha^{\prime}}\left\{\operatorname{sev}_{\alpha}\left(\alpha^{\prime}\right) | \alpha^{\prime} \in \operatorname{ad} v_{N, k, d}(\alpha, c)\left(\text {or adv}_{N, k, d}(\alpha)\right)\right\}\\ {sev}_{\alpha}\left(\alpha^{\prime}\right) = ||α −α'||_k,是对抗例α'对原始图像α的严重程度\\ 注意:Lk的选择将影响感知相似性 \end{array}\\
在集合advN,k,d(α,c)(或者advN,k,d(α))中找到距原始图像α最小距离的α′argminα′{sevα(α′)∣α′∈advN,k,d(α,c)(or advN,k,d(α))}sevα(α′)=∣∣α−α′∣∣k,是对抗例α′对原始图像α的严重程度注意:Lk的选择将影响感知相似性
理解:就是从反例中选一个严重性程度最大的(距离最小的)反例
两层回合制游戏
将对抗性示例的制作过程转化为假设有两个玩家I和II的两层回合制游戏。
M
(
α
,
k
,
d
)
=
(
S
∪
(
S
×
Λ
(
α
)
)
)
,
s
0
,
{
T
a
}
a
∈
{
I
,
I
I
}
,
L
)
S
为
是
属
于
玩
家
I
的
一
组
游
戏
状
态
,
每
个
状
态
代
表
η
(
α
,
k
,
d
)
中
的
图
像
S
×
Λ
(
α
)
是
属
于
玩
家
I
I
的
一
组
游
戏
状
态
,
其
中
Λ
(
α
)
是
一
组
特
征
(
关
键
点
)
的
图
像
α
(
s
)
:
与
状
态
s
∈
S
相
关
的
图
像
,
s
0
∈
S
是
初
始
游
戏
状
态
,
α
(
s
0
)
是
原
始
图
像
α
过
度
关
系
:
T
I
:
S
×
Λ
(
α
)
→
S
×
Λ
(
α
)
,
T
I
(
s
,
λ
)
=
(
s
,
λ
)
T
I
I
:
(
S
×
Λ
(
α
)
)
×
P
(
P
0
)
×
I
→
S
定
义
为
T
I
I
(
(
s
,
λ
)
,
X
,
i
)
=
δ
X
,
i
(
α
(
s
)
)
在
每
个
游
戏
的
状
态
s
∈
S
的
情
况
下
,
玩
家
I
将
选
择
一
个
关
键
点
λ
,
玩
家
I
I
将
选
择
一
个
对
(
X
,
i
)
(
选
择
一
组
像
素
点
和
操
作
)
标
记
函
数
:
S
∪
(
S
×
Λ
(
α
)
)
→
C
×
G
为
状
态
s
或
(
)
s
,
λ
)
分
配
一
个
类
别
N
(
α
(
s
)
)
和
一
个
二
维
高
斯
混
合
模
型
G
(
Λ
(
α
(
s
)
)
)
。
\begin{array}{l} M(α, k, d) = (S ∪ (S × Λ(α))), s_0, \{T_a\}_{a∈\{I,II\}}, L) \\ S为是属于玩家I的一组游戏状态,每个状态代表η(α,k,d)中的图像\\ S×Λ(α)是属于玩家II的一组游戏状态,其中Λ(α)是一组特征(关键点)的图像\\ α(s):与状态s∈S相关的图像,s_0∈S是初始游戏状态,α(s0)是原始图像α\\ 过度关系:T_I:S×Λ(α)→S×Λ(α),T_I(s,λ)=(s,λ)\\ T_{II}:(S×Λ(α))×P(P_0)×I→S定义为T_{II}((s,λ),X,i)=δ_{X,i}(α(s))\\ 在每个游戏的状态s∈S的情况下,玩家I将选择一个关键点λ,玩家II将选择一个对(X,i)(选择一组像素点和操作)\\ 标记函数: S∪(S×Λ(α)) → C ×G为状态s或()s,λ)分配一个类别N(α(s))和一个二维高斯混合模型G(Λ (α(s)))。 \end{array}\\
M(α,k,d)=(S∪(S×Λ(α))),s0,{Ta}a∈{I,II},L)S为是属于玩家I的一组游戏状态,每个状态代表η(α,k,d)中的图像S×Λ(α)是属于玩家II的一组游戏状态,其中Λ(α)是一组特征(关键点)的图像α(s):与状态s∈S相关的图像,s0∈S是初始游戏状态,α(s0)是原始图像α过度关系:TI:S×Λ(α)→S×Λ(α),TI(s,λ)=(s,λ)TII:(S×Λ(α))×P(P0)×I→S定义为TII((s,λ),X,i)=δX,i(α(s))在每个游戏的状态s∈S的情况下,玩家I将选择一个关键点λ,玩家II将选择一个对(X,i)(选择一组像素点和操作)标记函数:S∪(S×Λ(α))→C×G为状态s或()s,λ)分配一个类别N(α(s))和一个二维高斯混合模型G(Λ(α(s)))。
理解:T1转移不会改变状态与特征,T2转移会改变图像a上的像素值
游戏模型路径
游
戏
模
型
的
路
径
是
游
戏
状
态
的
序
列
s
1
u
1
s
2
u
2
使
得
对
于
所
有
k
≥
1
,
对
于
某
些
特
征
λ
k
,
u
k
=
T
I
(
s
k
,
λ
k
)
对
于
(
X
k
,
i
k
)
,
s
k
+
1
=
T
I
I
(
(
s
k
,
λ
k
)
,
X
k
,
i
k
)
令
l
a
s
t
(
ρ
)
为
有
限
路
径
ρ
的
最
后
状
态
,
P
a
t
h
a
F
是
有
限
路
径
的
集
合
,
以
使
l
a
s
t
(
ρ
)
属
于
玩
家
a
∈
{
I
,
I
I
}
参
与
者
I
的
随
机
策
略
:
Path
I
F
→
D
(
Λ
(
α
)
)
参
与
者
2
的
随
机
策
略
:
P
a
t
h
T
I
F
→
D
(
P
(
P
0
)
×
I
)
σ
=
(
σ
I
,
σ
I
I
)
为
策
略
配
置
文
件
(
s
t
r
a
t
e
g
y
p
r
o
f
i
l
e
)
\begin{array}{l} 游戏模型的路径是游戏状态的序列s1u1s2u2\\ 使得对于所有k≥1,对于某些特征λk,u_k = T_I(s_k, λ_k) \\ 对于( X_k, i_k) , s_{k+1} =T_{II}((s_k, λ_k), X_k, i_k) \\ 令last(ρ)为有限路径ρ的最后状态,Path^F_a是有限路径的集合,以使last(ρ)属于玩家a∈\{I,II\}\\ 参与者I的随机策略:\operatorname{Path}_{\mathrm{I}}^{F} \rightarrow \mathcal{D}(\Lambda(\alpha))\\ 参与者2的随机策略:P a t h_{\mathrm{TI}}^{F} \rightarrow \mathcal{D}\left(\mathcal{P}\left(P_{0}\right) \times I\right)\\ σ=(σI,σII)为策略配置文件( strategy\ profile) \end{array}\\
游戏模型的路径是游戏状态的序列s1u1s2u2使得对于所有k≥1,对于某些特征λk,uk=TI(sk,λk)对于(Xk,ik),sk+1=TII((sk,λk),Xk,ik)令last(ρ)为有限路径ρ的最后状态,PathaF是有限路径的集合,以使last(ρ)属于玩家a∈{I,II}参与者I的随机策略:PathIF→D(Λ(α))参与者2的随机策略:PathTIF→D(P(P0)×I)σ=(σI,σII)为策略配置文件(strategy profile)
奖励函数的定义
为 σ = ( σ I , σ I I ) 和 有 限 路 径 ρ ∈ ⋃ a ∈ { 1 , I I } P a t h a F 定 义 奖 励 R ( σ , ρ ) 的 想 法 是 累 积 在 路 径 上 发 现 的 对 抗 性 示 例 的 严 重 性 度 量 注 意 , 给 定 σ , 该 游 戏 成 为 完 全 概 率 系 统 ( f u l l y p r o b a b i l i s t i c s y s t e m ) 。 α ρ ′ = α ( l a s t ( ρ ) ) 是 与 路 径 ρ 的 最 后 状 态 关 联 的 图 像 t ( ρ ) : N ( α ρ ′ ) = c ∨ ∥ α ρ ′ − α ∥ k > d , 表 示 路 径 已 达 到 其 关 联 图 像 处 于 目 标 类 别 c 或 η ( α , k , d ) 之 外 的 状 态 只 要 满 足 t ( ρ ) , 就 可 以 终 止 路 径 ρ 不 难 发 现 , 由 于 定 义 1 中 的 约 束 , 每 个 无 限 路 径 都 有 一 个 可 以 终 止 的 有 限 前 缀 奖 励 函 数 定 义 如 下 : R ( σ , ρ ) = { 1 / sev α ( α 0 ′ ) if t ( ρ ) and ρ ∈ P a t h 1 F ∑ λ ∈ Λ ( α ) ( ρ ) ( λ ) ⋅ R ( σ , ρ T T ( last ( ρ ) , λ ) ) if ¬ t ( ρ ) and ρ ∈ P a t h I F ∑ ( X , i ) ∈ P ( P 0 ) × I σ I I ( ρ ) ( X , i ) ⋅ R ( σ , ρ T I I ( l a s t ( ρ ) , X , i ) ) if ρ ∈ Path I I F σ I ( ρ ) ( λ ) 是 玩 家 I 在 ρ 上 选 择 λ 的 概 率 , σ I I ( ρ ) ( X , i ) 是 玩 家 I I 基 于 ρ 的 选 择 ( X , i ) 的 概 率 路 径 仅 终 止 于 玩 家 I 的 状 态 如 果 找 到 一 个 反 例 , 则 分 配 奖 励 是 严 重 程 度 ( 最 小 距 离 ) 的 倒 数 , 否 则 , 如 果 是 其 子 项 , 则 是 奖 励 的 加 权 总 和 因 此 , 最 大 化 回 报 的 策 略 σ I 将 需 要 最 小 化 严 重 性 s e v α ( α ρ ′ ) , \begin{array}{l} 为σ=(σI,σII)和有限路径\rho \in \bigcup_{a \in\{1, \mathrm{II}\}} P a t h_{a}^{F}定义奖励R(σ, ρ)\\ 的想法是累积在路径上发现的对抗性示例的严重性度量\\ 注意,给定σ,该游戏成为完全概率系统(fully\ probabilistic \ system)。\\ α'_ρ=α(last(ρ))是与路径ρ的最后状态关联的图像\\ t(ρ): N\left(\alpha_{\rho}^{\prime}\right)=c \vee\left\|\alpha_{\rho}^{\prime}-\alpha\right\|_{k}>d,表示路径已达到其关联图像处于目标类别c或 η(α, k, d)之外的状态\\ 只要满足t(ρ),就可以终止路径ρ\\ 不难发现,由于定义1中的约束,每个无限路径都有一个可以终止的有限前缀\\ 奖励函数定义如下:\\ R(σ,ρ)=\left\{\begin{array}{ll}{1 / \operatorname{sev}_{\alpha}\left(\alpha_{0}^{\prime}\right)} & {\text { if } t(\rho) \text { and } \rho \in P a t h_{1}^{F}} \\ {\sum_{\lambda \in \Lambda(\alpha)}(\rho)(\lambda) \cdot R\left(\sigma, \rho T_{\mathrm{T}}(\operatorname{last}(\rho), \lambda)\right)} & {\text { if } \neg t(\rho) \text { and } \rho \in P a t h_{\mathrm{I}}^{F}} \\ {\sum_{(X, i) \in \mathcal{P}\left(P_{0}\right) \times I} \sigma_{\mathrm{II}}(\rho)(X, i) \cdot R\left(\sigma, \rho T_{\mathrm{II}}(l a s t(\rho), X, i)\right) \text { if } \rho \in \operatorname{Path}_{\mathrm{II}}^{F}}\end{array}\right.\\ σI(ρ)(λ) 是玩家I在ρ上选择λ的概率,σII(ρ)(X, i)是玩家II基于ρ的选择(X,i)的概率\\ 路径仅终止于玩家I的状态\\ 如果找到一个反例,则分配奖励是严重程度(最小距离)的倒数,否则,如果是其子项,则是奖励的加权总和\\ 因此,最大化回报的策略σI将需要最小化严重性sev_α(α'_ρ), \end{array}\\ 为σ=(σI,σII)和有限路径ρ∈⋃a∈{1,II}PathaF定义奖励R(σ,ρ)的想法是累积在路径上发现的对抗性示例的严重性度量注意,给定σ,该游戏成为完全概率系统(fully probabilistic system)。αρ′=α(last(ρ))是与路径ρ的最后状态关联的图像t(ρ):N(αρ′)=c∨∥∥αρ′−α∥∥k>d,表示路径已达到其关联图像处于目标类别c或η(α,k,d)之外的状态只要满足t(ρ),就可以终止路径ρ不难发现,由于定义1中的约束,每个无限路径都有一个可以终止的有限前缀奖励函数定义如下:R(σ,ρ)=⎩⎨⎧1/sevα(α0′)∑λ∈Λ(α)(ρ)(λ)⋅R(σ,ρTT(last(ρ),λ))∑(X,i)∈P(P0)×IσII(ρ)(X,i)⋅R(σ,ρTII(last(ρ),X,i)) if ρ∈PathIIF if t(ρ) and ρ∈Path1F if ¬t(ρ) and ρ∈PathIFσI(ρ)(λ)是玩家I在ρ上选择λ的概率,σII(ρ)(X,i)是玩家II基于ρ的选择(X,i)的概率路径仅终止于玩家I的状态如果找到一个反例,则分配奖励是严重程度(最小距离)的倒数,否则,如果是其子项,则是奖励的加权总和因此,最大化回报的策略σI将需要最小化严重性sevα(αρ′),
理解,就是按照给定方法搜索,直到满足距离条件,或者不在距离条件内就停止搜索
定义3.
游
戏
的
目
标
是
让
玩
家
I
根
据
玩
家
I
I
的
策
略
σ
I
I
选
择
策
略
σ
I
最
大
化
初
始
状
态
s
0
的
奖
励
R
(
(
σ
I
,
σ
I
I
)
,
s
0
)
,
即
arg
max
σ
t
opt
σ
I
I
R
(
(
σ
I
,
σ
I
I
)
,
s
0
)
其
中
选
项
o
p
t
σ
I
I
可
以
是
m
a
x
σ
I
I
,
m
i
n
σ
I
I
或
n
a
t
σ
I
I
玩
家
I
I
可
以
根
据
高
斯
混
合
模
型
对
像
素
进
行
采
样
,
可
以
是
合
作
者
,
对
抗
者
或
天
生
的
,
游戏的目标是让玩家I根据玩家II的策略σII选择策略σI最大化初始状态s0的奖励R((σI,σII),s0),即\\ \arg \max _{\sigma_{\mathrm{t}}} \operatorname{opt}_{\sigma_{\mathrm{II}}} R\left(\left(\sigma_{\mathrm{I}}, \sigma_{\mathrm{II}}\right), s_{0}\right)\\ 其中选项optσII可以是maxσII,minσII或natσII\\ 玩家II可以根据高斯混合模型对像素进行采样,可以是合作者,对抗者或天生的,
游戏的目标是让玩家I根据玩家II的策略σII选择策略σI最大化初始状态s0的奖励R((σI,σII),s0),即argσtmaxoptσIIR((σI,σII),s0)其中选项optσII可以是maxσII,minσII或natσII玩家II可以根据高斯混合模型对像素进行采样,可以是合作者,对抗者或天生的,
定理1
当
o
p
t
σ
I
I
∈
{
m
a
x
σ
I
I
,
m
i
n
σ
I
I
,
n
a
t
σ
I
I
}
.
时
,
确
定
性
和
无
记
忆
策
略
足
以
满
足
玩
家
I
的
需
要
。
当optσII∈\{maxσII , minσII , natσII \}.时,确定性和无记忆策略足以满足玩家I的需要。
当optσII∈{maxσII,minσII,natσII}.时,确定性和无记忆策略足以满足玩家I的需要。
问题的复杂性
对 于 博 弈 模 型 M ( α , k , d ) , 在 p − t i m e 时 间 内 能 确 定 a d v N , k , d ( α , c ) = ∅ 对 于 系 统 最 长 的 有 限 路 径 的 长 度 h , 状 态 数 ( 因 此 也 就 是 系 统 的 大 小 ) O ( ∣ P 0 ∣ h ) 对于博弈模型M(α, k,d),在p-time时间内能确定advN,k,d(α,c)=∅\\ 对于系统最长的有限路径的长度h,状态数(因此也就是系统的大小)O(|P_0|^h) 对于博弈模型M(α,k,d),在p−time时间内能确定advN,k,d(α,c)=∅对于系统最长的有限路径的长度h,状态数(因此也就是系统的大小)O(∣P0∣h)
蒙特卡罗树搜索渐近最优策略
首 先 考 虑 o p t σ I I = m a x σ I I 的 情 况 M C T S 算 法 通 过 对 模 型 M ( α , k , d ) 的 策 略 空 间 进 行 采 样 来 逐 步 扩 展 部 分 博 弈 树 M C T S 以 上 限 置 信 度 上 限 ( U C B ) 作 为 探 索 方 案 , 在 理 论 上 即 充 分 探 索 游 戏 树 时 , 它 会 收 敛 至 最 优 解 终 止 条 件 : t c 1 和 t c 2 , t c 1 控 制 整 个 过 程 是 否 应 终 止 , t c 2 控 制 何 时 进 行 移 动 , 终 止 条 件 可 以 是 例 如 迭 代 次 数 的 界 限 等 在 部 分 树 上 , 每 个 节 点 都 维 护 有 一 对 ( r , n ) , 分 别 代 表 累 积 的 奖 励 r 和 访 问 次 数 n 扩 展 叶 节 点 以 将 其 子 级 添 加 到 部 分 树 后 , 我 们 调 用 S i m u l a t i o n 在 每 个 子 节 点 上 运 行 模 拟 。 在 新 节 点 上 进 行 的 模 拟 是 从 节 点 开 始 的 游 戏 直 到 终 止 为 止 玩 家 在 模 拟 过 程 中 随 机 行 动 。 每 个 模 拟 在 到 达 终 止 节 点 α 0 时 终 止 , 在 该 节 点 上 可 以 计 算 奖 励 1 / s e v α ( α 0 ) 。 然 后 , 该 奖 励 将 从 新 子 节 点 通 过 其 祖 先 反 向 传 播 , 直 到 到 达 根 节 点 为 止 。 每 次 通 过 节 点 反 向 传 播 新 的 奖 励 v 时 , 我 们 都 会 将 其 关 联 对 更 新 为 ( r + v , n + 1 ) b e s t C h i l d ( r o o t ) 返 回 具 有 最 高 r / n 值 的 r o o t 的 子 代 其 他 情 况 : o p t σ I I = n a t σ I I 的 情 况 , 通 过 选 择 G ( Λ ( α ) ) 来 选 择 一 个 孩 子 , 而 不 是 选 择 最 好 的 孩 子 , 对 于 o p t σ I I = m i n σ I I 的 情 况 , 选 择 最 差 的 孩 子 我 们 注 意 到 当 o p t σ I I ∈ n a t σ I I , m a x σ I I 时 , 博 弈 不 是 零 和 。 \begin{array}{l} 首先考虑optσII=maxσII的情况\\ MCTS算法通过对模型M(α,k,d)的策略空间进行采样来逐步扩展部分博弈树\\ MCTS以上限置信度上限(UCB)作为探索方案,在理论上即充分探索游戏树时,它会收敛至最优解\\ 终止条件:tc1和tc2,tc1控制整个过程是否应终止,tc2控制何时进行移动,终止条件可以是例如迭代次数的界限等\\ 在部分树上,每个节点都维护有一对(r,n),分别代表累积的奖励r和访问次数n\\ 扩展叶节点以将其子级添加到部分树后,我们调用Simulation在每个子节点上运行模拟。\\ 在新节点上进行的模拟是从节点开始的游戏直到终止为止\\ 玩家在模拟过程中随机行动。每个模拟在到达终止节点α0时终止,在该节点上可以计算奖励1/sevα(α0)。\\ 然后,该奖励将从新子节点通过其祖先反向传播,直到到达根节点为止。\\ 每次通过节点反向传播新的奖励v时,我们都会将其关联对更新为(r + v,n + 1)\\ bestChild(root)返回具有最高r / n值的root的子代\\ 其他情况:optσII=natσII的情况,通过选择G(Λ(α))来选择一个孩子,而不是选择最好的孩子,\\ 对于optσII=minσII的情况,选择最差的孩子\\ 我们注意到当optσII∈{natσII,maxσII}时,博弈不是零和。\\ \end{array}\\ 首先考虑optσII=maxσII的情况MCTS算法通过对模型M(α,k,d)的策略空间进行采样来逐步扩展部分博弈树MCTS以上限置信度上限(UCB)作为探索方案,在理论上即充分探索游戏树时,它会收敛至最优解终止条件:tc1和tc2,tc1控制整个过程是否应终止,tc2控制何时进行移动,终止条件可以是例如迭代次数的界限等在部分树上,每个节点都维护有一对(r,n),分别代表累积的奖励r和访问次数n扩展叶节点以将其子级添加到部分树后,我们调用Simulation在每个子节点上运行模拟。在新节点上进行的模拟是从节点开始的游戏直到终止为止玩家在模拟过程中随机行动。每个模拟在到达终止节点α0时终止,在该节点上可以计算奖励1/sevα(α0)。然后,该奖励将从新子节点通过其祖先反向传播,直到到达根节点为止。每次通过节点反向传播新的奖励v时,我们都会将其关联对更新为(r+v,n+1)bestChild(root)返回具有最高r/n值的root的子代其他情况:optσII=natσII的情况,通过选择G(Λ(α))来选择一个孩子,而不是选择最好的孩子,对于optσII=minσII的情况,选择最差的孩子我们注意到当optσII∈natσII,maxσII时,博弈不是零和。
MCTS算法
游戏中的严重性间隔
假 设 我 们 有 固 定 的 终 止 条 件 t c 1 和 t c 2 以 及 目 标 类 别 c , 给 定 玩 家 I I 的 选 项 o p t σ I I , 我 们 有 一 个 M C T S 算 法 来 计 算 对 抗 性 示 例 α ′ 设 s e v ( M ( α , k , d ) , o p t σ I I ) 为 s e v α ( α ′ ) 其 中 α ′ 是 通 过 在 输 入 M ( α , k , d ) , t c 1 , t c 2 , c 上 的 o p t σ I I 运 行 算 法 1 而 返 回 的 对 抗 示 例 于 玩 家 I I 的 角 色 , 存 在 一 个 严 重 度 区 间 S I ( α , k , d ) [ sev ( M ( α , k , d ) , max σ 12 ) , sev ( M ( α , k , d ) , min σ 12 ) ] 此 外 , s e v ( M ( α , k , d ) , n a t σ I I ) ∈ S I ( α , k , d ) 假设我们有固定的终止条件tc1和tc2以及目标类别c,给定玩家II的选项optσII,\\ 我们有一个MCTS算法来计算对抗性示例α'\\ 设sev(M(α, k, d), optσII)为sev_α(α')\\ 其中α'是通过在输入M(α,k,d),tc1,tc2,c上的optσII运行算法1而返回的对抗示例\\ 于玩家II的角色,存在一个严重度区间SI(α,k,d)\\ \left[\operatorname{sev}\left(M(\alpha, k, d), \max _{\sigma_{12}}\right), \operatorname{sev}\left(M(\alpha, k, d), \min _{\sigma_{12}}\right)\right]\\ 此外, sev(M(α, k, d), natσII ) ∈ SI(α, k, d)\\ 假设我们有固定的终止条件tc1和tc2以及目标类别c,给定玩家II的选项optσII,我们有一个MCTS算法来计算对抗性示例α′设sev(M(α,k,d),optσII)为sevα(α′)其中α′是通过在输入M(α,k,d),tc1,tc2,c上的optσII运行算法1而返回的对抗示例于玩家II的角色,存在一个严重度区间SI(α,k,d)[sev(M(α,k,d),σ12max),sev(M(α,k,d),σ12min)]此外,sev(M(α,k,d),natσII)∈SI(α,k,d)
通过最佳策略保证安全
τ 是 一 个 正 实 数 , 是 像 素 操 作 中 使 用 的 操 作 幅 度 如 果 对 于 所 有 维 度 p ∈ P 0 , 我 们 都 有 ∣ α ′ ( p ) − α ( p ) ∣ = n ∗ τ , ( n ≥ 0 ) 则 图 像 α ′ ∈ η ( α , k , d ) 是 τ − 网 格 图 像 令 G ( α , k , d ) 是 η ( α , k , d ) 中 的 τ 网 格 图 像 的 集 合 对 于 参 与 者 I I 合 作 的 情 况 , 我 们 有 以 下 结 论 。 \begin{array}{l} τ是一个正实数,是像素操作中使用的操作幅度\\ 如果对于所有维度p∈P_0,我们都有|α'(p) − α(p)| = n ∗ τ ,(n ≥ 0)\\ 则图像α'∈η(α,k,d)是τ-网格图像\\ 令G(α,k,d)是η(α,k,d)中的τ网格图像的集合\\ 对于参与者II\ 合作\ 的情况,我们有以下结论。\\ \end{array} τ是一个正实数,是像素操作中使用的操作幅度如果对于所有维度p∈P0,我们都有∣α′(p)−α(p)∣=n∗τ,(n≥0)则图像α′∈η(α,k,d)是τ−网格图像令G(α,k,d)是η(α,k,d)中的τ网格图像的集合对于参与者II 合作 的情况,我们有以下结论。
定理2
令
α
′
∈
η
(
α
,
k
,
d
)
是
任
何
τ
网
格
图
像
,
使
得
α
′
∈
a
d
v
N
,
k
,
d
(
α
,
c
)
,
(
其
中
c
是
目
标
类
别
)
,
那
么
我
们
有
s
e
v
α
(
α
′
)
≥
s
e
v
(
M
(
α
,
k
,
d
)
,
m
a
x
σ
I
I
)
令α'∈η(α,k,d)是任何τ网格图像,使得α' ∈ adv_{N,k,d}(α, c),(其中c是目标类别),\\ 那么我们有sevα(α') ≥ sev(M(α, k, d), max_{σII} )
令α′∈η(α,k,d)是任何τ网格图像,使得α′∈advN,k,d(α,c),(其中c是目标类别),那么我们有sevα(α′)≥sev(M(α,k,d),maxσII)
从直觉上讲,该定理说该算法可以从τ网格图像集中找到最佳对抗示例
如果网络是Lipschitz连续网络,则仅当τ足够小时,才需要考虑τ网格图像。
定理3
如
果
所
有
τ
网
格
图
像
都
是
关
于
τ
/
2
的
错
误
分
类
聚
合
器
,
并
且
s
e
v
(
M
(
α
,
k
,
d
)
,
m
a
x
σ
I
I
)
>
d
,
那
么
a
d
v
N
,
k
,
d
(
α
,
c
)
=
∅
(
注
意
,
s
e
v
(
M
(
α
,
k
,
d
)
,
m
a
x
σ
I
I
)
>
d
表
示
η
(
α
,
k
,
d
)
中
的
所
有
τ
图
像
都
不
是
对
抗
性
示
例
。
)
该
定
理
表
明
,
要
实
现
完
整
的
安
全
性
验
证
,
可
以
逐
渐
减
小
τ
直
到
s
e
v
(
M
(
α
,
k
,
d
)
,
m
a
x
σ
I
I
)
≤
d
如果所有τ网格图像都是关于τ/ 2的错误分类聚合器,并且sev(M(α, k, d), maxσII ) > d,\\ 那么advN,k,d(α, c) = ∅\\ (注意,sev(M(α,k,d),maxσII)> d表示η(α,k,d)中的所有τ图像都不是对抗性示例。)\\ 该定理表明,要实现完整的安全性验证,可以逐渐减小τ直到sev(M(α,k,d),maxσII)≤d\\
如果所有τ网格图像都是关于τ/2的错误分类聚合器,并且sev(M(α,k,d),maxσII)>d,那么advN,k,d(α,c)=∅(注意,sev(M(α,k,d),maxσII)>d表示η(α,k,d)中的所有τ图像都不是对抗性示例。)该定理表明,要实现完整的安全性验证,可以逐渐减小τ直到sev(M(α,k,d),maxσII)≤d
定义4
若
α
,
α
′
∈
D
,
我
们
有
∣
N
(
α
′
,
N
(
α
)
)
−
N
(
α
,
N
(
α
)
)
∣
<
h
⋅
∣
∣
α
′
−
α
∣
∣
k
.
那
么
网
络
N
是
关
于
距
离
L
k
的
L
i
p
s
c
h
i
t
z
网
络
,
且
h
>
0
,
。
若α, α' ∈ D, 我们有 |N(α', N(α)) − N(α, N(α))| <h · ||α' − α||_k. \\那么网络N是关于距离L_k的Lipschitz网络,且h >0,。
若α,α′∈D,我们有∣N(α′,N(α))−N(α,N(α))∣<h⋅∣∣α′−α∣∣k.那么网络N是关于距离Lk的Lipschitz网络,且h>0,。
理解:将a'分到a所在类的置信度减掉将a分到a所在类的置信度小于一个值,那么就是L网络
我们的常用网络都是L网络.
ℓ
=
min
{
∣
N
(
α
′
,
N
(
α
)
)
−
N
(
α
,
N
(
α
)
)
∣
∣
α
,
α
′
∈
D
,
N
(
α
′
)
≠
N
(
α
)
}
\ell=\min \left\{\left|N\left(\alpha^{\prime}, N(\alpha)\right)-N(\alpha, N(\alpha))\right| | \alpha, \alpha^{\prime} \in \mathrm{D}, N\left(\alpha^{\prime}\right) \neq N(\alpha)\right\}
ℓ=min{∣N(α′,N(α))−N(α,N(α))∣∣α,α′∈D,N(α′)=N(α)}
将l设为类别更改的最小置信度差,l的值在[0,1]之间
定理4可以看作定理3的实例化
定理4
令
N
为
关
于
L
1
的
L
i
p
s
c
h
i
t
z
网
络
和
常
数
h
。
当
τ
≤
2
ℓ
ℏ
且
s
e
v
(
M
(
α
,
k
,
d
)
,
m
a
x
σ
I
I
)
>
d
时
,
a
d
v
N
,
k
,
d
(
α
,
c
)
=
∅
。
令N为关于L1的Lipschitz网络和常数h。\\ 当\tau \leq \frac{2 \ell}{\hbar}且sev(M(α,k,d),maxσII)> d时,adv_{N,k,d}(α,c)=∅。
令N为关于L1的Lipschitz网络和常数h。当τ≤ℏ2ℓ且sev(M(α,k,d),maxσII)>d时,advN,k,d(α,c)=∅。
理解: 保证安全一共有两个条件,一是t值的范围,二是严重性超过某个值
1/e-收敛,因为我们使用的是有限游戏,所以当游戏树完全扩展时,可以保证MCTS收敛
定理3和定理4证明略
如何评价用例的好坏?
s e v α ( α ′ ) = ∣ ∣ α − α ′ ∣ ∣ k , 是 对 抗 例 α ′ 对 原 始 图 像 α 的 严 重 程 度 对 于 N 张 图 片 , 直 接 求 平 均 值 就 是 该 用 例 最 终 的 严 重 性 值 , 这 个 值 越 小 越 好 ( 越 小 代 表 距 离 越 小 , 代 表 这 个 反 例 就 越 好 ) {sev}_{\alpha}\left(\alpha^{\prime}\right) = ||α −α'||_k,是对抗例α'对原始图像α的严重程度\\ 对于N张图片,直接求平均值就是该用例最终的严重性值,这个值越小越好 \\(越小代表距离越小,代表这个反例就越好) sevα(α′)=∣∣α−α′∣∣k,是对抗例α′对原始图像α的严重程度对于N张图片,直接求平均值就是该用例最终的严重性值,这个值越小越好(越小代表距离越小,代表这个反例就越好)
git地址
原项目地址,原项目有很多错误,无法运行程序
fork后项目地址,已经可以正确生成反例,代码在mnist实验中可以使用