Shusen Wang老师的课:B站BV1YK4y1G7jw
联邦学习(Federated learning,FL)
1. 什么是FL?
FL是分布式学习(Distributed learning, DL)的一种。用生活中的一个例子来说明:
用户使用Google提供的手机App拍摄了很多照片,这些App会收集用户的照片。Google想建立一个机器学习模型,必须使用用户端的数据作为训练集。但是用户通常不愿意将包含了自己隐私的照片传到云上供Google使用。
但是FL与DL的区别有如下几点:
第一,FL的worker可以控制自己的设备和数据。DL:Sever对worker有绝对的控制权。
第二,FL的worker nodes不稳定,对DL造成麻烦。例如,有的用户用Iphone7,有的用户用Iphon12,worker nodes计算速度差异大。
第三,FL的通讯成本远高于计算成本。例如用户设备与服务器不在一个国家,传输是个问题。
第四, FL的输入数据是non-IID的。FL是不能假设输入数据是IID的。
第五,FL的节点负载是不平衡的。例如,有的用户一天拍5张照片,有的用户一天拍500张照片,那么计算时间差别很大。
2. FL的研究方向
由于“1”中的“第二”“第三”,故FL的研究方向如下:
2.1 通讯效率
2.1.1 Federated Averaging (FedAvg)
FedAvg 算法就属于2.1。FedAvg不是把梯度传给server,而是把worker nodes 本地计算得到的参数模型传给server。
上面右图中的w是多个\tidle{w_i}的平均值,故这个算法叫Averaging.
2.1.2 Shusen Wang 提到的几篇与通讯效率有关的论文
2.2 隐私保护
由于梯度/随机梯度是用Batch计算得到的,所以还是有泄露隐私的风险。因为我们知道,梯度携带了输入数的信息,是可以推出输入数据的。例如,训练数据为用户肖像,那么可以反推出用户的性别、人种等信息。故,FedAvg也无法避免。
有论文提出可以利用在Gradient中加噪声来避免泄露隐私。Shusen Wang认为,噪声加的不够强,没用;加太强,学习过程中的loss不往下降,也是个问题。
2.2.2 Shusen Wang 提到的几篇与隐私保护有关的论文
2.3 Adversarial robustness
利用拜占庭将军问题来解释,也就是队伍中出现了一个叛徒,那么FL中也存在相同问题。
2.3.1 攻击类
2.3.2 防御类
Differential privacy 学习效率慢,牺牲了准确率。若准确率下降了几个百分点,那么工业上谁会用?
2.3.3 Shusen Wang 提到的几篇与攻击和防御有关的论文
Shusen Wang 的观点
Attack 1:Shusen Wang认为本文不错。本文将部分训练数据做了一些修改,这些修改是精心设计出来的扰动。加了扰动后,图片样本就成为了毒药,这样可以让sever上的模型犯某个错误。
Attack 2: Shusen Wang不怎么喜欢。
Defense 1: Sever检查worker传回的梯度,但Shusen Wang认为没有什么用。因为Sever是不能看到数据的,即使worker是诚实的,单个worker算出来的梯度也会让accuracy下降。只有把所有worker的平均起来更新模型参数,才会使得accuracy变得更好。
Defense 2:本文认为若某个worker传回的梯度与其他不同,则可能有问题。但是这个是有问题的,因为输入数据都是non-IID的。
Defense 3:它的假设也是数据是IID,不成立。
3. FL的挑战
挑战一:non-IID data
挑战二:通讯很慢
目标:jointly learn a mode without sharing data
4. Shusen Wang目前的工作
用随机矩阵变换组织反向推断输入数据。