FedML 联邦学习

Collaborative and Privacy

Posted by tianchen on February 18, 2022

本page是从notion page转化而来,使用了原生的导出方式Export to Markdown&CSV,会导出一个zip,内部有md和图片文件,为了保持,可能需要手动将图片upload到图床

Learn FedML

📔 - White Paper by WeBank

联邦学习白皮书_v2.0.pdf (myqcloud.com)

  1. 定义: 各方面借助其他方面数据进行联合建模,各方不需要共享数据,就可以进行数据的联合训练,建立一个共享的ML模型
  2. 约束条件: $ V_{fed} - V_{sum} < \delta$
    1. Fed模型的结果,与传统数据聚合方法所建模模型的效果差距应该有界面

与相关领域的关系

  1. 与差分隐私的区别:与隐私保护机制,比如Differential Privacy,K-Anonymity和I-Diversity等方法是常见在大数据中的隐私保护机制; 由于FL的数据和模型本身不会存在泄露,因此不在一个层面。
    1. 以上的隐私理论本质上都是在往数据中加noise以模糊某些敏感的属性直到第三方不能区分,本质是对由于数据传输而产生攻击可能性的情况。(对某些法律保护条例下,这样的方式不可用)
  2. 与分布式机器学习的区别:Distributed Machine Learning,分布式机器学习包括多个方面,都follow了一个类似的中心式调度节点来调配和分布资源。目的是为了更高效的获得模型。FL中则更关注数据隐私
  3. 与Federated数据库的区别:FDB将多个单元数据库进行继承并整体管理,实际上多种采用了分布式存储且各个单元可能异构。本质区别同样是不涉及隐私保护机制
  4. 与Block Chain的关系,BlockChain是一个去中心化的应用,通过分布式的运行,使数据不会被篡改。FL与BC都是去中心化网络,联邦学习(同态加密)和区块链(非对称加密,哈希)都需要应用到加密算法。BC是一个完全peer2peer的网络结构,而FL需要第三方进行模型的汇聚和管理。

分类

有多个数据拥有方,各自拥有数据 $D_i$ 可以被表示为一个矩阵,行为用户,列为用户特征。构建一个用户行为预测的模型(如用户的特征X,信用Y),我们定义用户特征X,标签为Y,用户为U。以用户特征与用户分别为xy轴,其重合程度情况将FL分为三类(用户特征类似: 横向)

实际操作时,一般取两者交集出来训练

A Survey on Federated Learning Systems: Vision, Hype and Reality for Data Privacy and Protection

Author: He Bingsheng(NUS), Li Qibin Category: FL, Survey Link: http://arxiv.org/abs/1907.09693 Share Date: 2022/02/15 Sharer: Tianchen Zhao

abstract

  • 对Federated Learning System做了一个系统的分类划分(从6个维度),给出了一些design factoers, case studies以及未来方向
  • 6 Aspects:
    • Data Dist.
    • ML Model
    • Privacy Mechanism
    • Communication Arch
    • Scale of Federation
    • Motivation of Fed
  • 🔑: 有一个Related Survey & Our Contribution的Section,之后写survey可以学习🔖
  • 相关的几篇和Mobile和Cross-Platform相关的FL paper
    • 85:1. Peter Kairouz, H Brendan McMahan, Brendan Avent, Aure ́lien Bellet, Mehdi Bennis, Arjun Nitin Bhagoji, Keith Bonawitz, Zachary Charles, Graham Cormode, Rachel Cummings, et al. Advances and open problems in federated learning. arXiv preprint arXiv:1912.04977, 2019.
    • 11:1. Mohammed Aledhari, Rehma Razzak, Reza M Parizi, and Fahad Saeed. Federated learning: A survey on enabling technologies, protocols, and applications. IEEE Access, 8:140699–140725 2020.
    • 113:1. Wei Yang Bryan Lim, Nguyen Cong Luong, Dinh Thai Hoang, Yutao Jiao, Ying-Chang Liang, Qiang Yang, Dusit Niyato, and Chunyan Miao. Federated learning in mobile edge networks: A comprehensive survey, 2019.

Intro

  1. “Data Islands”: a single hospital cannot learn a model by itself → “Colaborate Training”
  2. There existing some policies GDPR banning the data sharing
  3. FL needs infrastracture: FLS(Federated Learning System), that summarizes the common methods and building blocks.
    1. 4 Factors: effectiveness, effeciency, privacy and autonomy

Definition

  1. FL:a collarborative learning system without exchanging user’s original data
  2. Constraint: given a evaluation metric, should be better than local learnt
  3. Relation with existing techs:
    1. Federated Database Systems(FDBS): the participants are anonymous, the databases are heterogenity, the data dist. usually different,关键问题是 management of distributed data
    2. Federated Cloud Computing: multiple cloud computing services; 处理Load balance不一样的情况,两个关键因素是Resource Migration & Migration Redundancy,关键问题是focus on the scheduling of resources
  4. Main Components:
    1. Parities(Clients):
      1. 如果每个party是一个organization,叫做cross-silo setting,更关注per org; 如果是mobile device,则叫做cross-device
      2. hardware capacity(often resource constraint, e.g., mobile devices in cross-platform scenario)
      3. Scale and Stability: whether could continuously provide computing resource
      4. Data Dist differ is the most practical challenge: NON IID
        1. 所以有很多TL,MetaLearning等方法需要被utilize
    2. Manager(Server)
      1. 在cross-silo setting中,找到一个可信的manager困难,因此可以诉诸fully centralized,但是communication overhead会大。
    3. Communication-Computatino Framework for Training the model
      1. FedAvg: 传输的是model, global node做model average,是centralized
      2. SimFL: 互相传grad以及model

Taxnomy

  1. 数据切分:
    1. 横向:feature类似,但是sample分布差异大(与cross-device更加类似,大部分的FL研究这种setting)
      1. 类似的feature,类似的任务
    2. 纵向:sample类似,但是不同的feature
      1. 一般会采用entity alignment: 选出overlapped samples,并且用来训练
      2. 这一步骤需要做到privacy preserving
  2. ML Model(GDBT / NN / Linear model)
  3. 隐私方式: 虽然local data并不是exposed,但是exchanged model parameter可能仍然暴露信息,有一些attack模型的方式仍然可以potentially infer the raw data:
    1. CryptoGraphic: 用加密方法(比如同态加密:Homomorphic - 对密文进行特定的代数运算之后仍然是加密的结果,对齐解密所得的结果与对明文进行同样的运算结果一样; 这样就可以在加密数据中无需解密就进行检索比较等操作)
    2. Differential Privacy: 某个record不会严重影响output。有实现方式是eject random noise
    3. Attack的环节:
      1. input: data poisoning:某一方篡改自己的label
      2. learning: 传一个坏的model
      3. learnt model: 对学习好的model中利用一般的NN攻击方法提取有效信息
        1. member inference attack: determine whether certain sample is used in training
  4. 通信方式:
    1. Centralized: 有一个中心Manager
    2. DeCentralized(更preferred但是harder):需要考虑communication overhead以及fairness
      1. 如BlockChain是一个popular的decentralized平台
  5. FedML的规模:
    1. cross-silo:一般每个party都是一个data center,数量相对少,每个party的熟练个相对多
    2. cross-device:一般需要一个中心manager能够manage a large amount of parties and handles the unstable connection
      • 目前大家主要研究:横向的(feature类似,任务类似),一般直接传输raw model不加隐私,采用centralized design,主要的目的是提升性能。

Ideas