“Deep models under the GAN: information leakage from collaborative deep learning”阅读笔记
一、摘要
指出深度学习在机器学习场景下的优势,以及深度学习快速崛起的原因。随后点出研究者对于深度学习隐私问题的考虑。作者提出了一种强力的攻击方法,在其攻击下任何分布式、联邦式、或者中心化的深度学习方法都是脆弱的。这种攻击方法利用了学习过程中攻击者可以训练一个GAN的特性,从而能够模拟原始训练集的分布。
二、问题抽象
在众包/联邦机器学习场景下,任何一个参与多方训练的攻击者都能够获取多方训练集的隐私信息(推理攻击)。
三、使用工具
GAN
四、文章贡献
- 提出了一种新的利用GAN对分布式深度学习的攻击;首次将GAN运用到恶意场景;
- 相比于其他的信息提取方法,本文采用的方法更加通用,对卷积神经网络也有效;
- 提出了众包学习中欺骗的概念,让受害者泄露更多的精确隐私信息;
- 即使参数使用了差分隐私技术进行保护,攻击仍然有效。
指出google提出的联邦学习算法中仅将中心服务器考虑为敌手的情况是不安全的,任何一方参与训练的人都可能是敌手。
五、基本思路
1. 敌手模型
攻击者假扮为众包深度学习协议中的一个诚实参与方,执行协议的每一个上传下载步骤;
攻击者的目标是推断出有关一个标签(自己不拥有)的有意义的信息;
攻击者没有勾结中心服务器;
攻击者通过构造梯度影响其他参与方,并且可以欺骗其他参与方泄露更多信息;
2. 攻击方式
假设一个参与者(受害者)声明(声明自己拥有?)的标签为[a,b],攻击者A声明的标签为[b,c],也就是说b是他们共有的,而攻击者不知道关于类别a的任何信息。因此攻击者的目标就是尽可能多的推断出关于类别a中成员的信息。
攻击者就利用GAN来生成类似受害者的类别为a的样本,并给他们加上类别c的标签,然后再加入到分布式的学习过程中去。这样受害者需要投入更多的计算以区分类别a和类别c的样本,从而会泄露出比之前更多的关于类别a的信息。这样通过多轮迭代,根据GAN算法的性质,攻击者生成的c类别的分布将和类别a的分布趋于一致。从而达到攻击者的目的。
疑问:攻击者建立的GAN模型中的判别网络所需的类别为a的真实样本是如何获取的?(真实类别a样本应该只有受害者V拥有)
这个疑问可以用下面这张图帮助理解,也就是说攻击者不需要给判别器喂分类a的真实样本,因为从中心服务器PS下载下来的参数就是包含了受害者V已经喂过分类a真实样本的分类器(判别网络)的部分参数。所以可以理解成,攻击者本地的判别网络是交给拥有分类a的真实样本的受害者V来训练的。

六、结论
作者在本文提出的新型攻击方法比目前已知的模型反转攻击更加有效,并且目前没有好的防御方法,因此作者认为众包学习相比于传统的中心化的学习方式没有很强的替代意义。
七、未来工作
- 对本文提出的攻击进行防御,并且证明众包/联邦学习相比于传统的中心式的学习有较大的替代意义。
八、我的想法
- 本文是首次将GAN运用到了恶意场景,那么GAN是否有其他的恶意场景?
- 能否对本文的攻击方式进行防御?
“Deep models under the GAN: information leakage from collaborative deep learning”阅读笔记的更多相关文章
- Deep Models Under the GAN: Information Leakage from Collaborative Deep Learning
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! arXiv:1702.07464v3 [cs.CR] 14 Sep 2017 以下是对本文关键部分的摘抄翻译,详情请参见原文. ABSTR ...
- Deep Learning 阅读笔记:Convolutional Auto-Encoders 卷积神经网络的自编码表达
需要搭建一个比较复杂的CNN网络,希望通过预训练来提高CNN的表现. 上网找了一下,关于CAE(Convolutional Auto-Encoders)的文章还真是少,勉强只能找到一篇瑞士的文章. S ...
- Deep learning-based personality recognition from text posts of online social networks 阅读笔记
文章目录 一.摘要 二.模型过程 1.文本预处理 1.1 文本切分 1.2 文本统一 2. 基于统计的特征提取 2.1 提取特殊的语言统计特征 2.2 提取基于字典的语言特征 3. 基于深度学习的文本 ...
- 论文翻译——Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank
Abstract Semantic word spaces have been very useful but cannot express the meaning of longer phrases ...
- 论文解读(GMIM)《Deep Graph Clustering via Mutual Information Maximization and Mixture Model》
论文信息 论文标题:Deep Graph Clustering via Mutual Information Maximization and Mixture Model论文作者:Maedeh Ahm ...
- Deep Learning论文笔记之(八)Deep Learning最新综述
Deep Learning论文笔记之(八)Deep Learning最新综述 zouxy09@qq.com http://blog.csdn.net/zouxy09 自己平时看了一些论文,但老感觉看完 ...
- Deep Learning of Graph Matching 阅读笔记
Deep Learning of Graph Matching 阅读笔记 CVPR2018的一篇文章,主要提出了一种利用深度神经网络实现端到端图匹配(Graph Matching)的方法. 该篇文章理 ...
- Spectral Norm Regularization for Improving the Generalizability of Deep Learning论文笔记
Spectral Norm Regularization for Improving the Generalizability of Deep Learning论文笔记 2018年12月03日 00: ...
- 最佳实践:深度学习用于自然语言处理(Deep Learning for NLP Best Practices) - 阅读笔记
https://www.wxnmh.com/thread-1528249.htm https://www.wxnmh.com/thread-1528251.htm https://www.wxnmh. ...
随机推荐
- 学linux内核与学linux操作系统有什么区别!?
linux内核包括:进程管理,存储管理,IO管理,文件系统等功能.linux操作系统则是linux内核再加上像shell或图形界面和其他的实用软件,比内核庞大的多.建议先学shell命令和linux下 ...
- IDEA 通过数据库生成entity实体类
IDEA利用数据库生成entity类教程 1.在左上角有一个View 选项 2. 然后选择 TOOL Windows 3. 然后选择Database然后会弹出一个窗口 4.选择+号 5.选择data ...
- xUtils框架的介绍(四)
今天介绍xUtils的最后一个模块--HttpUtils,拖了那么久,终于要结束了.另外,码字不易,如果大家有什么疑问和见解,欢迎大家留言讨论.HttpUtils是解决日常工作过程中繁杂的上传下载文件 ...
- 手动实现如何从H264流中提取SPS/PPS信息
1,代码比较简单,可以直接用了.流的第一个NALU一定是SPS void get_sps_pps_nalu(uint8_t *data, int len, std::vector<uint8_t ...
- jQuery的引入和使用
https://www.cnblogs.com/sandraryan/ 前端代码优化:无效循环越少越好,DOM节点操作越少越好,HTTP请求越少越好 jq是一个js库.(不是框架) JQ优点 1. 方 ...
- Python--day19--random模块
random模块 >>> import random #随机小数 >>> random.random() # 大于0且小于1之间的小数 0.766433866365 ...
- Python--day47--mysql索引注意事项
- CentOS7在防火墙与端口上的操作
https://jingyan.baidu.com/article/cdddd41cb3bf6c53cb00e1ac.html CentOS7在安装软件包或类库的时候,常常会因为防火墙的拦截和端口未开 ...
- HDU 6621"K-th Closest Distance"(二分+主席树)
传送门 •题意 有 $m$ 次询问,每次询问求 $n$ 个数中, $[L,R]$ 区间距 $p$ 第 $k$ 近的数与 $p$ 差值的绝对值: •题解 二分答案,假设当前二分的答案为 $x$,那么如何 ...
- win10系统激活 快捷方式
系统不定期就会提示激活,每次激活都是找各种工具折腾,今天捣鼓简单的脚本直接激活~~ 首先查看自己系统的版本,后面才能找到合适的激活码 win+R 启动程序 输入 winver 即可查看系统版本 2.查 ...