FLgo学习

https://github.com/WwZzz/easyFL

安装:pip install flgo numba

作者:https://zhuanlan.zhihu.com/p/614218973

quick-start

python 复制代码
import flgo
import flgo.benchmark.mnist_classification as mnist
import flgo.benchmark.partition as fbp
import flgo.algorithm.fedavg as fedavg

# Line 1: Create a typical federated learning task
flgo.gen_task_by_(mnist, fbp.IIDPartitioner(num_clients=5), './my_task')
# Line 2: Running FedAvg on this task
fedavg_runner = flgo.init('./my_task', fedavg, {'gpu': [0,], 'num_rounds':20, 'num_epochs': 1})
# Line 3: Start Training
fedavg_runner.run()

# Show Training Result
import flgo.experiment.analyzer as fea
# Create the analysis plan
analysis_plan = {
    'Selector':{'task': './my_task', 'header':['fedavg',], },
    'Painter':{'Curve':[{'args':{'x':'communication_round', 'y':'val_loss'}}]},
}

fea.show(analysis_plan)

数据异构

  • diversity 类型
  • Dirichlet 分布

讨论两种数据异构类型,对训练准确率的影响

不知道为什么改 num_clients 就会报错,难道只能是100?

有时间再研究下代码

相关推荐
苏渡苇9 小时前
DeepSeek V4 实战:自然语言生成 SQL + 智能优化引擎
ai·springboot·spring ai·deepseek·ai推理·deepseek v4·自然语言生成sql
草履虫君9 小时前
若用wsL方式安装openclaw 就不需要安装win原生的node和git
经验分享·git·ai
程序员鱼皮9 小时前
小米送了我 16 亿 tokens,给我测爽了!手把手教你领取 | 附 Claude Code + MiMo-V2.5 实战测评
计算机·ai·程序员·编程·ai编程
秒云9 小时前
MIAOYUN | 每周AI新鲜事儿 260430
人工智能·ai·语言模型·aigc·ai编程
码途漫谈9 小时前
Easy-Vibe开发篇阅读笔记(十二)——后端开发之如何集成Stripe等收费系统
笔记·ai·开源·状态模式·ai编程
PM老周10 小时前
AI时代项目管理工具体验测评:功能效率协作与研发团队选型
ai·aigc·团队开发·ai编程
暮色念了红尘10 小时前
CC Switch — Ubuntu 20.04 可用版本
ubuntu·ai·rust·ubuntu 20.04·vibe coding·cc swich
Irissgwe10 小时前
LangChain之核心组件(消息与提示词模板)
人工智能·ai·langchain·llm·langgraph
码途漫谈10 小时前
Easy-Vibe开发篇阅读笔记(十三)——附录之用 Dify 搭建知识库问答系统
笔记·ai·开源·ai编程
AI进化营-智能译站10 小时前
Jazzy ROS2入门指南系列04-如何在ROS2中创建工作空间,怎么编译ROS2项目
ai