联邦学习+差分隐私项目记录

原文:个人主页原文

本项目为联邦学习+差分隐私的实现(暂且记为myFed)。支持同步、异步、半异步(默认)机制。

项目仓库:https://github.com/yunsaijc/Federated-Learning-and-Differential-Privacy

本代码基于以下仓库实现:https://github.com/wenzhu23333/Differential-Privacy-Based-Federated-Learning

主要参考文献:

FedSA: A Semi-Asynchronous Federated Learning Mechanism in Heterogeneous Edge Computing

Federated Learning With Differential Privacy: Algorithms and Performance Analysis

重要参数定义与说明

M		//每一轮参与全局训练的客户数量
N		//客户数量
K		//全局更新的轮数
tau		//陈旧度
epsilon		//隐私预算

项目目的

本项目主要目的是学习理解联邦学习的工作过程。探究联邦学习加上差分隐私后的效果;同时考察在半异步机制下,不同M值对于准确率和收敛时间带来的影响。

项目结构

项目文件结构及说明如下:

myFed
│  myFed.py		//项目main文件
│  requirements.txt	//依赖包与版本
│
├─data		//存放数据集文件
├─log		//代码运行记录
├─models	//网络模型相关文件
│  │  Fed.py        //全局更新函数
│  │  Nets.py       //网络模型定义函数
│  │  test.py       //测试准确率函数
│  │  Update.py     //本地更新函数
│
├─utils		//存放一些使用到的函数
│  │  dataset.py            //数据集有关函数
│  │  dp_mechanism.py       //与dp有关的函数
│  │  Functions.py          //其他函数
│  │  language_utils.py     //与特定语言模型有关的函数
│  │  options.py            //命令行参数设置函数
│  │  sampling.py           //数据集划分函数

实验设置

本项目进行了多次实验。各个实验设置如下:(数据分布:IID/Non-IID;数据集:MNIST/CIFAR-10)

  1. 半异步机制联邦学习+差分隐私,设置不同N值。
  2. 半异步机制联邦学习+差分隐私,设置不同M值。
  3. 五种机制对比:myFed, FedSA, FedAsync, FedAP, FedAF;

实验结果分析

1. 设置不同N值

在不同的N值之下,各个客户端陈旧度的最大值随着N值的增大而增加。如下图所示:

2. 设置不同M值

令N的值固定,变量为M的值。在IID数据集下的实验结果如下图所示(图例中的值为 M N \frac{M}{N} NM)。可以发现,当M的值较小时,收敛速度更快,并且准确率也有略微的领先。

在这里插入图片描述

在Non-IID数据集下的实验结果如下图所示。可以发现,当数据分布为Non-IID时,仍然是M的值较小时,准确率上升地更快;但是M较小时的准确率波动程度较大,甚至会无法收敛;而M的值较大时虽然准确率上升更慢,但准确率是较为稳定,并且能够收敛的。

在这里插入图片描述

3. 五种机制对比

本实验将myFed(半异步), FedSA(半异步), FedAsync(异步), FedAP(同步), FedAF(同步)五种机制的性能进行了对比。

MNIST数据集,IID分布下。

MNIST数据集,Non-IID分布下。

CIFAR-10数据集,IID分布下。

CIFAR-10数据集,Non-IID分布下。

在这里插入图片描述

参考

Q. Ma, Y. Xu, H. Xu, Z. Jiang, L. Huang and H. Huang, “FedSA: A Semi-Asynchronous Federated Learning Mechanism in Heterogeneous Edge Computing,” in IEEE Journal on Selected Areas in Communications, vol. 39, no. 12, pp. 3654-3672, Dec. 2021, doi: 10.1109/JSAC.2021.3118435.

K. Wei et al., “Federated Learning With Differential Privacy: Algorithms and Performance Analysis,” in IEEE Transactions on Information Forensics and Security, vol. 15, pp. 3454-3469, 2020, doi: 10.1109/TIFS.2020.2988575.

https://blog.csdn.net/qq_36018871/article/details/121361027

https://zhuanlan.zhihu.com/p/263959892?utm_source=wechat_session

https://blog.csdn.net/m0_54487794/article/details/121674633

https://blog.csdn.net/wenzhu2333/article/details/124556920?spm=1001.2014.3001.5501

https://zhuanlan.zhihu.com/p/348290670

https://blog.csdn.net/Lyn_S/article/details/119661088

https://www.zhihu.com/question/354819140

https://zhuanlan.zhihu.com/p/142597513

https://blog.csdn.net/qq_41769289/article/details/87694955

https://blog.fangzhou.me/posts/20190224-gradient-descent/#l-smooth-and-%CE%BC-strongly-convex-function

https://blog.fangzhou.me/posts/20190217-convex-function-lipschitz-smooth-strongly-convex/#strongly-convex

https://blog.csdn.net/qsczse943062710/article/details/76423509

https://blog.csdn.net/qq_42589613/article/details/110296048

https://blog.csdn.net/PanYHHH/article/details/107361827

https://zhuanlan.zhihu.com/p/40761721

  • 24
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
联邦学习场景下引入差分隐私技术可以达到数据隐私保护的目的。联邦学习是一种分布式机器学习方法,其中多个客户端训练各自的本地模型,并将本地模型的更新上传到中央服务器进行聚合。差分隐私技术在这个过程中起到了保护数据隐私的作用。 具体来说,差分隐私技术通过在本地客户端对参数进行裁剪和在服务端对聚合结果添加噪音的方式,使得用户无法从输出数据中区分数据是来源于哪个客户端的。这样一方面保证了每一个客户端的本地数据隐私安全,另一方面也保证了客户端之间的信息安全,即不能推断出某个客户端是否参与了当前的训练。这种结合的算法被称为DP-FedAvg算法,它将联邦学习中经典的Federated Average算法和差分隐私技术相结合。通过这种方式,联邦学习差分隐私的结合既能够充分利用分布式数据进行模型训练,又能够保护数据的隐私安全。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [联邦学习差分隐私案例](https://download.csdn.net/download/unseven/88228872)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [联邦学习安全防御之差分隐私](https://blog.csdn.net/wutianxu123/article/details/124092828)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值