博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
本地差分隐私 随机响应_局部差分隐私实现的广义随机响应
阅读量:4964 次
发布时间:2019-06-12

本文共 866 字,大约阅读时间需要 2 分钟。

我的任务是实现本地(非交互式)差异隐私机制。我正在处理一个庞大的人口普查数据数据库。唯一敏感的属性是“子女数”,它是一个从0到13的数值。在

我决定采用广义随机响应机制,因为它似乎是最直观的方法。这个机制被描述为here和{a2}。在

在将每个值加载到一个数组中之后(暂时忽略其他属性),我执行如下扰动。在d = 14 # values may range from 0 to 13

eps = 1 # epsilon level of privacy

p = (math.exp(eps)/(math.exp(eps)+d-1))

q = 1/(math.exp(eps)+d-1)

p_dataset = []

for row in dataset:

coin = random.random()

if coin <= p:

p_dataset.append(row)

else:

p_dataset.append(random.randint(0,13))

除非我误解了这个定义,否则我相信这将保证p峎u数据集上的epsilon差异隐私。在

但是,我很难理解聚合器必须如何解释这个数据集。在上面的presentation之后,我尝试实现一个方法来估计回答特定值的个人数量。在

^{pr2}$

我不知道我是否正确地实现了所描述的方法,因为我不完全理解它在做什么,也找不到一个清晰的定义。在

不管怎样,我使用这个方法来估计数据集中的epsilon值从1到14回答每个值的个人总数,然后将其与实际值进行比较。结果如下(请原谅格式化)。在

c4dc8b62332c39058533e0d7141a074f.png

如您所见,epsilon值较低时,数据集的实用程序会受到很大影响。此外,当多次执行时,即使是小量epsilon值,估计值的偏差也相对较小。在

例如,当估计回答0的参与者数量时,使用epsilon为1,所有的估计值似乎都集中在1600左右,估计值之间的最大距离是100。考虑到这个查询的实际值是5969,我认为我可能实现了错误的东西。在

这是广义随机响应机制的预期行为,还是我在实现中犯了错误?在

转载地址:http://vwhhp.baihongyu.com/

你可能感兴趣的文章
编码总结,以及对BOM的理解
查看>>
九涯的第一次
查看>>
PHP5.3的VC9、VC6、Thread Safe、Non Thread Safe的区别
查看>>
Android中全屏或者取消标题栏
查看>>
处理器管理与进程调度
查看>>
页面懒加载
查看>>
向量非零元素个数_向量范数详解+代码实现
查看>>
java zip 中文文件名乱码_java使用zip压缩中文文件名乱码的解决办法
查看>>
java if 用法详解_Java编程中的条件判断之if语句的用法详解
查看>>
kafka的java客户端_KAFKA Producer java客户端示例
查看>>
java -f_java学习笔记(一)
查看>>
java 什么题目好做_用java做这些题目
查看>>
java中的合同打印_比较方法违反了Java 7中的一般合同
查看>>
php 位运算与权限,怎么在PHP中使用位运算对网站的权限进行管理
查看>>
php include效率,php include类文件超时
查看>>
matlab sin函数 fft,matlab的fft函数的使用教程
查看>>
wcdma下行如何解扩解扰 matlab,WCDMA技术基础.ppt
查看>>
MySQL date_format() 函数
查看>>
mysql 时间处理
查看>>
mysql adddate()函数
查看>>