Lecuyer M, Atlidakis V, Geambasu R, et al. Certified Robustness to Adversarial Examples with Differential Privacy[C]. ieee symposium on security and privacy, 2019: 656-672.

@article{lecuyer2019certified,

title={Certified Robustness to Adversarial Examples with Differential Privacy},

author={Lecuyer, Mathias and Atlidakis, Vaggelis and Geambasu, Roxana and Hsu, Daniel and Jana, Suman},

pages={656--672},

year={2019}}

基于DP(differential privacy), 通过构造\((\epsilon,\delta)\)-DP机制, 可以得到certified robustness (在满足一定的条件下).

主要内容

Differential Privacy

DP, 差分隐私, 严格来说它是形容一些满足特定条件的随机机制. 它的背景是, 一些数据库, 在处理查询的时候, 虽然可以采用匿名机制, 但是一些别有心思的人可以通过查询获得一些特定的知识来推断出某些人或物具有的特殊的性质. 什么时候这种情况容易出现? 假设所有数据的全集是\(\mathcal{X}\), 而\(x, y\)是由\(\mathcal{X}\)中某些数据构成的数据库, \(A\)是一种处理查询的机制, \(A(x, \xi)\)会返回一次查询的基于\(x\)中返回的结果, 如果机制\(A\)能够保护隐私, 那么它应该使得查询者不容易分辨返回的结果是基于\(x\)还是\(y\). 假设\(S\)是我们通过查询获得的一些输出, 那么随机机制\(A\)符合\((\epsilon,\delta)\)-DP, 当

\[P(A(x)\in S) \le e^{\epsilon} P(A(y) \in S) + \delta,
\]

对于任意的\(\rho(x,y)\le1\), 任意的输出集合\(S\), 任意的\(x, y \subset \mathcal{X}\).

直观的解释就是, 对数据库\(x\)改变某一条数据, 其输出的范围的变化并不明显, 去掉\(\delta\)会更容易理解:

\[\frac{P(A(x)\in S)}{P(A(y)\in S)} \le e^{\epsilon}, \epsilon > 0.
\]

显然\(\frac{P(A(x)\in S)}{P(A(y)\in S)}=1\)的时候, 我们就完全无法分辨改变的那个数据归属, 也即这个数据的存在不会改变整体的一些统计性质, 这意味着这个数据的意义是一般的. 这也就保护了隐私.

需要注意的是, 一般意义上\(\rho\)为hamming距离, 但是论文中的都是一般的p范数(怎么推广不是很清楚).

insensitivity

\[\tag{1}
\forall \alpha \in B_p(L), \quad y_k(x+\alpha) > \max_{i:i\not=k} y_i(x+\alpha).
\]

其中\(y_k\)是网络的第k个输出, 即在\(B_p(L)\)内网络不会改变它的判断.

但是, 现在的问题是, 一般的神经网络在\(L\)不是很大的时候, 就会被干扰导致误判, 所以作者就希望转而寻求下面的insensitivity

\[\forall \alpha \in B_p(L), \quad \mathbb{E}(y_k(x+\alpha)) > \max_{i:i\not=k} \mathbb{E} (y_i(x+\alpha)).
\]

作者发现, DP机制可以完成这一目标.

Lemma1



注意条件\([0, b]\), 所以应当假设神经网络的输出是概率(softmax后)向量.

Proposition1

Proposition 1. (Robustness Condition) Suppose \(A\) satisfies \((\epsilon, \delta)\)-DP with respect to a \(p\)-norm metric. For any input \(x\), if for some \(k \in \mathcal{K}\),

\[\tag{4}
\mathbb{E}(A_k(x)) > e^{2\epsilon} \max_{i:i\not=k} \mathbb{E}(A_i(x)) + (1+e^{\epsilon})\delta,
\]

then the multiclass classification model based on label probability vector \(y(x)=(\mathbb{E}(A_1(x)), \ldots, \mathbb{E}(A_{K}(x)))\) is robust to attacks \(\alpha\) of size \(\|\alpha\|_p \le 1\) on input \(x\).

条件(4)很重要, 这说明加入了DP机制并非就能让所有的样本都鲁棒, 从某种程度上讲, 只有那些“confidence"高的才能够有certified robustness.

如何令网络为\((\epsilon,\delta)\)-DP

首先来看, 如何让普通的函数\(f\)为\((\epsilon, \delta)\)-DP, 假设

\[\Delta_{p, q} = \Delta_{p,q}^g=\max_{x,x':x
\not =x'} \frac{\|g(x)-g(x')\|_q}{\|x-x'\|_p}
\]

为\(f\)的\(p,q\)-sensitivity.

\[A(x):= f(x) + r, \quad q=1,
\]

是\((\epsilon, 0)\)-DP的, 其中\(\sigma=\sqrt{2} \Delta_{p, 1} L/\epsilon\),

\[r\sim \mathrm{Lap}(0, \sigma):=\frac{\sqrt{2}}{2\sigma} \exp(-\frac{\sqrt{2}|r|}{\sigma}).
\]

证明:

\[\begin{array}{ll}
\frac{P_x(z)}{P_y(z)}
&= \frac{P(A(x)=z)}{P(A(y)=z)} \\
&= \frac{P(r=z-f(x))}{P(r=z-f(y))} \\
&= \frac{\exp(-\frac{\sqrt{2}|z-f(x)|}{\sigma})}{\exp(-\frac{\sqrt{2}|z-f(y)|}{\sigma})} \\
&= \exp(\frac{\sqrt{2}(|z-f(y)|-|z-f(x)|)}{\sigma}) \\
&\le \exp(\frac{\sqrt{2}(|f(x)-f(y)|)}{\sigma}) \\
&= \exp(\frac{\epsilon(|f(x)-f(y)|)}{\Delta_{p,1} L}) \\
&\le \exp(\epsilon).
\end{array}
\]

注意, \(\frac{|f(x)-f(y)|}{L}\le \Delta_{p, 1}\).

还有一种是高斯机制, 即加高斯噪声, 对应\(L_2\)攻击.

\[r \sim \mathcal{N}(0, \sigma^2), \sigma= \sqrt{2\ln(\frac{1.25}{\delta})} \Delta_{p,2} L/\epsilon,
\]

此时\(A(x)\)为\((\epsilon, \delta)\)-DP.

然后由上图可知, 通过在加入噪声,

\[g(x) \rightarrow g(x) + r,
\]
\[Q(x)=h \circ g(x) \rightarrow A(x)= h \circ (g(x) + r).
\]

那么\(g+r\)是DP, \(A\)是DP吗, 答案是的.

\[\begin{array}{ll}
P(h\circ (g(x)+r) \in S) &= P( g(x)+r \in h^{-1}(S)) \\
&\le e^{\epsilon} P(g(y)+r \in h^{-1}(S)) + \delta \\
&= e^{\epsilon} P(h \circ (g(y) +r) \in S) + \delta.
\end{array}
\]

in practice

上面, 我都是基于\(\mathbb{E}\)才会有certified robustness的, 但是神经网络的期望是没法直接算的, 只好用蒙特卡洛采样估计, 即

\[\hat{\mathbb{E}} (A(x)) = \frac{1}{N}\sum_{n=1}^N h \circ (g(x)+r_n).
\]

当然, 这个时候就没法百分百保证robust了, 有

其中\(\hat{\mathbb{E}}^{lb}, \hat{\mathbb{E}}^{ub}\)分别是置信下界和上界, 具体怎么来的回看论文吧, 我没推出来.

也就是符合上面近似条件的样本, 有至少\(\eta\)的概率是robust的.

注: 还有噪声加在哪一层, 文中给出了答复.

certified robustness 的估计大概需要300采样, 普通的预测25次就足够了.

Certified Robustness to Adversarial Examples with Differential Privacy的更多相关文章

  1. Deep Learning with Differential Privacy

    原文链接:Deep Learning with Differential Privacy abstract:新的机器学习算法,差分隐私框架下隐私成本的改良分析,使用非凸目标训练深度神经网络. 数学中最 ...

  2. Adversarial Examples for Semantic Segmentation and Object Detection 阅读笔记

    Adversarial Examples for Semantic Segmentation and Object Detection (语义分割和目标检测中的对抗样本) 作者:Cihang Xie, ...

  3. 文本adversarial examples

    对文本对抗性样本的研究极少,近期论文归纳如下: 文本对抗三个难点: text data是离散数据,multimedia data是连续数据,样本空间不一样: 对text data的改动可能导致数据不合 ...

  4. 论文阅读 | Generating Fluent Adversarial Examples for Natural Languages

    Generating Fluent Adversarial Examples for Natural Languages   ACL 2019 为自然语言生成流畅的对抗样本 摘要 有效地构建自然语言处 ...

  5. 《Explaining and harnessing adversarial examples》 论文学习报告

    <Explaining and harnessing adversarial examples> 论文学习报告 组员:裴建新   赖妍菱    周子玉 2020-03-27 1 背景 Sz ...

  6. An Introduction to Differential Privacy

    原文链接:An Introduction to Differential Privacy 差分隐私算法可以允许分析人员执行良性的聚合分析,同时保证个人隐私得到切实的保护.. 背景数据分析中的隐私保护技 ...

  7. Limitations of the Lipschitz constant as a defense against adversarial examples

    目录 概 主要内容 Huster T., Chiang C. J. and Chadha R. Limitations of the lipschitz constant as a defense a ...

  8. Uncovering the Limits of Adversarial Training against Norm-Bounded Adversarial Examples

    Uncovering the Limits of Adversarial Training against Norm-Bounded Adversarial Examples 目录 概 主要内容 实验 ...

  9. Generating Adversarial Examples with Adversarial Networks

    目录 概 主要内容 black-box 拓展 Xiao C, Li B, Zhu J, et al. Generating Adversarial Examples with Adversarial ...

随机推荐

  1. 【STM32】基于正点原子『探索者』开发板的烧录

    项目需要一个功能,开发板范例正好有,就买了一块,不过还是有点贵 我手边没有J-Link 用的都是串口烧录 烧录时,先打开右上的开关 如果是仿真器烧录,它无法供电,需要接12V适配器或是杜邦线供电 然后 ...

  2. android:textAppearance解析

    Android的系统自带的文字外观设置及实际显示效果图 android:textAppearancexml布局里面设置文字的外观: 如"android:textAppearance=&quo ...

  3. Type difference of character literals in C and C++

    Every literal (constant) in C/C++ will have a type information associated with it. In both C and C++ ...

  4. ReactiveCocoa操作方法-重复

    retry重试      只要失败,就会重新执行创建信号中的block,直到成功. __block int i = 0; [[[RACSignal createSignal:^RACDisposabl ...

  5. CentOS6设置Django开发环境

    今天在我的Centos6.5机器上安装 Django 开发环境,在安装完使用 "django-admin.py startproject myapp" 创建应用的时候报了下面的错误 ...

  6. oracle 存储过程及REF CURSOR的使用

    基本使用方法及示例 1.基本结构: CREATE OR REPLACE PROCEDURE 存储过程名字 (参数1 IN NUMBER,参数2 IN NUMBER) AS 变量1 INTEGER := ...

  7. Linux目录基础

    一.解析映射文件 本地的DNS Linux: /etc/hosts Windows:C:\Windows\System32\drivers\etc\hosts 二.磁盘挂载文件 /etc/fstab ...

  8. [BUUCTF]PWN——mrctf2020_easyoverflow

    mrctf2020_easyoverflow 附件 步骤: 例行检查,64位程序,保护全开 本地试运行的时候就直接一个输入,然后就没了,直接用64位ida打开 只要满足18行的条件,就能够获取shel ...

  9. MM函数(Excel函数集团)

    此处文章均为本妖原创,供下载.学习.探讨! 文章下载源是Office365国内版1Driver,如有链接问题请联系我. 请勿用于商业!谢谢 下载地址:https://officecommunity-m ...

  10. dart系列之:如丝滑般柔顺,操作文件和目录

    目录 简介 File 读取整个文件 以流的形式读取文件 随机访问 文件的写入 处理异常 总结 简介 文件操作是IO中非常常见的一种操作,那么对应dart语言来说,操作文件是不是很简单呢?实际上dart ...