python实现差分隐私Laplace机制详解


Posted in Python onNovember 25, 2019

Laplace分布定义:

python实现差分隐私Laplace机制详解

下面先给出Laplace分布实现代码:

import matplotlib.pyplot as plt
import numpy as np
 
def laplace_function(x,beta):
 result = (1/(2*beta)) * np.e**(-1*(np.abs(x)/beta))
 return result
#在-5到5之间等间隔的取10000个数
x = np.linspace(-5,5,10000)
y1 = [laplace_function(x_,0.5) for x_ in x]
y2 = [laplace_function(x_,1) for x_ in x]
y3 = [laplace_function(x_,2) for x_ in x]
 
 
plt.plot(x,y1,color='r',label='beta:0.5')
plt.plot(x,y2,color='g',label='beta:1')
plt.plot(x,y3,color='b',label='beta:2')
plt.title("Laplace distribution")
plt.legend()
plt.show()

效果图如下:

python实现差分隐私Laplace机制详解

接下来给出Laplace机制实现:

python实现差分隐私Laplace机制详解

Laplace机制,即在操作函数结果中加入服从Laplace分布的噪声。

Laplace概率密度函数Lap(x|b)=1/2b exp(-|x|/b)正比于exp(-|x|/b)。

import numpy as np
 
def noisyCount(sensitivety,epsilon):
 beta = sensitivety/epsilon
 u1 = np.random.random()
 u2 = np.random.random()
 if u1 <= 0.5:
  n_value = -beta*np.log(1.-u2)
 else:
  n_value = beta*np.log(u2)
 print(n_value)
 return n_value
 
def laplace_mech(data,sensitivety,epsilon):
 for i in range(len(data)):
  data[i] += noisyCount(sensitivety,epsilon)
 return data
 
if __name__ =='__main__':
 x = [1.,1.,0.]
 sensitivety = 1
 epsilon = 1
 data = laplace_mech(x,sensitivety,epsilon)
 for j in data:
  print(j)

以上这篇python实现差分隐私Laplace机制详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
删除目录下相同文件的python代码(逐级优化)
May 25 Python
Python如何为图片添加水印
Nov 25 Python
攻击者是如何将PHP Phar包伪装成图像以绕过文件类型检测的(推荐)
Oct 11 Python
python使用PIL模块获取图片像素点的方法
Jan 08 Python
Python学习笔记之错误和异常及访问错误消息详解
Aug 08 Python
python实现图片二值化及灰度处理方式
Dec 07 Python
Python Pillow.Image 图像保存和参数选择方式
Jan 09 Python
Python pyautogui模块实现鼠标键盘自动化方法详解
Feb 17 Python
python opencv实现图片缺陷检测(讲解直方图以及相关系数对比法)
Apr 07 Python
通过自学python能找到工作吗
Jun 21 Python
Pytorch 中net.train 和 net.eval的使用说明
May 22 Python
python数字图像处理实现图像的形变与缩放
Jun 28 Python
python3实现弹弹球小游戏
Nov 25 #Python
python数据化运营的重要意义
Nov 25 #Python
python实现拉普拉斯特征图降维示例
Nov 25 #Python
python模块hashlib(加密服务)知识点讲解
Nov 25 #Python
Python3如何对urllib和urllib2进行重构
Nov 25 #Python
python pygame实现球球大作战
Nov 25 #Python
Python内置加密模块用法解析
Nov 25 #Python
You might like
第六节 访问属性和方法 [6]
2006/10/09 PHP
PHP 面向对象程序设计(oop)学习笔记 (二) - 静态变量的属性和方法及延迟绑定
2014/06/12 PHP
PHP SOCKET编程详解
2015/05/22 PHP
PHP+shell实现多线程的方法
2015/07/01 PHP
JavaScript 对象链式操作测试代码
2010/04/25 Javascript
jquery.bgiframe.js在IE9下提示INVALID_CHARACTER_ERR错误
2013/01/11 Javascript
node.js中的querystring.parse方法使用说明
2014/12/10 Javascript
jQuery带时间的日期控件代码分享
2015/08/26 Javascript
IE8兼容Jquery.validate.js的问题
2016/12/01 Javascript
Angularjs 与 bower安装和使用详解
2017/05/11 Javascript
vue+vuecli+webpack中使用mockjs模拟后端数据的示例
2017/10/24 Javascript
vue.js中npm安装教程图解
2018/04/10 Javascript
nodejs require js文件入口,在package.json中指定默认入口main方法
2018/10/10 NodeJs
el-table表头根据内容自适应完美解决表头错位和固定列错位
2021/01/07 Javascript
python实现的二叉树算法和kmp算法实例
2014/04/25 Python
Windows下Python使用Pandas模块操作Excel文件的教程
2016/05/31 Python
python学习之面向对象【入门初级篇】
2017/01/21 Python
django使用图片延时加载引起后台404错误
2017/04/18 Python
django限制匿名用户访问及重定向的方法实例
2018/02/07 Python
flask框架使用orm连接数据库的方法示例
2018/07/16 Python
Python实现端口检测的方法
2018/07/24 Python
Python实现的线性回归算法示例【附csv文件下载】
2018/12/29 Python
Python numpy线性代数用法实例解析
2019/11/15 Python
python 下载文件的多种方法汇总
2020/11/17 Python
flask项目集成swagger的方法
2020/12/09 Python
python基于Kivy写一个图形桌面时钟程序
2021/01/28 Python
HTML5 Canvas draw方法制作动画效果示例
2013/07/11 HTML / CSS
IWOOT美国:新奇的小玩意
2018/04/27 全球购物
Urban Decay官方网站:美国化妆品品牌
2020/06/04 全球购物
Java面试中常遇到的问题,也是需要注意的几点
2013/08/30 面试题
会计主管岗位职责范文
2013/11/08 职场文书
建筑工程管理专业自荐信范文
2013/12/28 职场文书
奥运会口号
2014/06/13 职场文书
阅兵口号
2014/06/19 职场文书
公司领导班子对照检查存在问题整改措施
2014/10/02 职场文书
小学见习报告
2015/06/23 职场文书