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?

有时间再研究下代码

相关推荐
张铁牛6 小时前
1. LangChain4j 初识,想使用Java开发AI应用?
ai·langchain4j
无声旅者8 小时前
n8n:解锁自动化工作流的无限可能
ai·自动化·oneapi·ai大模型·n8n
在荒野的梦想11 小时前
DeepSeek+SpringAI实现流式对话
java·ai
程序员鱼皮11 小时前
刚刚,Cursor 1.0炸裂发布!4大亮点实战
计算机·ai·程序员·互联网·软件开发
程序员鱼皮18 小时前
全球首个无限执行的 AI 出现!给我玩爽了
计算机·ai·互联网·agent·代码
要养家的程序猿1 天前
RagFlow优化&代码解析(一)
人工智能·ai
斯普信专业组1 天前
Cursor使用最佳实践总结
ai·cursor
MyikJ1 天前
Java面试实战:从Spring Boot到微服务与AI的全栈挑战
java·大数据·spring boot·微服务·ai·面试·架构设计
sg_knight2 天前
大模型连接万物的“万能插座”:深度解析模型上下文协议MCP
人工智能·ai·大模型·agent·ai大模型·mcp·模型上下文协议
俊哥V2 天前
AI一周事件(2025年5月27日-6月2日)
人工智能·ai