CN115293256A - 一种由区块链辅助的联邦学习无线网络模型 - Google Patents

一种由区块链辅助的联邦学习无线网络模型 Download PDF

Info

Publication number
CN115293256A
CN115293256A CN202210921819.6A CN202210921819A CN115293256A CN 115293256 A CN115293256 A CN 115293256A CN 202210921819 A CN202210921819 A CN 202210921819A CN 115293256 A CN115293256 A CN 115293256A
Authority
CN
China
Prior art keywords
time
model
local
federal
global
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210921819.6A
Other languages
English (en)
Inventor
郑杰
周一璇
许佶鹏
陈沐梓
曹亚梅
曹瑞
高岭
王海
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Northwest University
Original Assignee
Northwest University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Northwest University filed Critical Northwest University
Priority to CN202210921819.6A priority Critical patent/CN115293256A/zh
Publication of CN115293256A publication Critical patent/CN115293256A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • H04W12/121Wireless intrusion detection systems [WIDS]; Wireless intrusion prevention systems [WIPS]
    • H04W12/122Counter-measures against attacks; Protection against rogue devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

一种由区块链辅助的联邦学习无线网络模型,边缘设备将本地训练的模型更新发送给中心服务器,利用智能合约验证上传的参数并由服务器聚合,聚合阶段采用无线联邦学习算法适配无线环境,最后将模型参数返回给边缘设备以开始下一轮的学习;将联邦学习与区块链结合,保护用户不可信或参数受到中毒攻击的问题,提高了系统的可靠性和安全性;解决计算和通信资源分配优化问题,将该非凸问题分解为几个子问题,利用凸优化、连续凸近似等方法分别求解,实现了最小化时间和能量成本;对资源优化问题给出数值结果,利用PyTorch在多个数据集上对算法进行实验评估,数值和实验结果表明所提出的方案有效改善总能耗并能减轻数据中毒攻击对学习过程的影响。

Description

一种由区块链辅助的联邦学习无线网络模型
技术领域
本发明涉及计算机技术领域,具体涉及一种由区块链辅助的联邦学习无线网络模型。
技术背景
近年来,机器学习对于我们生活方式的改变愈发明显,这受益于其在文本、语音、图像、视频识别等方面的重大突破。现实世界中,在行业竞争、隐私保护等问题的阻挠下,能够收集和拥有如此大量的用户数据的公司并不多,这些公司会与众多拥有少量数据或低质量数据的公司形成数据孤岛。另一方面,作为被收集数据的用户开始强调自己的隐私安全,这也致使越来越多的大公司增强了对数据安全和用户隐私的妥协意识。另一方面,传统的机器学习为了训练一个好的模型,需要将分散的用户数据收集到中心云端进行建模,这些数据可能分布在网络边缘的各个物联网设备上,然后将训练好的模型下发到用户设备进行任务推理。这种方法在数据传输和模型传输时,会导致较高的通信成本和延迟。而且,很难让边缘的物联网设备自身根据拥有的数据训练一个好的模型,这是因为会出现设备的计算能力有限和训练数据样本不足等问题。
联邦学习使参与方能够通过仅共享本地参数而不暴露私有数据来协作学习模型。联邦学习通常迭代执行以下步骤:服务器端将当前全局模型发送给所有客户端或选定的客户端子集;每个选定的客户端通过使用自己的本地训练数据(称为本地模型)微调全局模型来训练模型,并将本地模型更新发送回服务器;服务器根据聚合规则将本地模型更新聚合为全局模型更新,并使用它来更新全局模型。这种机器学习方式与传统机器学习方式的最大不同在于中心服务器不需要在训练时直接访问用户数据,实现了隐私数据与训练的分离,取而代之的是本地计算更新的参数会在中心用于训练。因此联邦学习能够在不损害用户数据隐私的前提下训练出一个令人满意的全局模型。而且,联邦学习较于传统的分布式机器学习,其可以很好的应对参与各方拥有数据和计算能力的异质性。从提出至今,联邦学习日益普及。
发明内容
为了克服上述现有技术的不足,本发明的目的是提供一种由区块链辅助的联邦学习无线网络模型,无线联邦学习算法的基础上加入了区块链智能合约,以来保护如今联邦学习存在的用户不可信或参数受到中毒攻击的问题。然后在多个联邦数据集上验证了所提出模型的性能,实验结果表明所提出模型可以有效抵御中毒攻击。为了提高该方案的效率,我们考虑了计算和通信资源分配的优化问题,提供了本地计算次数和全局通信轮次之间的权衡,以最小化时间和能量成本,并寻找了该问题的最优解。
为了实现上述目的,本发明采用的技术方案是:
一种由区块链辅助的联邦学习无线网络模型,包括以下步步骤:
步骤1,通过向良性训练数据集中秘密注入恶意流量来毒化训练数据,以破坏联邦学习过程,数据中毒攻击导致模型全局准确率下降;将无线联邦学习算法与联邦平均算法在数据中毒攻击下进行比较,发现无线联邦学习算法比联邦平均算法更加容易在不可信的信道上传输时遭受到中毒攻击,且受到的破坏更大。加入区块链可以极大地改善中毒攻击下的联邦学习,对于更容易受到攻击的无线联邦学习显得尤为重要。将联邦学习问题分为本地问题和全局问题,通过使用无线联邦学习算法解决问题,从而建立联邦学习模型。
步骤2,联邦学习模型与区块链结合:为了提升模型的安全性和可靠性,在靠近边缘服务器的一段设置区块链节点,使用Solidity语言开发智能合约,并将其部署在以太坊上。
步骤3,计算模型资源消耗:联邦学习的建模分析从时间和能耗两方面展示其资源消耗。加入区块链之后,由于块验证需要一定的时间,我们将在区块链模型中建立块中事务验证的时间消耗模型,与之前联邦模型中的计算和通信时间消耗一起作为最终的时间消耗。
步骤4,资源分配优化:同时优化时间和能量问题是非凸的,将该问题分解成几个具有凸结构的子问题,利用凸优化、连续凸近似等方法分别求解,在给定真实数值后计算得到问题的数值结果。
步骤5,利用智能合约验证上传参数,并将模型在无线网络中作为一个资源分配优化问题,将该问题分解成几个具有凸结构的子问题,然后逐一求解,并在给定真实数值后计算得到问题的数值结果,最终得到能够有效改善中毒攻击问题,且资源分配良好的模型。
本发明的有益效果是:
邦学习与区块链结合,保护用户不可信或参数受到中毒攻击的问题,提高了系统的可靠性和安全性;解决计算和通信资源分配优化问题,将该非凸问题分解为几个子问题,利用凸优化、连续凸近似等方法分别求解,实现了最小化时间和能量成本;对资源优化问题给出数值结果,利用PyTorch在多个数据集上对算法进行实验评估,数值和实验结果表明所提出的方案有效改善总能耗并能减轻数据中毒攻击对学习过程的影响。
附图说明
图1为本发明的模型框架图;
图2为加入数据中毒模型之前和之后,使用不同的联邦学习算法时,在FEMNIST和MNIST数据集下的联邦学习过程;
图3为FEMNIST和MNIST数据集下,两种联邦学习算法在中毒攻击后的联邦学习过程比较;
图4在每个全局轮都存在一个攻击者且加入区块链智能合约后无线联邦学习算法与联邦平均算法在不同数据集上的准确率比较
图5无线联邦学习算法和联邦平均算法在一般情况下,每个全局轮存在一个攻击者和存在攻击者且加入区块链智能合约三种情况下的准确率比较
图6为资源分配优化流程图;
图7为总能量消耗在优化前后的对比图。
具体实施方式
以下结合附图及实施例对本发明进一步叙述。
一种基于区块链的无线联邦学习模型,图1展示了发明模型框架,具体包括以下步骤:
步骤1、通过向良性训练数据集中秘密注入恶意流量来毒化训练数据,以破坏联邦学习过程,数据中毒攻击导致模型全局准确率下降;将无线联邦学习算法与联邦平均算法在数据中毒攻击下进行比较,发现无线联邦学习算法比联邦平均算法更加容易在不可信的信道上传输时遭受到中毒攻击,且受到的破坏更大。
假设攻击模式是带有逐点高斯随机噪声的随机扰动。考虑图2中的图表,x轴显示联邦学习过程的全局轮次,而y轴显示联邦学习过程的全局精度。两条线都显示了在整个联邦训练过程中,全局准确率随着全局轮数的变化而变化,但是针对两种不同的情况:正常的联邦学习过程和添加数据中毒攻击后的联邦学习过程。前两个图是无线联邦学习算法算法和联邦平均算法在FEMNIST数据集上两种情况的全局准确率比较。而后两个图是无线联邦学习算法算法算法和联邦平均算法在MNIST数据集上两种情况的全局准确率比较。我们可以看到数据中毒攻击确实对联邦学习过程产生了重大影响。
从图3中可以明显看出,在这两个数据集下,无线联邦学习算法在受到数据中毒攻击时的影响比联邦平均算法更显著。原因是,无线联邦学习算法在聚合中使用了比联邦平均算法更多的参数。由于数据中毒攻击的特点,受到的影响更大。
加入区块链可以极大地改善中毒攻击下的联邦学习,对于更容易受到攻击的无线联邦学习显得尤为重要。将联邦学习问题分为本地问题和全局问题,通过使用无线联邦学习算法解决问题,从而建立联邦学习模。
1)模型由物联网设备、移动设备等共N个终端用户和一个边缘服务器组成。终端设备负责收集或生成运行数据。每个终端用户n拥有本地数据的大小为Dn,然后,我们可以定义总数据大小即为D=∑Dn。联邦学习适合有监督学习,则我们使用
Figure BDA0003778029780000061
表示用户n的数据,xi为终端用户收集的数据,yi为xi的标签。
对于联邦学习问题,可以分为本地问题和全局问题。对于所有处在边缘设备的本地,则对于输入为xi的样本数据(xi,yi),任务是通过损失函数fi(w)找到表征输出yi的模型参数w∈Rd。设边缘设备n的损失函数为:
Figure BDA0003778029780000062
而全局问题中,只需解决如下全局损失函数的函数最小化问题:
Figure BDA0003778029780000063
2)为了更好的适用于我们提出的无线环境,我们使用无线联邦学习算法算法作为我们的联邦学习算法。
①设本地训练精度为θ∈(0,1),一个可控的η作为参数用来加权局部和全局梯度估计。
在边缘设备本地训练阶段,设备n为了在第t个全局轮收到本地模型
Figure BDA0003778029780000064
设备首先会从服务器接收反馈信息wt-1
Figure BDA0003778029780000065
(分别在后面的(4)和(5)中定义),并且在Kl的本地轮内求解(2)以得到满足(3)的θ近似解
Figure BDA0003778029780000071
Figure BDA0003778029780000072
Figure BDA0003778029780000073
②接着边缘设备n将本地模型参数
Figure BDA0003778029780000074
和梯度
Figure BDA0003778029780000075
发送到边缘服务器。边缘服务器将其进行如下聚合:
Figure BDA0003778029780000076
Figure BDA0003778029780000077
然后将
Figure BDA0003778029780000078
Figure BDA0003778029780000079
反馈给边缘设备,以此反复,直至全局损失函数(1)收敛。
步骤2、联邦学习模型与区块链结合。
1)在靠近边缘服务器的一端设置区块链节点,边缘服务器维护区块链的运行。区块链主要的功能在于运行可以验证参数的智能合约。使用Solidity语言开发智能合约,并将其部署在以太坊上。为了保证系统的安全性,分布式节点将利用开发的智能合约来维护分布式账本和验证交易。区块链设计中的验证契约是系统中检查数据传输时是否遭受中毒攻击安全的关键契约。在每一个全局轮中,以随机的方式选择参与联邦训练的边缘设备。虽然边缘设备通过机器学习本地模型产生不同模型更新参数,而这些参数会在一定的范围内。智能合约在执行后会将结果发送至服务器,以使服务器聚合那些没有遭受攻击的参数。
简单来说,加入区块链后,边缘设备首先在自己的数据上训练本地的训练模型,然后将训练后本地模型更新上传到区块链节点。这些本地模型更新将会触发智能合约,即记录为区块链交易,并被广播给其他区块链节点进行验证,智能合约将被作为事务并将其打包成块。区块链会执行共识过程来验证块中的事务。整个过程我们交给以太坊进行。
2)基于区块链的无线联邦学习算法步骤:
①输入w0,θ∈[0,1],η>0.
②对于t=1到Kg做以下循环:
③计算:UE n从服务器接收wt-1
Figure BDA0003778029780000081
并在Kl轮中解决(2),以获得满足(3)的θ个近似解
Figure BDA0003778029780000082
④通信:UE n传输
Figure BDA0003778029780000083
Figure BDA0003778029780000084
到边缘服务器。
⑤验证:使用区块链智能合约进行参数验证。
⑥聚合和回馈。边缘服务器分别按照(4)和(5)的方式更新全局模型wt
Figure BDA0003778029780000085
然后将其反馈给所有UE。
3)实验结果展示出对于受到中毒攻击的情况下,通过加入区块链智能合约,无线联邦学习算法和联邦平均算法在不同数据集下的测试准确性都有改善。
在我们的实验设置中,是通过有监督学习的分类任务来检验受到攻击的联邦学习在加入智能合约后的性能,分类任务在真实联邦数据集上使用具有交叉熵误差损失函数的多项逻辑回归模型(MNIST,FEMNIST)。我们将用户设备总数目设为100。由于允许两种联邦学习算法随机抽样,将每一轮参与的用户设备数量设为10,本地和全局轮数分别为40和600。对于数据集,为了体现联邦学习可以处理非独立同分布的数据,所有的数据集都有不同的样本大小。在MNIST中,每个用户包含三个常标签。FEMNIST是通过对扩展MNIST中的数据进行分区来构建的。所有数据集都是随机分割的,其中75%用于训练,25%用于测试。
①从图4我们可以看出在加入区块链智能合约后无线联邦学习算法和联邦平均算法均能恢复到相似的高度的准确性。
②我们将无线联邦学习算法和联邦平均算法在未遭受攻击和遭受攻击后是否加入区块链也进行了比较,以此验证我们加入区块链智能合约后确实能减轻中毒攻击对联邦学习过程的影响。
图5的a,b是无线联邦学习算法在MNIST和FEMNIST数据集上三种情况的表现,图中蓝线指在联邦学习过程未受到中毒攻击,图中黄线指在联邦学习过程受到中毒攻击后未采取任何举措的情况,而图中绿线展示了联邦学习过程受到中毒攻击时加入智能合约后的表现。可以看出,在联邦学习过程受到中毒攻击时加入智能合约后,全局准确率会较未采取任何举措有很大的提升,同时提升的还有收敛速度。
图5的c,d是联邦平均算法在MNIST和FEMNIST数据集上三种情况的表现,仍能得到上述结论。这同时说明了我们加入智能合约的举措同样适用于改善遭受到中度攻击的联邦平均算法,但正如之前所述,无线联邦学习算法较联邦平均算法有更高的准确率和更快的收敛速度,以及更适合于无线和数据非独立同分布的环境。因此我们仍选择前者作为基础。
步骤3、计算模型资源消耗。
1)时间消耗:联邦学习中总的时间消耗由本地计算时间、上行链路通信时间两部分组成。
由于本地计算时间只取决于本地轮数Kl,其与θ相关:
Figure BDA0003778029780000101
其中σ和ρ是取决于θ的常数,其取值范围是(0,1)。
至此我们以Tcp表示一个本地轮的计算时间,则一个全局轮的计算时间为KlTcp,以Tco表示一个全局轮的通信时间。则一个联邦学习全局轮的总时间消耗可作如下表示:
TFL=KlTcp+Tco
对于全局问题,对于一个任意的小常数∈>0,全局问题中,
Figure BDA0003778029780000102
在满足下式时实现了全局收敛:
Figure BDA0003778029780000103
其中w*是问题(1)的最优解,Kg为全局轮数。
当Fn(*)是L-smooth且β-strongly convex时,
Figure BDA0003778029780000104
其中
Figure BDA0003778029780000105
Figure BDA0003778029780000106
2)能量消耗:对于如下设置:我们用cn表示边缘设备n执行一个数据样本需要的CPU轮数,因为所有的样本具有相同的大小,则该设备进行一次本地轮计算所需的CPU周期数为cnDn,再设边缘设备n的CPU频率为fn,计算芯片的有效电容系数为
Figure BDA0003778029780000111
则其每轮计算的CPU能耗可表示为:
Figure BDA0003778029780000112
类似的,我们给出每一个通信轮的能量消耗为:
En,co=τnpn(snn) (11)
其中τn表示分配给边缘设备n的通信时间所占的分数:
Figure BDA0003778029780000113
其中,B为带宽,N0为背景噪声,
Figure BDA0003778029780000114
为平均信道增益。
与计算时间类似,本地计算的能量消耗也取决于本地轮数,则一个联邦全局轮的总能量消耗可作如下表示:
Figure BDA0003778029780000115
3)块验证的时间是由于边缘设备上传参数后触发智能合约,智能合约以交易的形式出现在区块链中,然后块生产者收集交易并将其打包到一个块中。然后,该块被在以太坊中等待被共识验证。因此,时间成本为:
Figure BDA0003778029780000116
其中fb是区块链中块产生频率,Sbl是区块大小,fs为边缘服务器为区块链分配的计算能力。
加入区块链之后由于块验证需要一定的时间,我们将在区块链模型中建立块中事务验证的时间消耗模型,与之前联邦模型中的计算和通信时间消耗一起作为最终的时间消耗。
步骤4、资源分配优化。
1)考虑在保证高质量联邦训练的同时最小化时间和通信成本是核心问题,这需要找到模型准确性和联邦训练过程的时间成本之间的权衡。基于此,解决如下优化问题:
Figure BDA0003778029780000121
Figure BDA0003778029780000122
Figure BDA0003778029780000123
Figure BDA0003778029780000124
Figure BDA0003778029780000125
0≤θ≤1,(18)
Figure BDA0003778029780000126
当边缘服务器降低自己的功耗时,一定会增加本地训练的时间,因此同时减少时间和能量消耗是矛盾的。为了达到能量消耗和训练时间之间的平衡,优化问题中使用权重λ(焦耳/秒)作为所提出模型为减少一个单位训练时间所愿意承担的额外能量消耗的量。根据优化理论,1/λ对于边缘设备能量的“硬约束”也起着格朗日乘子的作用。
由于目标函数中存在两个函数的若干乘积,所提出模型是非凸的。因此,我们将通过将其分解为多个简单的子问题来求解目标函数,图6为资源分配优化流程图。
2)首先我们将θ和η均固定,此时目标函数可分解为以下两个子问题:
Figure BDA0003778029780000131
Figure BDA0003778029780000132
Figure BDA0003778029780000133
Figure BDA0003778029780000134
Figure BDA0003778029780000135
Figure BDA0003778029780000136
SUB1:子问题1是一个cpu周期控制问题,用于本地计算时间和能量最小化;sub2:子问题2可以被视为上行功率控制,以确定终端的时间共享比例,以最小化终端的能量和通信时间;可以看出子问题1和子问题2都是凸问题。
3)对于子问题1:我们可以将处于边缘的设备按照执行能力进行分组,并设最优的fn
Figure BDA0003778029780000137
最优的Tcp
Figure BDA0003778029780000138
Group1中的设备始终以最高频率运行,此时
Figure BDA0003778029780000139
Group2中的设备即使以最低频率运行,也能很快完成任务,此时
Figure BDA00037780297800001310
Group3中的设备在其可行集内部具有最佳频率,此时
Figure BDA00037780297800001311
而由于边缘设备的本地计算是同时进行的,
Figure BDA00037780297800001312
取决于上述三组设备中运行时间的最大值,即:
Figure BDA00037780297800001313
Figure BDA0003778029780000141
Figure BDA0003778029780000142
Figure BDA0003778029780000143
每个设备的最优频率由
Figure BDA0003778029780000144
和该设备所属的子集决定。那么子问题1的最优解根据λ的不同而不同。当
Figure BDA0003778029780000145
时,只允许能够在最低频率运行的设备存在,此时
Figure BDA0003778029780000146
Figure BDA0003778029780000147
时,允许能够在最低频率运行的设备和其可行集内部具有最佳频率的设备存在,此时
Figure BDA0003778029780000148
Figure BDA0003778029780000149
Figure BDA00037780297800001410
Figure BDA00037780297800001411
时,只有在其可行集内部具有最佳频率的设备可以运行,此时
Figure BDA00037780297800001412
Figure BDA00037780297800001413
时,只有Group1中的设备运行,此时
Figure BDA00037780297800001414
4)对于子问题2:我们可以从(12)和(23)共同得出设备以其最小功率和最大功率发射时传输数据所需的最长和最短时间,接着我们定义一个间接的功率控制函数,其通过权重κ来调整功率,以控制此时应该传输的数据量:
Figure BDA00037780297800001415
其中W(·)是兰伯特函数。
5)最后,与子问题1一样,子问题2的最优解根据权重κ的不同而不同。当
Figure BDA0003778029780000151
意味着设备总以最小功率运行,此时
Figure BDA0003778029780000152
Figure BDA0003778029780000153
意味着设备会找到一个合适的功率发送数据,此时
Figure BDA0003778029780000154
Figure BDA0003778029780000155
设备愿意以最大功率运行,此时
Figure BDA0003778029780000156
Figure BDA0003778029780000157
我们观察到子问题1和子问题2的解不依赖于θ和η,因此可以得到
Figure BDA0003778029780000158
f*、τ*以及
Figure BDA0003778029780000159
其中*表示得到的值为最优值。而对于
Figure BDA00037780297800001510
我们可以通过最大化基站为区块链分配的计算能力得到,这些值将影响到所提出模型的第三个子问题,如下所示:
Figure BDA00037780297800001511
subjectto 0<θ<1,
Figure BDA00037780297800001512
虽然子问题3是非凸的,但我们可以看到,需要优化的变量只有θ和η,我们可以使用连续凸近似的方法来找到最优解。
6)我们通过对比优化前后的计算和通信能量消耗来说明我们的优化对于本问题是有效果的。图7蓝线表示当我们最小化时间消耗时总能量随着全局轮数的变化情况,此时用户设备采用最高的计算频率和最大发射功率。绿线表示当我们最小化功率能量消耗时总能量随着全局轮数的变化情况,此时用户设备采用最低的计算频率和最小发射功率。红色的线代表计算频率和发射功率随机的情况。而青色的线是我们采用上述优化后的结果。
步骤5、利用智能合约验证上传参数,并将模型在无线网络中作为一个资源分配优化问题,将该问题分解成几个具有凸结构的子问题,然后逐一求解,并在给定真实数值后计算得到问题的数值结果,最终得到能够有效改善中毒攻击问题,且资源分配良好的模型。

Claims (1)

1.一种由区块链辅助的联邦学习无线网络模型,其特征在于,包括以下步骤:
步骤1、通过向良性训练数据集中秘密注入恶意流量来毒化训练数据,以破坏联邦学习过程,数据中毒攻击导致模型全局准确率下降;将无线联邦学习算法与联邦平均算法在数据中毒攻击下进行比较,发现无线联邦学习算法比联邦平均算法更加容易在不可信的信道上传输时遭受到中毒攻击,且受到的破坏更大。加入区块链可以极大地改善中毒攻击下的联邦学习,对于更容易受到攻击的无线联邦学习显得尤为重要。将联邦学习问题分为本地问题和全局问题,通过使用无线联邦学习算法解决问题,从而建立联邦学习模型:
1)模型由物联网设备、移动设备等共N个终端用户和一个边缘服务器组成,终端设备负责收集或生成运行数据,每个终端用户n拥有本地数据的大小为Dn,然后,定义总数据大小即为D=∑Dn,联邦学习适合有监督学习,使用
Figure FDA0003778029770000012
表示用户n的数据,xi为终端用户收集的数据,yi为xi的标签;对于联邦学习问题,可以分为本地问题和全局问题,对于所有处在边缘设备的本地,则对于输入为xi的样本数据(xi,yi),任务是通过损失函数fi(w)找到表征输出yi的模型参数w∈Rd,设边缘设备n的损失函数为:
Figure FDA0003778029770000011
而全局问题中,只需解决如下全局损失函数的函数最小化问题:
Figure FDA0003778029770000021
2)为了适用的无线环境,联邦学习算法采用无线联邦学习算法解决问题;
①设本地训练精度为θ∈(0,1),一个可控的η作为参数用来加权局部和全局梯度估计;
在边缘设备本地训练阶段,设备n为了在第t个全局轮收到本地模型
Figure FDA0003778029770000022
设备首先会从服务器接收反馈信息wt-1
Figure FDA0003778029770000023
(分别在后面的(4)和(5)中定义),并且在Kl的本地轮内求解(2)以得到满足(3)的θ近似解
Figure FDA0003778029770000024
Figure FDA0003778029770000025
②接着边缘设备n将本地模型参数
Figure FDA0003778029770000026
和梯度
Figure FDA0003778029770000027
发送到边缘服务器,边缘服务器将其进行如下聚合:
Figure FDA0003778029770000028
Figure FDA0003778029770000029
然后将
Figure FDA00037780297700000210
Figure FDA00037780297700000211
反馈给边缘设备,以此反复,直至全局损失函数(1)收敛;
步骤2、联邦学习模型与区块链结合:
为了提升步骤1所述模型的安全性和可靠性,在靠近边缘服务器的一端设置区块链节点,使用Solidity语言开发智能合约,并将其部署在以太坊上,具体包括:
1)在靠近边缘服务器的一端设置区块链节点,边缘服务器维护区块链的运行,区块链主要的功能在于运行可以验证参数的智能合约,使用Solidity语言开发智能合约,并将其部署在以太坊上,为了保证系统的安全性,分布式节点将利用开发的智能合约来维护分布式账本和验证交易,区块链设计中的验证契约是系统中检查数据传输时是否遭受中毒攻击安全的关键契约,在每一个全局轮中,以随机的方式选择参与联邦训练的边缘设备,虽然边缘设备通过机器学习本地模型产生不同模型更新参数,而这些参数会在一定的范围内,智能合约在执行后会将结果发送至服务器,以使服务器聚合那些没有遭受攻击的参数;
2)基于区块链的无线联邦学习算法步骤:
①输入w0,θ∈[0,1],η>0.
②对于t=1到Kg做以下循环:
③计算:UE n从服务器接收wt-1
Figure FDA0003778029770000031
并在Kl轮中解决(2),以获得满足(3)的θ个近似解
Figure FDA0003778029770000032
④通信:UE n传输
Figure FDA0003778029770000033
Figure FDA0003778029770000034
Figure FDA0003778029770000035
到边缘服务器。
⑤验证:使用区块链智能合约进行参数验证。
⑥聚合和回馈:边缘服务器分别按照(4)和(5)的方式更新全局模型wt
Figure FDA0003778029770000036
然后将其反馈给所有UE;
步骤3、计算模型资源消耗:
联邦学习的建模分析从时间和能耗两方面展示其资源消耗,加入区块链之后,由于块验证需要一定的时间,在区块链模型中建立块中事务验证的时间消耗模型,与之前联邦模型中的计算和通信时间消耗一起作为最终的时间消耗,具体包括:
1)时间消耗:联邦学习中总的时间消耗由本地计算时间、上行链路通信时间两部分组成;由于本地计算时间只取决于本地轮数Kl,其与θ相关:
Figure FDA0003778029770000041
其中σ和ρ是取决于θ的常数,其取值范围是(0,1);
以Tcp表示一个本地轮的计算时间,则一个全局轮的计算时间为KlTcp,以Tco表示一个全局轮的通信时间,则一个联邦学习全局轮的总时间消耗可作如下表示:
Figure FDA0003778029770000042
对于全局问题,对于一个任意的小常数∈>0,全局问题中,
Figure FDA0003778029770000043
在满足下式时实现了全局收敛:
Figure FDA0003778029770000044
其中w*是问题(1)的最优解,Kg为全局轮数;
当Fn(*)是L-smooth且β-strongly convex时,
Figure FDA0003778029770000045
其中
Figure FDA0003778029770000046
Figure FDA0003778029770000047
2)能量消耗:用cn表示边缘设备n执行一个数据样本需要的CPU轮数,因为所有的样本具有相同的大小,则该设备进行一次本地轮计算所需的CPU周期数为cnDn,再设边缘设备n的CPU频率为fn,计算芯片的有效电容系数为
Figure FDA0003778029770000051
则其每轮计算的CPU能耗可表示为:
Figure FDA0003778029770000052
类似的,给出每一个通信轮的能量消耗为:
En,co=τnpn(snn) (11)
其中τn表示分配给边缘设备n的通信时间所占的分数:
Figure FDA0003778029770000053
其中,B为带宽,N0为背景噪声,
Figure FDA0003778029770000054
为平均信道增益;
与计算时间类似,本地计算的能量消耗也取决于本地轮数,则一个联邦全局轮的总能量消耗可作如下表示:
Figure FDA0003778029770000055
3)加入区块链之后由于块验证需要一定的时间,在区块链模型中建立块中事务验证的时间消耗模型,与之前联邦模型中的计算和通信时间消耗一起作为最终的时间消耗;块验证的时间是由于边缘设备上传参数后触发智能合约,智能合约以交易的形式出现在区块链中,然后块生产者收集交易并将其打包到一个块中,该块被在以太坊中等待被共识验证,因此,时间成本为:
Figure FDA0003778029770000056
其中fb是区块链中块产生频率,Sbl是区块大小,fs为边缘服务器为区块链分配的计算能力;
步骤4、资源分配优化:
同时优化时间和能量问题是非凸的,将该问题分解成几个具有凸结构的子问题,利用凸优化、连续凸近似等方法分别求解,在给定真实数值后计算得到问题的数值结果,具体包括:
1)考虑在保证高质量联邦训练的同时最小化时间和通信成本是核心问题,找到模型准确性和联邦训练过程的时间成本之间的权衡,基于此,解决如下优化问题:
Figure FDA0003778029770000061
Figure FDA0003778029770000062
Figure FDA0003778029770000063
Figure FDA0003778029770000064
Figure FDA0003778029770000065
0≤θ≤1, (18)
Figure FDA0003778029770000066
为了达到能量消耗和训练时间之间的平衡,优化问题中使用权重λ(焦耳/秒)作为所提出模型为减少一个单位训练时间所愿意承担的额外能量消耗的量,根据优化理论,1/λ对于边缘设备能量的“硬约束”也起着拉格朗日乘子的作用;由于目标函数中存在两个函数的若干乘积,所提出模型是非凸的,通过将其分解为多个简单的子问题来求解目标函数;
2)首先我们将θ和η均固定,此时目标函数可分解为以下两个子问题:
SUB1:
Figure FDA0003778029770000071
Figure FDA0003778029770000072
Figure FDA0003778029770000073
SUB2:
Figure FDA0003778029770000074
Figure FDA0003778029770000075
Figure FDA0003778029770000076
SUB1:子问题1是一个cpu周期控制问题,用于本地计算时间和能量最小化;sub2:子问题2可以被视为上行功率控制,以确定终端的时间共享比例,以最小化终端的能量和通信时间,可以看出子问题1和子问题2都是凸问题;
3)对于子问题1:我们可以将处于边缘的设备按照执行能力进行分组,并设最优的fn
Figure FDA0003778029770000077
最优的Tcp
Figure FDA0003778029770000078
Group1中的设备始终以最高频率运行,此时
Figure FDA0003778029770000079
Group2中的设备即使以最低频率运行,也能很快完成任务,此时
Figure FDA00037780297700000710
Group3中的设备在其可行集内部具有最佳频率,此时
Figure FDA00037780297700000711
而由于边缘设备的本地计算是同时进行的,
Figure FDA00037780297700000712
取决于上述三组设备中运行时间的最大值,即:
Figure FDA00037780297700000713
Figure FDA0003778029770000081
Figure FDA0003778029770000082
Figure FDA0003778029770000083
每个设备的最优频率由
Figure FDA0003778029770000084
和该设备所属的子集决定,那么sub1的最优解根据λ的不同而不同。当
Figure FDA0003778029770000085
时,只允许能够在最低频率运行的设备存在,此时
Figure FDA0003778029770000086
Figure FDA0003778029770000087
时,允许能够在最低频率运行的设备和其可行集内部具有最佳频率的设备存在,此时
Figure FDA0003778029770000088
Figure FDA0003778029770000089
Figure FDA00037780297700000810
Figure FDA00037780297700000811
时,只有在其可行集内部具有最佳频率的设备可以运行,此时
Figure FDA00037780297700000812
Figure FDA00037780297700000813
Figure FDA00037780297700000814
时,只有Group1中的设备运行,此时
Figure FDA00037780297700000815
4)对于子问题2:从(12)和(23)共同得出设备以其最小功率和最大功率发射时传输数据所需的最长和最短时间,定义一个间接的功率控制函数,其通过权重κ来调整功率,以控制此时应该传输的数据量:
Figure FDA00037780297700000816
其中W(·)是兰伯特函数;
5)与子问题1一样,子问题2的最优解根据权重κ的不同而不同,当
Figure FDA0003778029770000091
意味着设备总以最小功率运行,此时
Figure FDA0003778029770000092
Figure FDA0003778029770000093
意味着设备会找到一个合适的功率发送数据,此时
Figure FDA0003778029770000094
Figure FDA0003778029770000095
设备愿意以最大功率运行,此时
Figure FDA0003778029770000096
Figure FDA0003778029770000097
子问题1和子问题2的解不依赖于θ和η,因此可以得到
Figure FDA0003778029770000098
f*、τ*以及
Figure FDA0003778029770000099
其中*表示得到的值为最优值,而对于
Figure FDA00037780297700000910
可以通过最大化基站为区块链分配的计算能力得到,这些值将影响到所提出模型的第三个子问题,如下所示:
SUB3:
Figure FDA00037780297700000911
subject to 0<θ<1,
Figure FDA00037780297700000912
虽然子问题3是非凸的,但需要优化的变量只有θ和η,使用连续凸近似的方法来找到最优解。
步骤5、利用智能合约验证上传参数,并将模型在无线网络中作为一个资源分配优化问题,将该问题分解成几个具有凸结构的子问题,然后逐一求解,并在给定真实数值后计算得到问题的数值结果,最终得到能够有效改善中毒攻击问题,且资源分配良好的模型。
CN202210921819.6A 2022-08-02 2022-08-02 一种由区块链辅助的联邦学习无线网络模型 Pending CN115293256A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210921819.6A CN115293256A (zh) 2022-08-02 2022-08-02 一种由区块链辅助的联邦学习无线网络模型

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210921819.6A CN115293256A (zh) 2022-08-02 2022-08-02 一种由区块链辅助的联邦学习无线网络模型

Publications (1)

Publication Number Publication Date
CN115293256A true CN115293256A (zh) 2022-11-04

Family

ID=83825897

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210921819.6A Pending CN115293256A (zh) 2022-08-02 2022-08-02 一种由区块链辅助的联邦学习无线网络模型

Country Status (1)

Country Link
CN (1) CN115293256A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115994588A (zh) * 2023-03-16 2023-04-21 杭州海康威视数字技术股份有限公司 基于区块链与合同理论的联邦学习方法、装置及设备
CN116489163A (zh) * 2023-06-16 2023-07-25 清华大学 基于多链的边缘个性化协作学习方法及装置
CN117811722A (zh) * 2024-03-01 2024-04-02 山东云海国创云计算装备产业创新中心有限公司 全局参数模型构建方法、秘钥生成方法、装置及服务器

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115994588A (zh) * 2023-03-16 2023-04-21 杭州海康威视数字技术股份有限公司 基于区块链与合同理论的联邦学习方法、装置及设备
CN115994588B (zh) * 2023-03-16 2023-07-25 杭州海康威视数字技术股份有限公司 基于区块链与合同理论的数据处理方法、装置及设备
CN116489163A (zh) * 2023-06-16 2023-07-25 清华大学 基于多链的边缘个性化协作学习方法及装置
CN116489163B (zh) * 2023-06-16 2023-09-19 清华大学 基于多链的边缘个性化协作学习方法及装置
CN117811722A (zh) * 2024-03-01 2024-04-02 山东云海国创云计算装备产业创新中心有限公司 全局参数模型构建方法、秘钥生成方法、装置及服务器
CN117811722B (zh) * 2024-03-01 2024-05-24 山东云海国创云计算装备产业创新中心有限公司 全局参数模型构建方法、秘钥生成方法、装置及服务器

Similar Documents

Publication Publication Date Title
Cui et al. Security and privacy-enhanced federated learning for anomaly detection in IoT infrastructures
CN115293256A (zh) 一种由区块链辅助的联邦学习无线网络模型
Cao et al. An accurate traffic classification model based on support vector machines
Lv et al. Trust mechanism of feedback trust weight in multimedia network
CN112906903A (zh) 网络安全风险预测方法、装置、存储介质及计算机设备
CN114186237A (zh) 一种基于真值发现的鲁棒性联邦学习模型聚合方法
Olowononi et al. Federated learning with differential privacy for resilient vehicular cyber physical systems
Nie et al. Intrusion detection in green internet of things: a deep deterministic policy gradient-based algorithm
CN108924836A (zh) 一种基于深度神经网络的边缘侧物理层信道认证方法
CN114363043B (zh) 一种对等网络中基于可验证聚合和差分隐私的异步联邦学习方法
Kim et al. Collaborative anomaly detection for internet of things based on federated learning
CN115017541A (zh) 一种云边端协同的泛在智能联邦学习隐私保护系统及方法
Cui et al. Communication-efficient federated recommendation model based on many-objective evolutionary algorithm
CN116094721A (zh) 一种基于聚类的可扩展的分片共识算法
CN115310121A (zh) 车联网中基于MePC-F模型的实时强化联邦学习数据隐私安全方法
kumar Pulligilla et al. An authentication approach in SDN-VANET architecture with Rider-Sea Lion optimized neural network for intrusion detection
Lu et al. Defeat: A decentralized federated learning against gradient attacks
Moudoud et al. Toward secure and private federated learning for iot using blockchain
Hamdi Federated learning-based intrusion detection system for Internet of Things
CN112910873B (zh) 用于区块链事务异常检测的有用工作量证明方法及系统
CN114070775A (zh) 面向5g智能网联系统的区块链网络切片安全智能优化方法
Li et al. A lightweight web server anomaly detection method based on transductive scheme and genetic algorithms
CN117216788A (zh) 基于区块链的联邦学习隐私保护视频场景识别方法
CN116405262A (zh) 网络安全接入方法、装置、设备及存储介质
Yang et al. Horizontal federated learning

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination