Split Learning在联邦自监督学习领域的应用


这篇论文是亚利桑那州立大学的Jingtao Li发表在ICLR2023上的,并接收为了Oral Paper,主要探讨联邦自监督学习在边缘设备上的解决方案。
题目:MocoSFL: enabling cross-client collaborative self-supervised learning
链接:https://openreview.net/pdf?id=2QGJXyMNoPz

研究背景

目前协作学习中,由于标记数据需要专业知识和时间投入,对于普通用户很难执行。针对目前协作学习中数据标注的难题,现有的方法是进行联邦自监督学习。

去年ICLR有一篇将联邦自监督的论文: https://openreview.net/forum?id=oVE1z8NlNe

利用发散感知聚合技术缓解了non-iid问题,并取得了SOTA精度。这种方法解决了企业数据孤岛的问题,但由于它对于计算资源以及本地数据量的严苛要求,因此很难实现跨用户的联邦自监督。

论文的思路:舍弃FedAvg框架,将Split Federated Learning(SFL)和Momentum Contrast(MoCo)对比学习技术,以实现低成本的跨用户联邦自监督学习。

先前的重要工作

Moco简介

BYOL、SimCLR 等方案使用当前 batch 中的其他样本作为负键(negative keys)来进行对比学习。与这些方案不同,MoCo(He2020CVPR [2])使用先前计算的正键输出作为负键,并将它们存储在特征内存中以供将来的迭代使用。这种存储负键的机制使得 MoCo 的 batch size 要求相对较小,有利于减少设备内存,也易于实现特征共享。对于损失函数,MoCo依靠Info NCE损失作为对比机制:




其中,查询键$Q$和正键$K+$是由图像的两个增广视图在目标模型(Online Model)和动量模型(Momentum Model)的输出向量。$N$表示大小为$M$的特征内存中的所有负键。重要的是,MoCo方案的成功在很大程度上取决于其负键的“难度”,这可以通过(在第$t$次迭代)与 之间的相似度(内积)来确定;相似度越小,其“难度”越高。

负键的“难度”会因为模型更新而迅速降低。因此,MoCo 采用一个变化缓慢的动量模型,在每个训练步骤结束时产生一致(consistent)的负键,来维护负键的“难度”。

Split Federated Learning

AAAI 2022的一篇论文:

https://ojs.aaai.org/index.php/AAAI/article/view/20825

该论文提出了Split Federated Learning(SFL),结合了卸载和联邦学习FedAvg,以“割裂层”为界,将原始模型架构分成2部分:

  1. 包含“割裂层”及其之前所有层的用户端模型
  2. 包含其余层的服务器端模型

将用户端模型的副本分发到用户端的本地设备上,然后在云服务器上实例化服务器端模型。Clients需要将潜向量(Latent Vector)即用户端模型的输出发送给Server端,然后由Server端模型处理潜向量,计算损失并执行反向传播,然后将梯度传回给Clients。经过多轮迭代以后,所有用户端模型会由Server端进行类似FedAvg的聚合过程。

对计算资源的要求

本地训练自监督模型需要庞大的计算资源。传统的监督学习可以采用精简的小模型或者剪枝来节约计算资源,但该方法不适合自监督学习,因为其对模型容量(capacity)的要求更高。

已经有研究表明,要训练一个高精度的自监督模型,需要很大的模型,对内存要求非常高。而为了减小内存,通常会使用较小的批处理量。但是作者进行了实验,在自监督学习中,使用更小的批大小会大大降低准确度。



改进框架 MocoSFL

文章的方法就是将MoCo-V2和SFL结合起来。



  1. 每次训练过程中,先将Clients端发送latent vector合并起来,看成一个大的batch,有服务器端模型一并处理,以此支持用户端小批量训练
  2. 使用一个共享的特征存储器,在每个训练步骤中由所有用户端提供的正键来更新,以达成负键的共享。
  3. 通过使用更高的同步频率来减小用户端模型的差异,提高模型在non-iid数据上的性能。

优点:

  1. 对本地设备的内存要求低
  2. 降低了同步的通信成本,并且提高了同步频率
  3. 存储负键,便于用户之间共享
  4. 对Batch Size的要求较低

实验结果

首先测试了non-iid数据下的精度情况:



然后测试了在ImageNet上的跨客户端精度:



作者的框架还针对TAResSFL数据安全问题进行了优化,优化后的MSE相对于优化前有了很大的提升,Inversion攻击提取的原始图像也变得很模糊。




左边是优化后的精度和inversion攻击的MSE,右边是攻击表现。

然后作者还对用户硬件资源进行了比较:




在一块树莓派的板子上就能跑起来


声明:奋斗小刘|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - Split Learning在联邦自监督学习领域的应用


Make Everyday Count