【论文快读】DeepFool(2016)

标题:DeepFool: a simple and accurate method to fool deep neural networks
作者:Seyed-Mohsen Moosavi-Dezfooli等
链接:https://arxiv.org/abs/1511.04599
摘要:
【论文快读】DeepFool(2016)_第1张图片
本文内容:
对于robustness的量化与计算;
DeepFool算法。

形式化

图像 x ∈ \textbf{x}\in x图像空间 R n \mathbb{R}^n Rn
分类器 k ^ ( x ) \hat{k}(\textbf{x}) k^(x)在点 x x x处的鲁棒性 Δ ( x ; k ^ ) \Delta(\textbf{x};\hat{k}) Δ(x;k^):(几何意义是 x \textbf{x} x到分类边界的距离)
Δ ( x ; k ^ ) : = min ⁡ r ∣ ∣ r ∣ ∣ 2    s . t . k ^ ( x + r ) ≠ k ^ ( x ) \Delta(\textbf{x};\hat{k}):=\min_{\textbf{r}}\left||\textbf{r}|\right|_2 \ \ s.t.\hat{k}(\textbf{x}+\textbf{r})\neq\hat{k}(\textbf{x}) Δ(x;k^):=rminr2  s.t.k^(x+r)̸=k^(x)
其中 r \textbf{r} r是能够fool分类器的最小扰动。
分类器 k ^ ( x ) \hat{k}(\textbf{x}) k^(x)的鲁棒性: ρ a d v ( k ^ ) = E x Δ ( x ; k ^ ) ∣ ∣ x ∣ ∣ 2 \rho_{adv}(\hat{k})=\mathbb{E}_{\textbf{x}}\dfrac{\Delta(\textbf{x};\hat{k})}{||\textbf{x}||_2} ρadv(k^)=Exx2Δ(x;k^)
(点面距离越远,计算输入的样本度量越小,模型越健壮)

二分类问题

k ^ ( x ) = s i g n ( w T x + b ) : = s i g n ( f ( x ) ) \hat{k}(\textbf{x})=sign(\textbf{w}^T\textbf{x}+b):=sign(f(\textbf{x})) k^(x)=sign(wTx+b):=sign(f(x))
分类边界 F = { x : f ( x ) = 0 } \mathscr{F}=\{\textbf{x}:f(\textbf{x})=0\} F={x:f(x)=0}
扰动向量计为数据点到分类边界(直线)的距离向量,可以先算点到直线距离,然后求直线的单位法向量,相乘即 r ⋆ ( x 0 ) : = arg ⁡ min ⁡ r ∣ ∣ r ∣ ∣ 2 s . t .   s i g n ( f ( x 0 + r ) ) ≠ s i g n ( f ( x 0 ) ) \textbf{r}_{\star}(\textbf{x}_0):=\arg\min\limits_{\textbf{r}}||\textbf{r}||_2s.t.\ sign(f(\textbf{x}_0+\textbf{r}))\neq sign(f(\textbf{x}_0)) r(x0):=argrminr2s.t. sign(f(x0+r))̸=sign(f(x0))
= − f ( x 0 ) ∣ ∣ w ∣ ∣ 2 2 w =-\dfrac{f(\textbf{x}_0)}{||\textbf{w}||_2^2}\textbf{w} =w22f(x0)w
迭代算法如下:
【论文快读】DeepFool(2016)_第2张图片

多分类问题

label数: c c c
记分类函数 f ( x ) = W T x + b f(\textbf{x})=\textbf{W}^T\textbf{x}+\textbf{b} f(x)=WTx+b
分类器 k ^ ( x ) = arg ⁡ max ⁡ k f k ( x ) \hat{k}(\textbf{x})=\arg\max\limits_{k}{f_k(\textbf{x})} k^(x)=argkmaxfk(x) f k ( x ) 是 向 量 f ( x ) f_k(\textbf{x})是向量f(\textbf{x}) fk(x)f(x)的第 k k k个维度。
扰动向量: arg ⁡ min ⁡ r ∣ ∣ r ∣ ∣ 2 \arg\min\limits_{\textbf{r}}||\textbf{r}||_2 argrminr2
s . t . ∃ k : w k T ( x 0 + r ) + b k ≥ w k ^ ( x 0 ) T ( x 0 + r ) + b k ^ ( x 0 ) s.t. \exists k: \textbf{w}^T_k(\textbf{x}_0+\textbf{r})+\textbf{b}_k\geq \textbf{w}^T_{\hat{k}(\textbf{x}_0)}(\textbf{x}_0+\textbf{r})+\textbf{b}_{\hat{k}(\textbf{x}_0)} s.t.k:wkT(x0+r)+bkwk^(x0)T(x0+r)+bk^(x0)
其中 w k \textbf{w}_k wk W \textbf{W} W的第 k k k列。、
几何意义为寻找 x 0 \textbf{x}_0 x0与所在的凸区域 P = ⋂ k = 1 c { x : f k ^ ( x 0 ) ( x ) ≥ f k ( x ) } P=\bigcap\limits_{k=1}^{c}\{\textbf{x}:f_{\hat{k}(\textbf{x}_0)}(\textbf{x})\geq f_{k}(\textbf{x})\} P=k=1c{x:fk^(x0)(x)fk(x)}边界的最小距离,即:
l ^ ( x 0 ) = arg ⁡ min ⁡ k ≠ k ^ ( x 0 ) ∣ f k ( x 0 ) − f k ^ ( x 0 ) ( x 0 ) ∣ ∣ ∣ w k − w k ^ ( x 0 ) ∣ ∣ 2 \hat{l}(\textbf{x}_0)=\arg\min\limits_{k\neq \hat{k}(\textbf{x}_0)}\dfrac{|f_k(\textbf{x}_0)-f_{\hat{k}(\textbf{x}_0)}(\textbf{x}_0)|}{||\textbf{w}_{k}-\textbf{w}_{\hat{k}(\textbf{x}_0)}||_2} l^(x0)=argk̸=k^(x0)minwkwk^(x0)2fk(x0)fk^(x0)(x0)
所以最小扰动 r ⋆ ( x 0 ) = ∣ f l ^ ( x 0 ) ( x 0 ) − f k ^ ( x 0 ) ( x 0 ) ∣ ∣ ∣ w l ^ ( x 0 ) − w k ^ ( x 0 ) ∣ ∣ 2 2 ( w l ^ ( x 0 ) − w k ^ ( x 0 ) ) \textbf{r}_{\star}(\textbf{x}_0)=\dfrac{|f_{\hat{l}(\textbf{x}_0)}(\textbf{x}_0)-f_{\hat{k}(\textbf{x}_0)}(\textbf{x}_0)|}{||\textbf{w}_{\hat{l}(\textbf{x}_0)}-\textbf{w}_{\hat{k}(\textbf{x}_0)}||_2^2}(\textbf{w}_{\hat{l}(\textbf{x}_0)}-\textbf{w}_{\hat{k}(\textbf{x}_0)}) r(x0)=wl^(x0)wk^(x0)22fl^(x0)(x0)fk^(x0)(x0)(wl^(x0)wk^(x0))
当边界非线性时,把上述 w \textbf{w} w替换成 ∇ f ( ( x ) ) \nabla f(\textbf(x)) f((x))即可(如下算法2)
【论文快读】DeepFool(2016)_第3张图片
值得注意的是本算法的输出不是optimal的,但实验中已经能够大概率实现小幅度扰动了。

你可能感兴趣的:(CV,论文阅读)