论文阅读------Stochastic Gradient Descent with Differentially Private updates
论文阅读------Stochastic Gradient Descent with Differentially Private updates
- SGD
- 代价函数
- 正则化描述
- 训练过程
- 梯度偏导
- 参数更新
- 批次更新
- 差分隐私SGD
- 条件
- 动态调节
- 实验
- 比较批次与数据数量
- 比较批次与学习率
SGD
代价函数
对于不同批量数量不一的数据,使用相同的代价函数求和进行激励计算,具体的函数描述为:1n∑i=1nl(w,xi,yi)\frac{1}{n}\sum_{i=1}^n l(w,x_i,y_i)n1∑i=1nl(w,xi,yi)
正则化描述
使用范式对其进行正则化,分为L1L1L1正则化与L2L2L2正则化,于是对w进行正则化后得到的结果为:(使用的是L2L2L2正则化)
w∗=λ2∣∣w∣∣2+1n∑i=1nl(w,xi,yi)w^*=\frac{\lambda}{2}||w||^2+\frac{1}{n}\sum_{i=1}^n l(w,x_i,y_i)w∗=2λ∣∣w∣∣2+n1∑i=1nl(w,xi,yi)
这里的λ\lambdaλ为正则化参数,w∗w^*w∗为在损失函数约束下的L2L2L2正则化。
训练过程
目标是让代价函数最小,于是具体的过程为:
min(1n∑i=1nl(w,xi,yi))\min(\frac{1}{n}\sum_{i=1}^n l(w,x_i,y_i))min(n1∑i=1nl(w,xi,yi))
加上w的正则化后,训练过程为:
min(λ2∣∣w∣∣2+1n∑i=1nl(w,xi,yi))\min(\frac{\lambda}{2}||w||^2+\frac{1}{n}\sum_{i=1}^n l(w,x_i,y_i))min(2λ∣∣w∣∣2+n1∑i=1nl(w,xi,yi))
梯度偏导
原先的梯度求法为直接求取:
▽l(w,xi,yi)\bigtriangledown l(w,x_i,y_i)▽l(w,xi,yi)
L2L2L2正则化之后的梯度还需要对正则参数那部分求导:
λw+▽l(wt,xi,yi)\lambda w+\bigtriangledown l(w_t,x_i,y_i)λw+▽l(wt,xi,yi)
参数更新
一般的参数更新:
wt+1=wt−ηt▽l(wt,xi,yi)w_{t+1}=w_t-\eta_t\bigtriangledown l(w_t,x_i,y_i)wt+1=wt−ηt▽l(wt,xi,yi)
正则化之后的参数更新:
wt+1=wt−ηt(λwt+▽l(wt,xi,yi))w_{t+1}=w_t-\eta_t(\lambda w_t+\bigtriangledown l(w_t,x_i,y_i))wt+1=wt−ηt(λwt+▽l(wt,xi,yi))
批次更新
批次是原先数据样本的均匀采样,通过批次样本来表示全体目标,具体的更新为:
wt+1=wt−ηt(λwt+1b∑Bt▽l(wt,xi,yi))w_{t+1}=w_t-\eta_t(\lambda w_t+\frac{1}{b}\sum_{B_t}\bigtriangledown l(w_t,x_i,y_i))wt+1=wt−ηt(λwt+b1∑Bt▽l(wt,xi,yi))
BtB_tBt为具体的批次,其数量为b。
差分隐私SGD
差分隐私在原先的梯度上添加噪声来实现差分隐私,具体的噪声服从分布:e−α2∣∣z∣∣e^{-\frac{\alpha}{2}||z||}e−2α∣∣z∣∣,或与其成正比。
于是SGD的更新为:
wt+1=wt−ηt(λwt+▽l(wt,xi,yi)+Zt)w_{t+1}=w_t-\eta_t(\lambda w_t+\bigtriangledown l(w_t,x_i,y_i)+Z_t)wt+1=wt−ηt(λwt+▽l(wt,xi,yi)+Zt)
相应的批次更新为:
wt+1=wt−ηt(λwt+1b∑Bt▽l(wt,xi,yi)+1bZt)w_{t+1}=w_t-\eta_t(\lambda w_t+\frac{1}{b}\sum_{B_t}\bigtriangledown l(w_t,x_i,y_i)+\frac{1}{b}Z_t)wt+1=wt−ηt(λwt+b1∑Bt▽l(wt,xi,yi)+b1Zt)
条件
如果w0w_0w0的初始化选择是与数据无关的,并且批次的划分是不相交的,并且限制梯度的一阶范数∣∣▽l(wt,xi,yi)∣∣≤1||\bigtriangledown l(w_t,x_i,y_i)||\le1∣∣▽l(wt,xi,yi)∣∣≤1,则对应的SGD是满足α−\alpha-α−差分隐私的。
相应的证明需要结合每次更新的全局敏感度是2ηtb\frac{2\eta_t}{b}b2ηt,并且相应的隐私并未因批次采样而受到影响,因为采样的数据之间是互不相交的。
动态调节
每一次批次训练中,都会有一个隐私参数α\alphaα,对应的在训练的不同批次中,可以动态的调节α\alphaα的值,进而调节噪声分布,以实现不同程度的差分隐私。
实验
比较批次与数据数量
批次内数据的数量增加后,相应的隐私保护与非隐私保护之间的差别明显减小,并且大批量的数据具有更好的效率。
(横轴为迭代次数,纵轴为观察的目标值)
比较批次与学习率
批次产生的影响是随着数量增加先增后减。不同的学习率产生的影响也不同,1t\frac{1}{\sqrt{t}}t1优于10t\frac{10}{\sqrt{t}}t10。
(横轴为迭代次数,纵轴为观察的目标值)
论文阅读------Stochastic Gradient Descent with Differentially Private updates相关推荐
- 论文笔记——Asynchronous Decentralized Parallel Stochastic Gradient Descent
论文笔记--Asynchronous Decentralized Parallel Stochastic Gradient Descent 改变了中心化的结构,使用了分布式的结构 算法过程 每个wor ...
- 论文笔记——Asynchronous Stochastic Gradient Descent with Delay Compensation
论文笔记--Asynchronous Stochastic Gradient Descent with Delay Compensation 论文对ASGD算法进行了改进,对具有延迟的梯度设计了新的更 ...
- 【文献阅读】Federated Accelerated Stochastic Gradient Descent
文章目录 1 Federated Accelerated Stochastic Gradient Descent (FedAc) 2 challenge 3 how to do 4 baseline ...
- UA MATH567 高维统计专题3 含L1-norm的凸优化6 Stochastic Gradient Descent简介
UA MATH567 高维统计专题3 含L1-norm的凸优化6 Stochastic Gradient Descent简介 Stochastic Gradient Descent的思想 Varian ...
- 随机梯度下降(Stochastic gradient descent)和 批量梯度下降(Batch gradient descent )的公式对比、实现对比
随机梯度下降(Stochastic gradient descent)和 批量梯度下降(Batch gradient descent )的公式对比.实现对比 标签: 梯度下降最优化迭代 2013 ...
- 【Byrd-SAGA】Federated Variance-Reduced Stochastic Gradient Descent with Robustness
Federated Variance-Reduced Stochastic Gradient Descent with Robustness to Byzantine Attacks 对拜占庭攻击具有 ...
- Minibatch Stochastic Gradient Descent
Reference: https://d2l.ai/chapter_linear-networks/linear-regression.html https://d2l.ai/chapter_line ...
- 随机梯度下降(Stochastic gradient descent)
总目录 一. 凸优化基础(Convex Optimization basics) 凸优化基础(Convex Optimization basics) 二. 一阶梯度方法(First-order met ...
- 手工实现:SVM with Stochastic Gradient Descent
手工实现:SVM with Stochastic Gradient Descent 引入 实际问题 理论知识 SVM 直观认识 什么是分的好? 1.是不是只要都分对了就是分的好? 2.是不是只要训练集 ...
最新文章
- 给脚本添加可执行权限,并执行脚本 转
- Understanding the Behaviour of Contrastive Loss理解对比损失的性质以及温度系数的作用
- Why Java Sucks and C# Rocks(3):Attribute与Annotation
- python入门——条件语句、for、while循环4
- python有什么优点_Python是什么?有什么优点?赶紧来看看Python的入门教程
- 让32位Eclipse和64位Eclipse同是在64的Windows7上运行
- jitpack让使用第三方依赖库更简单
- updatebyprimarykeyselective怎么更新某个字段为null_一千个不用 Null 的理由
- 2-4MySQL数据库安装与初始化
- brew 安装php7.1.6_mac上通过brew安装php7
- WordPress 下载量最高的十个插件
- SQL文件示例(Mysql)
- list集合去重和排序
- 项目文件3 项目范围说明书、项目团队派工单、质量控制测量结果、质量测量指标、质量报告、需求文件、需求跟踪矩阵、 资源分解结构
- esxi安装系统ndows,ESXI 安装 Windows Server 2012过程
- 服务器运维实习周记,设备维护实习周记 - 实习周记 - 书业网.doc
- JavaDay14-球员管理项目
- matlab中的图片输出和设定
- VLC媒体播放器Web插件详细说明
- 作为一名视觉工程师该怎么学习?
热门文章
- 使用MobileViT替换YOLOv5主干网络
- 基于局部平面拟合的法向估计
- 怎样把游戏从计算机卸载了,电脑桌面上的游戏怎么卸载,电脑桌面上的游戏怎么卸载?...
- java货郎担问题求解_货郎担问题的四种实现方法
- python14 Prompting and Passing
- 产品狗观世界:谈装修
- 计算机上如何保存ico格式,ico是什么文件?ico文件怎么生成?
- TKDragView_iOS开发常用第三方开源框架 持续更新中...
- Ubuntu11.04中文输入法的安装(IBus-pinyin
- 2023年华中科技大学新闻传播专硕考研上岸前辈备考经验指导