总结二
近期工作
1.工作细化
在前两周的学习以及讨论过程中,逐渐对于我们项目的总体概况有了更加深刻的认识,作为小组的组长,我在最近给出了项目第一部分具体分工的初步方案,如下图。
上述分工结合了每个人擅长的领域,同时为了保证最后成绩的公平性,每个人的工作基本上是大致一样的,即使出现少许偏差,可以在随后的项目第二阶段进行进一步的调整。
2.论文学习
这周我们小组统一组织了阅读一篇较为经典的联邦学习的论文以及相关的代码,以此更为深刻的认识联邦学习的具体内容。论文及代码如下图。
论文使用了比较经典的mnist手写数字数据集,将代码分为了训练端的实现、模型的实现、数据的读取以及聚合端的实现,原论文使用的tensorflow架构,我们将其转化为目前较为流行的pytorch架构并将其运行成功。
论文中主要介绍了如果训练轮次较少,整个聚合过程的大部分开销将集中于数据传输过程中,通过增大训练端的训练轮次,可以提升整个聚合的效率。
总结
通过这两周的学习,将之前搭建的框架进行了补充,对于联邦学习的内容有了更深一步的认识;同时与同学的探讨过程,也让我明白了团队协作的重要性,通过与同学的讨论,弥补了一些设计上的缺陷,例如客户端前端进行模型训练的请求是传数据还是传初步模型文件的问题上,后来我们经过讨论得出是传初步模型文件,因为如果数据量太大,整个过程就会变得十分漫长。