《Blockchain-Based Trusted Federated Learning with Pre-Trained Models for COVID-19 Detection》----基于区块链的可信联邦学习与与训练模型的新冠肺炎检测
目的: 搭建一个完整的基于区块链存储的可信联邦学习系统,用于实现多机构合作训练新冠肺炎模型并实现高精度诊断。
背景: 单一来源(医院或研究中心)的样本数量有限,数据分布不平衡,导致模型误差大,泛化能力差,所以仅考虑局部训练的模型是不可靠的。并且传统的分布式机器学习依赖于云服务器共享本地数据进行模型训练,这是不安全的。
引言
2019冠状病毒病(新冠肺炎)给经济发展和人类生活带来了难以承受的负担和影响[1]。广泛的临床经验表明,胸部计算机断层扫描(CT)在新冠肺炎患者的医学诊断中发挥着关键作用[2,3]。一些研究人员应用医学图像分析技术检查新冠肺炎患者的CT图像,以确定肺部病变的程度和类型[4-7]。深度学习技术通常需要大量的样本数据来训练模型,以提高检测的精度和准确性。然而,来自单一来源(医院或研究中心)的样本数据有限,数据分布不平衡,导致模型误差大,泛化能力差。因此,仅考虑局部数据来训练模型是不可靠的。
《通用数据保护条例》(GDPR)等法规对医疗数据的收集、存储和处理进行了严格限制[8]。然而,传统的分布式机器学习依赖于云服务器共享本地数据进行模型训练,但攻击者可能会在未经授权的情况下入侵服务器获取数据,这不可避免地导致用户隐私的泄露[9-11]。此外,大量的医学数据带来巨大的计算和存储成本。因此,数据安全、隐私问题和高昂的成本成为医疗机构共享数据用于联合训练模型的障碍。
谷歌于2016年首次提出联邦学习,以在不损害数据隐私的情况下实现安全数据共享和模型共建的目标[12]。联邦学习将多个参与者结合起来,用他们的本地数据训练模型,参与者将模型更新上传到服务器进行聚合,以生成全局模型。在联邦学习过程中,本地数据不上传到服务器,这在一定程度上保证了数据隐私,降低了传输和存储成本。联邦学习的提出可以解决医疗数据的安全共享,克服数据孤岛,避免隐私泄露[13,14]。
联邦学习本质上仍然是分布式机器学习,它需要参与者不断地与中央服务器交换大量的模型参数,从而导致巨大的通信开销。同时,参与者提交的局部模型更新可能会导致用户隐私泄露,不可靠的参与者可能会上传不正确的模型参数,破坏聚合过程,毒害全局模型。此外,它还面临着来自中央服务器的不诚实行为和单点故障的威胁。因此,为了实现高效、准确、安全和值得信赖的联邦学习解决方案,更好地执行新冠肺炎患者的CT图像检测任务,我们需要解决以下问题:
- 我们通常构建复杂的深度学习模型来提高检测的准确性,这满足了用巨大的医学数据进行训练的要求。因此,如何减少大模型的计算和通信开销是一个问题。
- 医疗数据具有很强的隐私属性,个人和社会对数据安全提出了广泛的要求。因此,如何加强医疗数据的隐私保护,防止敏感患者数据的泄露,是一个亟待解决的问题。
- 参与联合学习的各方可能不可信,他们可能意外使用未处理的脏数据,也可能故意使用中毒数据。因此,如何识别不可信的参与者并避免全局模型中毒是一个悬而未决的问题。
- 最好记录不受信任的参与者和不诚实的服务器的行为,以便随时进行跟踪。因此,如何保留联邦学习的训练过程,提高合作治理的透明度是一个需要解决的问题。
为了解决上述问题,提出了一个有效的解决方案。在联邦学习中引入了预训练模型进行训练,提高了效率和准确性,并减少了计算和通信量。同时,使用加密方法来保护本地数据,并加强隐私和安全。此外,使用同态加密算法实现了安全聚合规则,以实现拜占庭鲁棒联邦学习。最后,采用区块链来记录联邦学习训练过程和拜占庭容错共识,以进一步增强鲁棒性。具体而言,工作的主要贡献包括:
- 建议在联邦学习中使用预训练模型,而不是从头开始训练新模型。预训练模型可以提高模型的准确性,并且需要训练更少的模型参数,这可以显著减少训练时间。同时,参与者只需要上传训练部分的参数,就可以大大减少服务器的通信和计算开销。
- 建议使用差分隐私机制和同态加密算法来加强隐私保护。差分隐私机制向模型参数添加扰动,以防止不受信任的客户端或服务器推断模型更新的敏感信息。同态加密算法保证了服务器上的计算过程对服务器是不可见的,可以有效地防止服务器的恶意行为。
- 不受信任的参与者可能会提交有害的模型更新,以干扰聚合过程并毒害全局模型。我们提出了一种使用CKKS同态加密方案的安全Multi-Krum聚合算法。CKKS算法支持浮点数的快速同态计算,Multi-Krum算法基于Krum聚合规则,可以过滤掉异常的模型更新,防止全局模型中毒。
- 建议使用区块链来记录联邦学习的训练过程。Hyperledger Fabric是一个支持智能合约和可插拔共识协议的许可区块链,我们将其用作分布式存储来保存每轮训练的模型参数。另外,我们为其集成了SmartBFL共识算法,进一步增强了鲁棒性,具有比较高的效率。
相关工作
随着人工智能的发展,许多基于深度学习模型的医学图像分析方法被提出,如U-Net[15]、SegNet[16]、ViT[17]等。医学图像分类和分割模型都可以用于 COVID-19 检测 [18-21]。最近,研究人员提议用预先训练的模型来检测 COVID-19。 Gozes等人[22]提出使用在ImageNet数据库上预训练并在COVID-19数据集上进行微调的Resnet-50神经网络,最终实现了较高的检测精度。Gupta 等人[23]提出使用归一化和正则化技术来调整预训练模型,从而提高了 COVID-19 图像的分类精度。 Xiao等人[24]提出使用预训练模型来预测患者CT扫描中的每个切片,并采用投票机制来计算最终的患者预测结果。
联邦学习的提出解决了数据安全共享的问题,在医疗领域也得到了广泛的应用。 Kumar等人[25]提出了一种联邦学习框架来收集不同来源的数据并训练全局深度学习模型。 Yang等人[26]提出了一种新颖的联邦半监督学习技术来研究模型交叉预测在COVID-19多国数据库上的性能差距。Dayan等人[27]提出了一种联邦学习模型,该模型使用来自全球20个机构的数据进行训练,并取得了比单个机构训练更好的灵敏度。 Kandati 等人[28]提出了一种称为 Genetic CFL 的新型混合算法,该算法根据超调参数对边缘设备进行分组,并以遗传方式修改参数聚类。Yang等人[29]提出了使用部分网络的医疗数据集联邦学习算法,其中仅部分模型在服务器和客户端之间共享。
联邦学习中不受信任的参与者可能会发起投毒攻击来毒害全局模型。经典的FedAvg [30]和FedSGD [30]是合成方案,容易受到中毒攻击,导致全局模型不可用。Blanchard等人[31]提出了Krum,一种满足拜占庭弹性的分布式随机梯度下降算法。 Yin等人[32]提出了一种基于中值和截尾均值操作的鲁棒分布式梯度下降算法,具有更好的鲁棒性和通信效率。然而,使用明文交换模型参数容易受到推理攻击并导致隐私泄露。Truex等人[33]提出了一种联邦学习方法,将差分隐私与安全多方计算相结合,以防止推理攻击并保持模型的高精度。Wibawa等人[34]提出了一种基于同态加密的医疗数据隐私保护联邦学习算法,它使用安全的多方计算协议来保护深度学习模型免受对手的攻击。Miao等人[35]提出了一种保护隐私的拜占庭鲁棒联邦学习方案,该方案利用完全同态加密来计算余弦相似度以提供安全聚合。区块链是一种去中心化的账本技术,可以与联邦学习相结合来构建可信的人工智能系统。 Qu 等人[36]提出了一种新颖的基于区块链的联邦学习方案,该方案使用工作量证明共识机制实现自主机器学习。Shayan 等人[37]提出了一种完全去中心化的点对点多方机器学习方法,该方法使用区块链和加密原语来协调同行客户之间的隐私保护机器学习过程。Nguyen 等人 [38] 提出了一种新颖的基于区块链的联邦学习框架,用于安全的 COVID-19 数据分析,该框架通过去中心化的联邦学习过程和新颖的挖掘解决方案实现了低运行时延迟。Yang等人[39]提出了一种基于区块链的去中心化联邦学习架构,使用安全的全局聚合算法来防御恶意设备,并在多个边缘服务器之间部署实用的拜占庭容错共识协议,以防止恶意服务器的模型篡改。Islam等人[40]提出了无人机与区块链相结合的联邦学习方案,通过两级认证机制实现安全积累,并引入差分隐私保护机制来提高模型的隐私性。
在表1中,总结了该工作与以前的工作在几个关键特征上的比较。
A:针对 COVID-19 的联邦学习。 B:使用预先训练的模型进行训练。 C:隐私保护机制。 D:拜占庭弹性聚合。 E:许可的区块链。 F:拜占庭容错共识。
一个标准的联邦学习模型:
包含一个中央服务器和N个参与者与对应的本地数据集D。
基于区块链存储的可信联邦学习系统:
不同:参与者从中央处理器下载全局模型变成了从区块链下载全局模型
①首先,客户端从区块链下载全局模型并解密,然后使用本地数据集进行训练,获得本地模型更新。
②接下来,客户端使用 pkv 加密本地模型并将其发送到解析器。同时,客户端将其用pkx加密提交到区块链。
③在满足隐私和安全要求的前提下,解析器和验证器协同工作,对客户端提交的本地模型进行验证和过滤,以获得可信用户列表。
④解析器根据可信用户列表,聚合过滤后的本地模型,得到全局模型,用pkx加密,最后提交到区块链。
⑤orderer节点使用SmartBFL共识协议对通道中的所有合法交易进行排序,将交易打包成块,并将其分发给通道上的所有对等节点。
⑥通道中的每个对等节点独立验证区块中的每笔交易,以确保账本保持一致,执行合法交易。验证通过后写入账本,全局模型更新。
⑦重复上述过程(①––⑥),直到通道上的全局模型达到收敛。
存在的威胁:
对抗威胁的措施:
①投毒攻击:模型过滤,拜占庭鲁棒的Multi-Krum聚合算法;
②推理攻击:为训练器集成差分隐私方案,在梯度中加入高斯噪声;
③模型提取攻击:CKKS同态加密方案;
④权限控制:许可区块链。
文章比较长,介绍比较详细,总的来说就是针对存在的威胁提出相应措施。