陈贝 李高磊
摘 要:群体学习是一种基于区块链的分布式模型协同训练框架。由于接入设备类型和用户信任关系多变,群体学习中可能存在由恶意节点发起的投毒行为和后门传播效应。文章从多级信任度量的角度展开研究,首先,通过组合针对区块链的日蚀攻击和针对联邦学习的分布式后门攻击构造一种具有强传染性的攻击方法;其次,结合基于数字签名的用户身份认证和基于模型逆向的后门异常检测建立一个多级信任度量模型;最后,利用群体学习的交叉验证机制进行后门模型剔除以及异常节点注销。实验结果表明,该文提出的防护方案能够有效增强群体学习框架下机器学习模型的安全性。
关键词:群体学习;区块链;联邦学习;多级信任度量;后门防御
中图分类号:TP183;TP309 文献标识码:A 文章编号:2096-4706(2023)18-0119-07
Swarm Learning Backdoor Threat Protection Based on Multilevel Trust Measurement
CHEN Bei, LI Gaolei
(School of Electronic Information and Electrical Engineering, Shanghai Jiao Tong University, Shanghai 200240, China)
Abstract: Swarm Learning is a blockchain-based distributed model collaborative training framework. Due to the variable types of access devices and user trust relationships, there may be poisoning behaviors and backdoor propagation effects initiated by malicious nodes in Swarm Learning. This paper studies from the perspective of multi-level trust measurement. First, constructs a highly contagious attack method by combining eclipse attack against blockchain and distributed backdoor attack against Federated Learning. Secondly, a multi-level trust measurement model is established by combining user identity authentication based on digital signature and backdoor anomaly detection based on model reversal. Finally, the cross-validation mechanism of Swarm Learning is used to remove the backdoor model and write off abnormal nodes. Experimental results show that the protection scheme proposed in this paper can effectively enhance the security of machine learning models under the framework of Swarm Learning.
Keywords: Swarm Learning; blockchain; Federated Learning; multilevel trust measurement; backdoor defense
0 引 言
群体学习(Swarm Learning, SL)是使用基于区块链的对等网络构建的去中心化分布式机器学习架構[1,2]。和使用中心化服务器收集并聚合模型参数的联邦学习(Federated Learning, FL)不同,在群体学习中,初始模型由边缘节点使用私有数据集在本地创建,通过区块链网络共享模型参数,执行共识算法并更新区块链后,所有节点都能使用新的区块进行参数聚合并更新模型,从而高效完成协同学习任务。由于群体学习利用了区块链和联邦学习在技术特点上的相融性和互补性,既满足了用户在数据隐私保护上的迫切需求,又有效降低了由于中心化服务器不可信而带来的安全风险[3],在智慧医疗、城市关联等众多场景中有着极大的应用潜力。
然而,群体学习依然面临严峻的安全威胁。一方面,去中心化的匿名区块链网络本身存在P2P网络安全漏洞等隐患[4,5]。另一方面,由于设备接入类型的多样性、用户信任关系的动态性,群体学习中边缘节点的私有数据以及本地训练得到的模型参数在被记录到区块链上之前很可能已经被植入后门,使得学习模型在正常样本输入上表现正常,而仅对特定样本输出攻击者预定义的错误标签。这些被植入后门的模型参数在上链之后将被广泛传播,进而对各个节点上的学习模型造成严重影响。
目前,后门攻防前沿研究主要聚焦于一般神经网络或联邦学习场景,而面向群体学习的后门攻防研究尚未得到重视。本文从群体学习的结构组成出发,首先揭示了一种潜在的组合式后门植入方法;其次,提出了基于多级信任度量的群体学习后门威胁防护机制。
本文的主要贡献如下:
1)验证了群体学习环境下日蚀攻击和分布式后门植入攻击的可组合性,揭示了一种针对群体学习的新型安全威胁。
2)结合基于数字签名的用户身份认证和基于模型逆向的后门异常检测,建立了一个多级信任度量模型,对群体学习节点的可信性进行动态监测。
3)在群体学习的交叉验证过程中集成了后门模型剔除和异常节点注销策略,通过在参数聚合前部署上述后门威胁防护措施,有效抑制了后门模型在群体学习环境下非法散播。
1 相关工作
后门攻击的实现方式有样本投毒和模型替换两种类型。Gu[6]等人提出了基于样本投毒的后门攻击,它通过毒化训练数据集来植入模型后门;Bagdasaryan[7]等人将后门攻击引入到了联邦学习场景下,并通过模型替换和约束缩放机制将后门攻击产生的偏差纳入损失函数,从而实现对基于异常检测的后门防御方法的有效规避;Liu[8]等人提出的Trojan攻击通过逆向神经网络生成通用的后门触发器,然后修改模型参数以实现后门植入;Yan[9]等人提出在半监督学习场景下可以利用对抗性扰动生成算法制作无标记中毒数据,提高了后门攻击的有效性和隐蔽性。
现有的后门防御工作主要包括两类:后门检测、后门擦除。Chen[10]等人提出基于激活聚类的后门检测方法,对训练数据在模型隐藏层的激活值进行聚类分析;Wang[11]等人提出神经净化方法,对每个标签逆向触发器,通过比较触发器尺寸实现后门检测;Li[12]等人提出神经注意力蒸馏机制,通过模型蒸馏和微调机制削弱后门的功效;Liu[13]等人提出在联邦学习场景下可让中央服务器忽略范数超过某个阈值的模型更新防御后门植入。
2 群体学习中模型跨链训练机制
在群体学习中,学习任务由n个节点组成的集合? = {N1,N1,…,Nn}在一系列轮次中完成。每个节点Nk(1≤k≤n)的训练数据集为Dk,拥有唯一身份标识id k和非对称密钥对(PK k,SK k)。在第t轮中,系统工作流程如图1所示。
2.1 角色分配
节点被分配到以下三种角色集合中:
1)训练节点W ? ?,负责本地模型训练;
2)验证节点V ? ?,负责模型交叉验证;
3)挖矿节点M ? ?,负责区块生成。满足W ∪ V ∪ M = ?且W ∩ V ∩ M = ?。
2.2 本地训练
每一训练节点Nw ∈ W进行本地训练,权重更新目标为:
得到本地模型更新 ,将其写入交易记录 并发送给邻居验证节点Nv ∈ V,邻居验证节点又将此交易记录广播发送给其他所有验证节点。
2.3 验证模型更新
当验证节点Nw收到训练节点Nv的交易记录时,首先进行交叉验证[14],随后将模型更新和验证结果发送给邻居挖矿节点,且由邻居挖矿节点广播给所有挖矿节点。
2.4 交易汇总及区块生成
所有挖矿节点Nm都能收到每一验证节点对每一训练节点本地模型更新的交叉验证信息,汇总并记录到生成区块 中。
2.5 区块链更新
在挖矿节点集合M中,基于PoS共识算法选出记账节点,其区块作为合法区块blockt并广播给所有挖矿节点。PoS共识算法旨在让对模型训练贡献最大的挖矿节点获得记账权[15]。
2.6 模型聚合及信任更新
所有节点收到blockt,更新区块链并使用新区块中的记录进行全局模型聚合和信任更新。在所有训练节点可信的情况下,全局模型按训练节点贡献度对本地模型更新进行加权平均,即:
其中,节点贡献度αw定义为本地训练数据量|Dw|在训练节点集合中的占比,即:
3 群体学习后门威胁模型
设系统中恶意节点集合A ? ?由部分设备节点组成。对于一个神经网络模型, = { y1,y2,y3,…}为输出标签集合。后门攻击的目标是在不影响原学习任务的同时,使模型对一个植入特定触发器的样本输出特定的后门目标标签τ = yt ∈ 。恶意节点Nw ∈ A在第t轮模型训练时的权重更新的目标为:
其中投毒数据集 和干凈数据集 满足 且 ,R为植入触发器?的函数变换。
为了增强后门的隐蔽性,恶意节点进行分布式后门攻击[16](Distributed Backdoor Attack, DBA),所有攻击者仅使用全局触发器分解所得的一部分作为本地触发器进行植入。在减小了数据投毒代价的同时,对于全局触发器仍然保持很高的攻击成功率。
此外,日蚀攻击[5]是针对区块链网络中单个设备节点的攻击,能够迫使部分正常节点无法与其他节点通信。在群体学习中可先实施日蚀攻击使正常节点参与训练的机会减小,进而改变网络中节点的算力分布,使恶意节点占比增大,最终导致部分节点无法获取真实的模型更新,而受到恶意节点发送的后门模型的感染。在这种组合日蚀攻击和分布式后门攻击的新型攻击方式下,后门植入成功率会显著增大,后门传播速率也大幅提升。
4 基于多级信任度量的后门威胁防护
4.1 基于数字签名的身份认证
当验证节点Nv收到训练节点的交易记录 时,首先进行用户身份认证,防止非认证实体的接入。交易记录的结构如下所示:
其中数字签名sig是将节点Nw的本地模型更新 使用私钥SKw加密得到的。
验证节点查询节点Nw公钥PKw,提取交易记录中的数字签名,进行数字签名验证,计算用户身份可信度(User Identity Credibility, UIC):
4.2 基于模型逆向的后门检测
为了检测模型中的潜在后门,分析后门触发器的潜在弱点。考虑一个标签yi ∈ 和目标标签τ = yt ∈ ,t ≠ i,若存在触发器导致一个真实标签为的输入错误分类至τ,则所需的输入最小改动存在一个上界,即触发器的大小:δi→t≤| ?t |。一个有效的后门触发器可以实现无论输入的真实标签是什么,在植入触发器后都能被分类至目标标签,因此:
然而,要使一个正常输入被错误分类至未感染标签,所需的最小改动应远大于触发器的大小。因此,若一個模型中存在后门触发器?t,则有:
因此,在{δ?→t |1≤i≤||}中异常低的值可作为后门存在的标志。
首先,给出触发器植入变换的形式定义:
其中Δ为触发器模式矩阵,m为触发器植入系数矩阵。
为了找到使样本被分类至标签yi所需的最小触发器,求解如下优化问题[11]:
其中f为模型预测函数,X为数据集的输入样本集合,?为损失函数,λ为第二个优化目标的权重。第一个优化目标是使触发器植入后的样本输出尽可能为yi;第二个优化目标是使触发器尺寸尽可能小。
为了检测其中的异常标签,首先对每个标签yi的触发器L1范数li计算绝对中位差:
其中median表示取中位数。利用MAD计算标签异常指标:
当一个标签L1范数的异常值ai>2时,可以认定为受后门感染的标签。
最后,为了量化模型更新的可信程度,计算模型更新可信度(Model Update Credibility, MUC):
4.3 多级信任度量与信任更新
为了动态度量节点的可信程度,定义节点可信度(Node Credibility, NC)作为模型验证阶段的验证结果和模型聚合阶段信任更新的依据。
当一个验证节点收到训练节点发送的交易记录时,按如下步骤进行信任度量:
1)用户身份认证:获取用户公钥,验证数字签名,得到用户身份可信度的度量值 。
2)模型更新验证:基于模型逆向的后门检测方法检测模型异常,得到模型更新可信度的度量值 。
3)节点局部可信度计算:
此后,将计算所得局部可信度发送给挖矿节点进行汇总。当网络节点同步进行模型聚合时,对每一个训练节点计算其节点可信度:
设定节点信任阈值,若本轮中节点可信度低于该阈值,则该训练节点的本地模型更新在聚合中被剔除。设定节点注销阈值,若节点的本地模型连续被排除次数高于该阈值,则该节点被全网注销。
5 实验及分析
5.1 实验环境及评估指标
实验采用PyTorch深度学习框架搭建仿真环境,以MNIST为数据集,模型采用卷积神经网络CNN,节点总数为20,所有节点数据独立同分布,迭代批处理大小为64,选择Adam优化器并设置正常训练学习率为0.001,投毒训练学习率为0.000 5,起始攻击轮次为10。本地触发器大小设置为1×4,全局触发器由4个本地触发器组成。
后门攻击效果有两个评估指标:模型精度(Clean Accuracy, CA),指全局模型在分类任务上的准确率;攻击成功率(Attack Success Rate, ASR),指全局触发器植入后全局模型产生目标错误分类的成功率。
后门防御效果有两个评估指标:攻击成功率下降(Attack rate deduction, ARD),即防御前后攻击成功率的差值;模型精度下降(Clean accuracy drop, CAD),即后门防御带来的模型精度损失。
5.2 后门攻击方案实现与分析
模拟分布式后门攻击,并研究分布式后门攻击中的后门传播机制。影响后门传播速度的因素有中毒样本占比和恶意节点占比。
5.2.1 中毒样本占比
在本地训练中,恶意节点以一定的比例向训练样本中投毒,对于经过模型聚合后的全局模型,中毒样本占比对其模型精度和攻击成功率均有一定程度的影响。设置恶意节点数为4,投毒比例分别设置为8、24、40、56,实验结果如图2所示。
由图2可知:
1)当中毒样本占比大于12.5%且小于87.5%时,中毒样本占比越大,全局触发器收敛速度越快。
2)当中毒样本占比大于12.5%且小于50%时,所有本地触发器的攻击成功率能够在一定轮次收敛,且中毒样本占比越大,收敛速度越快。
5.2.2 恶意节点占比
设置投毒比例为16/64,分别设置恶意节点个数为4、8、12、16,同时恶意节点占比增大的过程也反映了日蚀攻击的效果。实验结果如图3所示。
由图3可知:
1)恶意节点占比越高,攻击成功率收敛速度越快。
2)日蚀攻击能够显著增加攻击成功率和后门传播速度。
5.3 后门防御效果对比与分析
首先对基于模型逆向的触发器生成算法进行实验验证。为了对比逆向触发器生成算法在不同的攻击方案和测试对象上的效果,我们分别采用集中式和分布式后门植入方案,又在分布式后门攻击方案中分别测试全局模型和本地模型,得到原始触发器和关于目标标签的逆向触发器对比,如图4所示。
1)与集中式后门植入相比较,在分布式后门植入方案下,触发器生成算法难以完全恢复全局触发器,这是由本地触发器在植入过程中的非同步性和耦合性造成的。
2)在分布式后门植入方案下,全局模型和本地模型的逆向触发器也有差别,这与轮次内参与训练的恶意节点有关。例如在图4(c)中,参与训练的恶意节点N1和N4分别使用不同的本地触发器对训练数据进行投毒,因此对于本轮的全局模型,逆向触发器的特征更接近于这两个本地触发器的组合。而N1和N4各自的本地模型则只对各自的本地触发器敏感度更高。
因此,相较于集中式植入或全局模型检测,分布式后门植入方案中的恶意本地模型更容易被后门检测方法所捕获,因为其逆向触发器有更小的L1范数。
观察信任动态度量算法的效果。设置总节点数为6,其中训练节点数为4,恶意节点编号为1,中毒样本比例为16/64,起始检测轮次为9,节点信任阈值为0。第9轮和第10轮中节点可信度的度量值变化如图5所示。其中第9轮的训练节点为1、2、3、5,第10轮的训练节点为1、3、4、6。结果表明,在惡意节点1开始投毒后,信任度量算法能够迅速识别其恶意模型更新。
观察全局模型在通信轮次中CA和ASR的变化。设置总节点数为20,恶意节点数为4,中毒样本比例为16/64,起始检测轮次为50。全局模型的CA和ASR变化曲线如图6所示,当验证节点在第50轮开始进行后门检测后,攻击成功率迅速降低,在此后10轮以内降至5%以下,且不再上升。
取未开始后门检测的第49轮到开始检测的第60轮,衡量防御效果,可得ARD = 87.4%,CAD = 14.2%,验证了此防御方法对后门攻击的有效性。
6 结 论
本文首先介绍了群体学习中模型跨链训练机制的工作流程,然后研究了日蚀攻击和分布式后门攻击在群体学习环境下的可组合性,最后通过多级信任度量模型把用户认证与后门检测、信任管理相结合,形成基于多级信任度量的后门威胁防护机制。实验中,将所提方法集成在了群体学习的节点交叉验证过程中。结果表明,本文提出的防护方案能够实现后门模型的动态剔除和异常节点的实时注销,有效抑制了后门威胁在群体学习中非法散播。
参考文献:
[1] WARNAT-HERRESTHAL S,SCHULTZE H,SHASTRY K L,et al. Swarm learning for decentralized and confidential clinical machine learning [J].Nature,2021,594(7862):265-270.
[2] 杨强,童咏昕,王晏晟,等.群体智能中的联邦学习算法综述 [J].智能科学与技术学报,2022,4(1):29-44.
[3] HAN J,MA Y,HAN Y,et al. Demystifying Swarm Learning: A New Paradigm of Blockchain-based Decentralized Federated Learning [J/OL].arXiv:2201.05286 [cs.LG].[2023-03-06].https://arxiv.org/abs/2201.05286v1.
[4] 王雷,任南,李保珍.区块链51%双花攻击的进化博弈及防控策略研究 [J].计算机工程与应用,2020,56(3):28-34.
[5] 韩璇,袁勇,王飞跃.区块链安全问题:研究现状与展望 [J].自动化学报,2019,45(1):206-225.
[6] GU T Y,DOLAN-GAVITT B,GARG S. BadNets: Identifying Vulnerabilities in the Machine Learning Model Supply Chain [J/OL].arXiv:1708.06733 [cs.CR].[2023-03-06].https://arxiv.org/abs/1708.06733.
[7] BAGDASARYAN E,VEIT A,HUA Y Q,et al. How To Backdoor Federated Learning [J/OL].arXiv:1807.00459 [cs.CR].[2023-03-06].https://arxiv.org/abs/1807.00459.
[8] LIU Y Q,MA S Q,AAFER Y,et al. Trojaning Attack on Neural Networks [EB/OL].[2023-02-16].https://docs.lib.purdue.edu/cgi/viewcontent.cgi?referer=&httpsredir=1&article=2782&context=cstech.
[9] YAN Z C,LI G L,TIAN Y,et al. DeHiB: Deep Hidden Backdoor Attack on Semi-supervised Learning via Adversarial Perturbation [C]//National Conference on Artificial Intelligence.[S.I.]:AAAI Press,2021,35(12):10585-10593.
[10] CHEN B,CARVALHO W,BARACALDO N,et al. Detecting Backdoor Attacks on Deep Neural Networks by Activation Clustering [J/OL].arXiv:1811.03728 [cs.LG].[2023-02-16].https://arxiv.org/abs/1811.03728.
[11] WANG B L,YAO Y S,SHAN S,et al. Neural Cleanse: Identifying and Mitigating Backdoor Attacks in Neural Networks [C]//2019 IEEE Symposium on Security and Privacy (SP).San Francisco:IEEE,2019:707-723.
[12] LI Y G,LYU X X,KOREN N,et al. Neural Attention Distillation: Erasing Backdoor Triggers from Deep Neural Networks [J/OL].arXiv:2101.05930 [cs.LG].[2023-02-16].https://arxiv.org/abs/2101.05930.
[13] LIU W Y,CHENG J H,WANG X L,et al. Hybrid differential privacy based federated learning for Internet of Things [J/OL].Journal of Systems Architecture,2022,124:[2023-02-16].https://doi.org/10.1016/j.sysarc.2022.102418.
[14] 朱建明,张沁楠,高胜,等.基于区块链的隐私保护可信联邦学习模型 [J].计算机学报,2021,44(12):2464-2484.
[15] CHEN H,ASIF S A,PARK J H,et al. Robust Blockchained Federated Learning with Model Validation and Proof-of-Stake Inspired Consensus [J/OL].arXiv:2101.03300 [cs.LG].[2023-02-23].https://arxiv.org/abs/2101.03300.
[16] XIE C L,HUANG K L,CHEN P Y,et al. DBA: Distributed Backdoor Attacks against Federated Learning [C]//International Conference on Learning Representations(ICLR 2020).Addis Ababa:[s.n.],2020:1-15.
作者简介:陈贝(2001.04—),女,漢族,安徽安庆人,硕士在读,研究方向:人工智能安全;李高磊(1992.12—),男,汉族,河南开封人,助理教授,研究方向:人工智能与系统安全。