Privacy Amplification by Decentralization-程序员宅基地

技术标签: 差分隐私  python  

motivation:平衡隐私保护和实用性,当用户很多,中心DP有瓶颈。

methods:LDP+relaxation==》Network DP,local view(local memory and messages received)

experiments:求和,离散直方图,梯度优化

conclusion:对比LDP,隐私收益O(1/根号n);避免用户共谋,在完全图中在LDP下,与相同算法比较提出的算法隐私放大结果O(1/根号n的1/4)

Abstract

1.在LDP中提出了一个relaxation,在图结构中沿这边去交换信息,这种relaxation称为network DP。

2.在求和计算,离散直方图计算,随机梯度下降方法优化做实验。

3.we propose simple algorithms on ring and complete topologies. 

1 Introduction

1.每个user保持自己的数据,并且和中心只分享结果。

问题:中心有瓶颈,当参与方很大的时候

LDP背景:each participant (user) does not trust anyone and assumes that an adversary may observe everything that she/he shares。问题:utility great loss。Best possible error under LDP is a factor √n larger than in the centralized model of DP

2.amplify methods:shuffling,subsampling,iteration。这些方法很难应用在联邦/去中心化设置中: the former requires that the identity of the subsampled participants remain secret, while the latter assumes that only the final model is revealed。

1.2 贡献

1.提出的放松LDP只可以观察临近的数据。Network DP也可以解释用户之间碰撞。

2.对于不同任务,提出了simple algorithms,相比于LDP,隐私收益为O(1/√n) 。

3.环图对于用户共谋不够robust,所以提出了完全图(complete graph)。对于求和问题提出了算法,相比于LDP放大结果为

4.对于随机梯度下降优化中,提出了decentralized SGD algorithm。在某些情况下,隐私放大为 nearly matching the utility of centralized private SGD。

5.有趣的是,上述算法可以容忍恒定数量的碰撞,但代价是减少了隐私放大效果。

2.1 Network Differential Privacy

1.

 对于图的差分隐私之间的关系是弱于本地差分隐私的,但是提供了更好的隐私保障。但是前者保护的是整个数据集的数据,所以说提供了更好的隐私保障。

 A是去中心算法,两个D就是相邻数据集。提出了一个满足(epsilon ,delta)network DP。NetworkDP是被认为讲操作O和算法A结合起来的一种分析,主要就是希望结合起来的隐私要比单独的A要好(与DP比)。

In other words,applying Ov amplifies the privacy guarantees of A.

但是又考虑到用户之间的勾结,根据定义1,假设一个一个upper bound上界c,代表用户可能串通的数量。在这种setting下,希望保护聚集的信息Ov'

2.2 Decentralized Computation on a Walk

T 代表token;X是用户u的局部损失函数在τ处的(随机)梯度;

3 Walking on a Ring

3.1在有向环图上的真实求和

边E从第一个用户u开始walk,范围是u到n-1。Token从用户1开始经过k次。背景:环是公开的。在LDP中,在发送数据给中心之前,需要给每一个single contribution添加随机扰动(标准差standard deviation)。所以在这个求和问题中,也是考虑了一个抽象机制Perturb(x; σ) 去添加噪声(高斯机制或者拉普拉斯)Let σloc be the standard deviation of the noise required so that Perturb(·; σloc) satisfifies (ε, δ)-LDP。添加的噪声的标准差是满足 (ε, δ)-LDP的。标准差每n-1次添加一次。

 LDP的标准差是,因此算法1提供了O(1/√n) reduction in error,就等同于O(1/√n) gain in ε。Algorithm 1 achieves the same privacy-utility trade-off as a trusted aggregator 。

注意:算法1假设用户之间是不共谋的。

输出的其实是对于真实值的一个分布,并不是真实数值。

假设用高斯噪声,添加标准差为 

全部添加的噪声为,这就和算法1有一样的utility。

3.2 离散直方图计算

并不是环直方图,是用户之间的关系可以看作是一个ring,本质上还是单值的频数估计。

目标:计算

 在LDP中,classic的方法就是L-ary randomized response(Kairouz, P., Oh, S., and Viswanath, P. (2014). Extremal mechanisms for local differential privacy. In NIPS.)用户以概率为1-y提交真是值,y是均匀随机值,使用RR(y)作为随机扰动。初始化:token用足够的随机元素去隐藏第一个贡献,包含着部分的直方图,等价于shuffling。

为了简单地表示,定理2依赖于(Amplifification by Shufflfling: From Local to Central Differential Privacy via Anonymity. ),它有一个简单的封闭形式。

3.3 Discussion

局限:1.对于用户共谋算法不够强壮,在算法1假设是不共谋的。如果两个用户串通冰鞋share 他们的信息,算法就不满足DP了。即使加了noise,也没有保护了。当一个用户在两个共谋节点之间,他的隐私保障就会degrade。对于直方图也有类似推理。

2.固定环拓扑不适合扩展到梯度下降,所以准备用iteration进行隐私放大。在这种放大方案中,对给定用户(数据点)的隐私保证随着其之后的梯度步数的增加而增加。因此,在固定环中,用户u相对于另一个用户v的隐私取决于它们在环中的相对位置(例如,当v在u之后时,不会有隐私放大)。这些限制促使我们考虑在一个完整图(complete graph)上的随机walk。

4 Walking on a Complete Graph

换句话说,在每一步中,token都被发送给在V中均匀随机选择的用户。我们考虑固定长度的随机行走T > 0,因此给定用户贡献的次数本身是随机的。

4.1 真实求和

用户u接受第k次的token并且用进行更新,与之前ring中的一样,也是满足LDP。在LDP下,对比了相同的算法,并且得到隐私放大是

求和任务本质:随机选取用户,通过扰动之后叠加。

which relies on the intermediate aggregations of values between two visits of the token to a given user and the secrecy of the path of the token.

 

我们fix了用户v,并且量化了在token访问的时候,用户u有多少私人数据泄漏给用户v。对v的访问次数遵循二项式定律我们可以用Nv,以(无偏性:估计参数的期望为他的真实值)的概率bound住(采用切比雪夫)。在两次访问v之间,行走的步数遵循参数1-1/n的几何定律。我们区分小于根号n/2的小循环和较大的循环。利用霍夫丁不等式,通过我们bound的了小循环的数量,而且对于每一个小循环的隐私损失最多为。对于较大的循环,the contribution of u is aggregated with at least √ n/2 others, leading to a privacy loss of at most√2ε/n1/4 . 因为循环对于用户v是保密的,所以可以看作是在n-1个选择中替换根号n/2个用户用作下采样(subsampling)。用采样方法去bound隐私损失。

4.2离散直方图计算 

4.3使用随机梯度下降做优化 (不看)

5 Experiments

理论界限的比较。我们数值计算了定理3对于实求和任务(算法3)的理论边界,并将其与局部DP进行了比较。回想一下,用户贡献的数量是随机的(期望值为T /n)。因此,为了提供网络DP和本地DP之间的公平比较,我们推导了一个类似定理3的本地DP,我们使用相同的Chernoff界来控制用户贡献的数量,并使用高级合成来衡量总的隐私损失。此外,为了隔离贡献数量的影响(这在网络DP和本地DP中是相同的),我们还报告了在假设每个用户贡献固定次数T /n下得到的边界。图1a绘制了变化n的边界的值。我们看到,当n > 100时,我们的理论结果提供了与局部DP相比的增益,并且这些增益随着n的增加变得越来越显著。我们注意到,在每个用户贡献的固定数量下获得的曲线也表明,在边界内更好地控制Nv可以使我们的放大结果明显更紧凑。 

经验行为的差距。我们的形式分析包括控制用户贡献的数量,以及使用集中不等式控制周期的大小,这导致了一些近似。然而,在实际部署中,可以使用这些数量的实际值来计算隐私损失。因此,我们研究了我们的理论隐私保障和通过运行随机walk的模拟可以在实践中获得的差距。具体来说,我们对大小为T = 100n的随机walk进行采样。然后,对每一对用户,根据实际行走的特点和高级组合机制计算隐私损失。我们在10次随机漫步中重复这个实验,然后我们可以报告在所有用户对和所有随机运行中观察到的平均、最好和最坏的隐私损失。图1b报告了基于高斯机制的真实求和情况下的经验结果,其中隐私以因子√m增长,其中m为元素聚集在一起的数量(即,我们观察到,网络DP实现的增益在实践中明显强于我们的理论边界保证(见图1a)。特别是,即使对于较小的n,增益也是显著的。这些结果再次表明,在我们的分析中还有改进的空间,例如诉诸于更好的集中界限。
我们对离散直方图计算进行了类似的实验,这些实验证实,通过去中心化来扩大隐私的经验收益对于这项任务也很重要,参见附录F。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/daxuan1881/article/details/121632035

智能推荐

shell判断字符串长度是否大于0_shell判断字符串长度大于10-程序员宅基地

文章浏览阅读7.9k次。shell判断字符串长度是否大于0:这个程序是一个简单的ssh下载程序:if [ -n “$1” ] //判断字符串$1长度是否大于0,then scp [email protected]:/home/wyz/sshdir/$1 .elseecho “Usage: $0 filename”fi-n判断字符串长度是否大于0,是的话返回真,注意变量要加"",例如 “$1”..._shell判断字符串长度大于10

关于java.util.concurrent.RejectedExecutionException: event executor terminated-程序员宅基地

文章浏览阅读1.6w次,点赞2次,收藏12次。多线程_java.util.concurrent.rejectedexecutionexception: event executor terminated

我现在发现小觅摄像头的ROS功能包就放在SDK里面,这不像realsense,SDK和功能包是分开的。_realsense sdk拍照-程序员宅基地

文章浏览阅读196次。我现在发现小觅摄像头的ROS功能包就放在SDK里面,这不像realsense,SDK和功能包是分开的。https://gitee.com/mynt/MYNT-EYE-S-SDK/blob/master/wrappers/ros/src/mynt_eye_ros_wrapper/package.xmlhttps://gitee.com/mynt/MYNT-EYE-S-SDKhttps://blog.csdn.net/sinat_16643223/article/de..._realsense sdk拍照

数据结构和算法——Huffman树和Huffman编码详解_huffman树,huffman编码-程序员宅基地

文章浏览阅读623次。Huffman树是一种特殊结构的二叉树,由Huffman树设计的二进制前缀编码,也称为Huffman编码在通信领域有着广泛的应用。在w..._huffman树,huffman编码

spring报错java.sql.SQLException: The server time zone value '�й���׼ʱ��' is unrecognized or represents_gradle :-程序员宅基地

文章浏览阅读388次。数据库的url后面添加&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC例如,完整代码为:url: jdbc:mysql://localhost:3306/test?characterEncoding=utf-8&useJDBCCompliant..._gradle :

电脑硬件——显卡_显卡分类-程序员宅基地

文章浏览阅读3.9k次,点赞20次,收藏86次。显卡的工作是负责画面的渲染和输出,例如你在玩一个大型游戏,CPU的工作是根据游戏预设的各种算法计算出接下来会发生什么,并折合成海量的数据发送给显卡,显卡再对这些数据进行计算,渲染成1帧1帧的图像,传输到显示器,从而将画面呈现在我们眼前,而且显卡是在实时计算渲染,所以对显卡性能的要求就非常高,因此这就是我们平常所说的你想打游戏,就得有一张好的显卡。而看视频就不一样了,视频资源是已经被计算好的数据,先看只负责简单处理再输出就可以了,不需要再自己计算。就类比写作业,玩游戏就是自己计算然后写在本子上,看视频就是抄作_显卡分类

随便推点

VS报错 error LNK2005: _DllMain@12 已经在 MSVCRTD.lib(dllmain.obj) 中定义 链接报错: 错误 33 error LNK2005: _DllMai_error lnk2005: _dllmain@12 已经在 msvcrtd.lib(dll_dll-程序员宅基地

文章浏览阅读593次。VS报错 error LNK2005: _DllMain@12 已经在 MSVCRTD.lib(dllmain.obj) 中定义链接报错:错误 33 error LNK2005: _DllMain@12 已经在 MSVCRTD.lib(dllmain.obj) 中定义 E:\客户问题\w_王鹏\EventLibTest_TibrvAlternative_Mult_error lnk2005: _dllmain@12 已经在 msvcrtd.lib(dll_dllmain_stub.obj) 中定义

openpyxl报错:OSError: File contains no valid workbook part-程序员宅基地

文章浏览阅读7.9k次,点赞6次,收藏5次。raise IOError("File contains no valid workbook part")OSError: File contains no valid workbook part原因:用openpyxl 模块读取了xls格式的excel,或者读取的是xls文件通过改变后缀变成xlsx格式的文件解决:重新创建xlsx的文件..._file contains no valid workbook part

dbeaver orcale数据库批量插入报错([933] ORA-00933: SQL 命令未正确结束)_dbeaver批量执行insert语句报错-程序员宅基地

文章浏览阅读2k次。([933] ORA-00933: SQL 命令未正确结束。_dbeaver批量执行insert语句报错

提高错误日志处理效率!使用Python和钉钉机器人实现自动告警聚合_python 钉钉告警-程序员宅基地

文章浏览阅读1.8k次。本博客,为我们构建了一个完整的应用日志监控和告警系统,通过ELK技术栈和钉钉机器人的结合,使得我们能够及时发现和处理应用中的错误,提高了团队的工作效率和系统的稳定性。_python 钉钉告警

SpringCloud集成Feign报错:feign.FeignException$NotFound: status 404 reading UserFeign#userList()_fserviceclient-程序员宅基地

文章浏览阅读1.2k次。解决方式 第一百度看看是不是你得路径写错了第二 客户端 中@FeignClient(contextId="fServiceClient",value=ServiceNameConstants.DEMO_SERVICE) 注解value得值必须是你要访问得 那个客户端标题是借别人得 内容是自己遇到得 网上一搜索全是请求路径不对 反复验证了路径 全对就是请求不到,因为自己没有springcloud 知识 (每日一问啥时候学)所以正常知道springcloud 知识得人不会遇..._fserviceclient

oracle 查询是否包含某字符串_oracle包含某个字段-程序员宅基地

文章浏览阅读7.9k次,点赞4次,收藏9次。1、like 2、contains 3、instr 4、regexp_like_oracle包含某个字段

推荐文章

热门文章

相关标签