【联邦学习框架FLGo学习】1安装和介绍

框架介绍

FLGo是联邦学习大佬开发和维护的一个联邦学习轻量级框架,原教程贴链接为手把手实战联邦学习
本贴主要是记录一下上手学习使用过程中遇到的一些问题。

项目地址:https://link.zhihu.com/?target=https%3A//github.com/WwZzz/easyFL/tree/FLGo
教程地址:https://link.zhihu.com/?target=https%3A//github.com/WwZzz/easyFL/tree/FLGo/tutorial
教程中有中英文教程,但好像更新不如知乎上及时,可以先去知乎专栏文章中学习,讲解的超级好

安装使用

安装

在教程中给出的安装方式是通过conda 进行pip,我是直接从github中将文件下载运行的。两种方式都行,在运行中要注意虚拟环境中各种库的版本问题,在使用FLGo之前,需要自行安装以下基本的库:numpy,pytorch,torchvision,scipy,numpy,matplotlib,prettytable。这些库对版本没有特殊要,网上配置教程较多,这里不再赘述。

在FLGo中还会用到一些额外的第三方库,这些库主要针对特定功能或算法的实现,比如cvxopt,pynvml等,可以等用到的时候再进行安装。

运行

在这里插入图片描述
作者给出了一个test展示使用fedAVG算法进行联邦训练

生成联邦任务

生成mnist的IID划分,人数为100人

import flgo.algorithm.fedavg as fedavg
import flgo.experiment.analyzer
import os
os.environ["KMP_DUPLICATE_LIB_OK"]="TRUE"
 #task为任务路径,可以自行定义,该目录将被视作一个联邦任务
task = './my_task'
# benchmark关键字指定的是数据集,
# partitioner关键字指定的是联邦学习数据集划分器
gen_config = {
   
    'benchmark':{
   'name':'flgo.benchmark.mnist_classification'},
    'partitioner':{
   'name':'IIDPartitioner', 'para':{
   'num_clients':100}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值