最新论文笔记(+18):TrustFed: A Framework for Fair and Trustworthy Cross-Device Federated Learning in IIoT

TrustFed: A Framework for Fair and Trustworthy Cross-Device Federated Learning in IIoT "译为“TurstFed:在工业物联网中一种公平可信的跨设备联邦学习框架”

这篇文章是IEEE Transactions on Industrial Informatics 21上的一篇联邦学习和区块链相结合应用到物联网中的文章。总体来看,本文内容还不错,明确指出了现存的主要问题,并针对这几个问题进行了解答,对读者的帮助还是很大的,但是一个框架型方案,对具体的细节解释还不够深入!以下是个人根据自身读后的感悟,并整理的一些学习笔记,随性记录,并不一定按照文章结构顺序。

一、背景及贡献

1.1 写作背景

随着国家数据安全法规的日益完善、各方组织之间的数据孤岛问题愈发严重,以及数据泄露风险的不断增加,人们对数据隐私保护的需求也越来越强。如何做到不泄露数据的情况下,达到完成机器学习的目的呢?联邦学习技术孕育而生,它使数据不出本地的情况下,有效地利用交互模型中间参数进行模型训练,从而得到较好的模型,主要是解决了不同参与方之间的数据孤岛问题,和数据安全与隐私保护问题。联邦学习也是一种隐私保护的分布式机器学习协议。

联邦学习训练主要采用两种配置方法,一种是跨数据集(Cross-dataset)联邦学习系统CDSFL(其他文章也叫跨孤岛),该系统将数据集垂直划分到训练网络中的多个参与者,另一种是跨设备(Cross-device)系统CDFL,通过该系统数据集被水平划分到训练网络中的所有设备上。下面是这两种类型的对比:

但是CDSFL系统总是依赖集中式服务器来协调参与者之间的训练服务,聚合模型更新,并维护集中式模型的不同版本。这种类型的FL设置总需要一个稳定的通信网络,以确保FL参与者的高可用性。而在CDFL系统中,设备可以加入或离开训练网络,CDFL去中心化特性也增加了潜在的网络通信成本,进而增加了模型中毒和对抗性攻击的概率。训练网络的解耦增加了底层点对点网络的通信成本,同样这些设备可以通过发起对抗性攻击来串通和污染某些设备上的训练模型,导致不公平地训练出低质量的FL模型。另一方面,跨设备(Cross-device)联邦学习系统CDFL实现了完全去中心化的训练网络,每个参与者可以作为模型所有者和生产者。CDFL系统需要确保网络中所有参与者的公平性、可信度和高质量的模型可用性。

1.2 主要贡献

二、系统框架

2.1 联邦学习信誉系统

    1)中心化联邦学习系统:服务器根据所有设备的性能评估来选择下一轮FL设备集合。在集中式的联邦学习系统中,无需共享信誉系统。但一个集中式的实体控制所有设备的信誉变得不可取,成为了严重的信任问题。 2)去中心化联邦学习系统:需要一个公开共享的记录来显示每个设备的声誉。区块链可提供去中心化的公开分类账,用于存储所有设备的信誉。本方案的区块链主要动机是实现公平和可信的跨设备联邦学习系统。 3)联邦学习和区块链的关系:区块链可以多种方式与联邦学习应用集成,而本方案的目标是提供一个松耦合,与区块链无关的CDFL系统。这种方法有助于将所建议的框架与任何允许或不允许的可编程区块链系统集成。

根据自身的理解,本文的方案实则是以下的图例:

2.2 链下联邦学习系统

    (1)QoS(Quality of Service)管理者:去中心化系统中过多的异构设备和系统引起了质量问题,如一些设备的延迟报告可能导致一些重要的模型更新或某些设备上NON-IID数据集的丢失,从而导致模型过度拟合。同样,异步设置也会导致梯度优化延迟,导致模型收敛性差。QoS管理器发布每个 P t P_t Pt的质量需求和激励承诺,并根据它们在区块链网络上的声誉选择最有前途的设备。 (2)训练管理者:随机选取一些 C = { p : p ∈ P i , R e p ( p ) > λ } C={p: pin P_i ,Rep(p) >lambda} C={ p:p∈Pi,Rep(p)>λ},其中 λ lambda λ是平均信誉分,在每轮训练结束时生成模型性能统计数据。并分为两个子轮训练。(根据自身的理解,画了如下流程图) 发送参数 h t h_t ht和权值 W 0 W^0 W0分配给每个C,C对模型进行训练后生成新的权值 W 1 W^1 W1和 E n c ( W 1 ) Enc(W^1) Enc(W1),并发回给训练管理者。 将C划分为两组,收敛贡献度小于等于平均值的被归类为 C 1 C^1 C1,其余为 C 2 C^2 C2。对模型更新进行交叉验证,即 W C 2 1 → C 1 , W C 1 1 → C 2 W^1_{C^2} o C^1, W^1_{C^1} o C^2 WC21→C1,WC11→C2 , C i C_i Ci再次训练产生新的 W 2 W^2 W2。
    (3)模型统计解释器:维护模型统计数据分布,以检测 C i C_i Ci模型的性能,并根据每次训练子轮的变化,将新的声誉分数分配给每个 C i C_i Ci。 (4)模型版本管理者:交叉检测模型性能,并与初始模型性能相比较。将模型存储在去中心化的IPFS系统中,并将模型更新给所有FL参与者。 (5)FL核心组件:主要包括模型聚合器和Peers。 模型聚合器:聚合收到的 W 2 W^2 W2,将更新后的模型权值存储在IPFS上。通过智能合约发起新的区块链交易,以更新网络上所有的FL参与者。 Peers:进行本地训练,与P2P网络上的参与者 P i P_i Pi通信,并为模型聚合器收集权重 W i W^i Wi。

2.3 链上联邦学习系统

主要包括三个智能合约,分别为信誉智能合约、聚合器智能合约和激励机制智能合约。

三、性能分析

实验环境:Python语言、PyTorch框架、涡扇发动机退化仿真数据集NASA。 结论:无论设备数量如何,本方案在损失较低方面表现出更好的结果。

四、总结与思考

本文主要有以下四个贡献:

    1)使用勒以太坊区块链和智能合约实现去中心化的CDFL系统——TrustFed。 2)提出了一个新的CDFL协议,该协议检测出训练分布中的异常值。(一次异常就剔除,有点牵强吧?) 3)使用了一个真实的IIoT数据集实现和测试TrustFed(感觉训练的设备数量不够,仅仅100个?) 4)将结果与最新的标准方法进行了比较与评估。(好像并没有比较)
经验分享 程序员 微信小程序 职场和发展