international conference on artificial intelligence and statistics

Summary
  • 当前机器学习模型训练中存在着数据隐私保护问题,所以作者提出了FL概念。通过分布式+隐私保护进行训练模型。对不平衡、non-IID的数据也更合适。

  • 主要提出了FedSGD和FedAvg算法。FedAvg通信代价要小于FedSGD

  • 实验中使用了MNIST数字识别和语言模型,通过改变E和B(client本地训练的轮次、每次训练小批量数据的size)来探究最优的E和B,而且在non-IID和IID两种数据中都进行了相关实验。

Problem and Background
  • 目前我们拥有的一些设备(手机、PC)具有一定的算力,也可以接触到大量的包含个人隐私的数据。而且这些数据相较于传统的分布式学习是unbalanced and non-IID。每个client的数据肯定是不同规模,不同倾向的。
  • 所以我们希望提出一种模型训练的方法,可以在不同的设备上利用本地隐私数据进行模型训练。
Contributions
  • 提出Federal Learning这一概念。可用于人工智能隐私保护和安全多方计算。
  • FedAvg算法有一定的实用性,用于unbalanced and non-IID dataset,可以用较少的通信轮次获取不错的训练模型。
Method
  • FedSGD and FedAvg

    • C-fraction of clients on each round

    • E-本地客户端训练local data的次数

    • B-训练时本地数据小批量的大小,就是每次训练用多少数据。当B无穷大就代表每次训练本地的所有数据都要用。

    • 当B无穷大,E为1的时候,就是用所有数据每轮训练一次,那就是FedSGD Algorithm。

    • - fedsgd:client发送给server的是g(梯度) - fedavg:client直接用g求出要更新的ω发送给server。
  • algorithm 1 FedAvg

    • 其中服务器平均更新的权重是每个client的数据集占总的数据集的比重。(但是这里有client谎报自己的数据集怎么办,让自己用比较少的dataset占大的比重)
Experimental
  • MNIST digit recognition

    • MNIST 2NN

      • 具有2个隐藏层的多层感知器,每个层使用ReLu激活200个单元(总计199,210个参数)
    • CNN
      • CNN有两个5x5卷积层(第一个有32个通道,第二个有64个,每个都有2x2个最大池化),一个有512个单元和ReLu激活的完全连接层,以及一个最终的Softmax输出层(总参数为1,663,370)。
    • 两种数据分发方式:IID and non-IID
      • IID
        Each client随机获得600样例。
      • non-IID
        将用例按数字先分好类,再分成300size的200份。最后每个client只有两个数字的样例。
  • Language Modeling
    • dataset:莎士比亚作品集
    • 为作品集中所有说话的角色建立一个client,共1146个。将每个client的数据集八二分,80用于训练,20用于测试。与MNIST数据集不同的是这个每个client的数据是不平衡的,就是训练可用数据多少不同。
    • 该模型将一系列字符作为输入,并将每个字符嵌入到学习的 8 维空间中。然后通过 2 个 LSTM 层处理嵌入的字符,每个层有 256 个节点。最后,第二个 LSTM 层的输出被发送到 softmax 输出层,每个字符一个节点。完整模型有 866,578 个参数,我们使用 80 个字符的展开长度进行训练。
  • Result
    • 论文中讲解了相关实验的结果,主要研究了当B和E变化时对实验的影响,当B为10,E为5的时候效果比较好,因为B正无穷,E为1的时候就成立FedSGD。
Related Knowledge
  • SGD

    • 利用梯度觉得接下来迭代的方向,使代价函数越来越小。

    • SGD为随机梯度下降法。用数学式可以将 SGD 写成如下的式(6.1)。

      这里把需要更新的权重参数记为W,把损失函数关于W的梯度记为 ∂L/∂W 。η ηη 表示学习率,实际上会取 0.01 或 0.001 这些事先决定好的值。式子中的←表示用右边的值更新左边的值。
      ————————————————
      版权声明:本文为CSDN博主「赵孝正」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
      原文链接:https://blog.csdn.net/weixin_46713695/article/details/123198293

    • import matplotlib.pyplot as plt
      #一元四次函数 f(x) = x^4 - 3x^3+2
      xold = 0
      xnew = 6#误差
      eps = 0.00002
      #步长,学习率
      alpha = 0.01
      #function
      x = []
      y = []
      plt.title="TrendofSGD"
      plt.xlabel('x')
      plt.ylabel('y')def f(x):return x ** 4 - 3 * x ** 3 + 2
      def f_prime(x):#倒数return 4 * x ** 3 - 9 * x ** 2
      while abs(f(xold)-f(xnew)) > eps:xold = xnewxnew = xold - alpha * f_prime(xold)x.append(xnew)y.append(f(xnew))plt.scatter(xnew,f(xnew))plt.pause(0.2)
      plt.plot(x,y)
      plt.show()
      print(x)
      print("Result:",xnew,f(xnew))
      
  • 卷积层

    • (10 条消息) 如何通俗易懂地解释卷积? - 知乎 (zhihu.com)
    • (27条消息) 卷积层详述_Zeus_dad的博客-CSDN博客_卷积层
  • 池化

    • 池化 | 机器之心 (jiqizhixin.com)
  • 完全连接层

    • CNN 入门讲解:什么是全连接层(Fully Connected Layer)? - 知乎 (zhihu.com)
  • ReLu activation

    • 原来ReLU这么好用!一文带你深度了解ReLU激活函数! - 知乎 (zhihu.com)
    • 考虑输入输出及数据变化来选择用什么激活函数
  • softmax output

    • [(27条消息) 神经网络中的softmax层为何可以解决分类问题——神经网络之softmax(3)_石头1666的博客-CSDN博客_softmax分类层](

Communication-Efficient Learning of Deep Networks from Decentralized Data相关推荐

  1. 联邦学习笔记—《Communication-Efficient Learning of Deep Networks from Decentralized Data》

    摘要: Modern mobile devices have access to a wealth of data suitable for learning models, which in tur ...

  2. 阅读笔记(Communication-Efficient Learning of Deep Networks from Decentralized Data)

    阅读笔记(Communication-Efficient Learning of Deep Networks from Decentralized Data) 动机 联邦平均 实验结果 MINIST优 ...

  3. 《Communication-Efficient Learning of Deep Networks from Decentralized Data》论文阅读

    4.29 天气:阴. 看论文看不懂,所以找回来这篇经典的FedAvg看看. AISTATS 2017. <Communication-Efficient Learning of Deep Net ...

  4. 论文笔记 Communication-Efficient Learning of Deep Networks from Decentralized Data

    论文题目:<Communication-Efficient Learning of Deep Networks from Decentralized Data> 时间:联邦学习由谷歌在20 ...

  5. 联邦学习开山之作:Communication-Efficient Learning of Deep Networks from Decentralized Data 带你走进最初的联邦学习 论文精读

    原文链接:Communication-Efficient Learning of Deep Networks from Decentralized Data (mlr.press) 该论文是最早提出联 ...

  6. Communication-Efficient Learning of Deep Networks from Decentralized Data 论文笔记

      本文出自论文Communication-Efficient Learning of Deep Networks from Decentralized Data,本文提出了一种基于迭代模型平均的深层网 ...

  7. 【FL论文阅读】Communication-Efficient Learning of Deep Networks from Decentralized Data

    一.Intro 对于Federated Optimization来说,其同传统Distributed optimization问题有下面几点区别 a. 数据非独立同分布Non-IID,对于任意特定节点 ...

  8. 联邦学习学习笔记——论文理解《Communication-Efficient Learning of Deep Networks from Decentralized Data》

    Google - Federated Learning

  9. Communication-Efficient Learning of Deep Networks form Decentralized Data

    引入: 传统数据训练方式,用户将本地数据提交给可信云服务器进行统一集中并训练:①如何保证用户本地数据的隐私性? ②如何保证计算成本和通信开销? 联邦学习的提出,可以较好地解决上述问题. 背景介绍: 分 ...

最新文章

  1. 服务器何时取得客户端信息,HttpRequest获得服务端和客户端的详细信息
  2. 诺奖得主克鲁格曼:比特币是庞氏骗局,但不一定很快走向崩溃
  3. IBM挺进云计算 自家内采用私有云模式
  4. windows与linux网络设置(host-only)
  5. 简练软考知识点整理-控制成本过程
  6. 卷积神经网络流程图_基于卷积神经网络的叶片气孔自动计数方法
  7. C++ MFC WebBrowser 探索(二)
  8. C#中的Json的序列化和反序列化
  9. 操作系统源代码_计算机自制操作系统(八):仿生DOS操作系统源代码
  10. mongodb update ()命令
  11. Atitit 编程语言语言规范总结 语法部分 目录 1. 语言规范 3 2. Types 3 2.1.1. Primitive types 3 2.1.2. Compound types 4 3.
  12. java孢子进化_孢子进化论游戏
  13. AI量化交易(一)——量化交易简介
  14. Linux 通配符 与 正则表达式 的区别与详解
  15. Android面试总结
  16. Codevs1378选课题解
  17. R 运行中文文件使乱码的解决方案(案例示例)
  18. MATLAB代码实现二次多项式曲线拟合
  19. JavaScript的字符串去空格
  20. 2022年计算机四级考试冲刺试题及答案(多选题)

热门文章

  1. 编程c语言庄子天下篇,庄子·天下篇.PDF
  2. WordPress安装部署
  3. 程序员如何快速入门?
  4. 微软副总裁尤瑟夫·梅赫迪对必应和“病”同音的解释
  5. 软件工程本科毕设:基于图像的火灾检测
  6. Oracle12c安装出现Failed to Create oracle Oracle Home User的解决方案
  7. 计算机毕业设计net-在线花店系统
  8. 计算机专业的中职论文,中职计算机专业论文毕业论文
  9. 1,kivy和Beeware哪个好用,实战后的选择
  10. 我的世界java联机_我的世界联机教程(Java)