一种基于联邦学习的移动设备射频分布识别方法

文档序号:30334820发布日期:2022-06-08 06:33阅读:138来源:国知局
一种基于联邦学习的移动设备射频分布识别方法

1.本发明属于物联网信息安全技术领域,尤其涉及一种基于联邦学习的移动设备射频分布识别方法。


背景技术:

2.在物联网时代,随着传感器、移动设备的大幅增加,信息安全问题日益严峻。根据思科公司的预测,到2021年,全球通信系统将连接250多亿台设备。由于移动设备的固有属性,在不可信的环境中很容易受到恶意攻击。因此,移动设备需要进行用户认证。但是传统的认证方法存在缺陷,如数字签名,在海量的通信过程中容易受到各种密钥攻击,如入侵攻击、旁路攻击等。同时,由于硬件资源的限制,大部分移动设备无法支持高复杂度的计算。因此,利用ip或mac地址进行身份验证的传统方式效率不高。
3.射频指纹技术是一种新兴的身份认证方式,它通过分析移动设备发送信号的独特特征,从而识别设备的类别,进而有效地防止恶意假冒合法设备的身份。从传输信号中提取的移动设备的特征主要是由于制造过程中射频元件的差异造成的,包括功率放大器的缺陷、幅度和相位误差、载波频率差、相位偏移等。
4.通过机器学习或深度学习的算法,利用原始信号或提取的特征来识别移动设备。基于机器学习的射频指纹识别技术,需要对采集到的信号进行去噪和归一化预处理,提取各种指纹特征,并通过指纹特征的分析对移动设备进行识别。相比之下,基于深度学习的射频指纹识别技术不需要从信号中提取特征。原始数据经过预处理后,直接将预测的标签与在深度学习网络中注册在指纹库中的标签进行比较,以识别不同的移动设备。深度学习方法依赖于大量现有指纹的数据来训练的网络模型。但是,无论是基于机器学习的算法还是基于深度学习的算法,模型的训练都需要大量的原始信号数据或者提取的特征数据。然而,传统的数据处理方法需要将所有数据加载到一个集中的节点上,这种方法在物联网应用场景下已不再适用。


技术实现要素:

5.针对现有技术中的上述不足,本发明提供的一种基于联邦学习的移动设备射频分布识别方法,解决了数据分散带来的问题,且为本地的敏感数据提供了隐私保护。
6.为了达到以上目的,本发明采用的技术方案为:
7.本方案提供一种基于联邦学习的移动设备射频分布识别方法,包括以下步骤:
8.s1、通过瑞利衰落信道采集时域数据,并对所述时域数据进行预处理;
9.s2、根据所述预处理后的时域数据,利用移动设备构建基于联邦学习的分布式计算模型;
10.s3、根据所述时域数据的层次划分,利用动态样本选择算法对所述分布式计算模型进行训练,完成基于联邦学习的移动设备射频分布识别。
11.本发明的有益效果是:本发明涉及一种基于联邦学习的移动设备射频指纹分布式
识别的方法,首先根据射频信号数据分散存储、难以集中训练模型的特性,采用联邦学习算法实现分布式射频指纹识别,不仅解决了数据分散带来的问题,而且为本地的敏感数据提供了隐私保护。为了减少移动设备数据分布不均衡对联邦学习算法性能的影响,本发明在联邦学习算法的基础上,额外增加了动态样本选择算法,即根据异构设备的数据处理能力动态分配任务。与传统的深度学习算法相比,本发明提出的算法在减少计算时间的同时,提高了识别的准确度。
12.进一步地,所述步骤s1包括以下步骤:
13.s101、通过瑞利衰落信道采集时域数据;
14.s102、使用最小均方误差为目标的信道估计方法,将所述时域数据进行归一化处理;
15.s103、将所述时域数据划分为若干个子序列,并设输入的i/q子序列长度为t,每个子序列的长度为t;
16.s104、利用滑动窗口对各子序列进行分割,完成对时域数据的预处理。
17.上述进一步方案的有益效果是:本发明考虑到无线信道的变化,当子序列的持续时间很短,即子序列的长度很短时,可将信道视为不变,因此,本发明选择相当短的输入样本序列训练模型,能简化无线信道中系数的估计。
18.再进一步地,所述步骤s104中所述滑动窗口的长度与各子序列的长度相同。
19.上述进一步方案的有益效果是:本发明不再将长为t的完整i/q样本序列加载到训练模型中,而是将多个子序列依次地放入模型中,选择子序列的长度是关键的,因为子序列太短可能导序列内的方差很低,而序列间的偏差很高,子序列太长可能导致序列内的方差很高,序列间的偏差很低,在实践中,需要合理选择子序列的长度来平衡序列内的方差和序列间的偏差,考虑到无线信道的变化,当子序列的持续时间很短,即子序列的长度很短时,可将信道视为不变。因此,选择相当短的输入样本序列来训练模型,能简化无线信道中系数的估计。
20.再进一步地,所述步骤s2中的分布式计算模型包括若干个移动设备,以及汇总若干个移动设备更新数据的总服务器,且各移动设备训练各自的时域数据。
21.上述进一步方案的有益效果是:每个设备根据本地数据更新各自的联邦学习模型,并定期与服务器通信,以达到最小化总体学习损失率的目的。
22.再进一步地,所述步骤s2包括以下步骤:
23.s201、将预处理后的时域数据分发至不同的移动设备,并利用总服务器协调若干个移动设备;
24.s202、选择nk个移动设备,并利用联邦学习模型对分布在每个移动设备上的时域数据进行训练;
25.s203、将训练结果汇总至总服务器,完成基于联邦学习的分布式计算模型的构建。
26.上述进一步方案的有益效果是:本发明确定基于联邦学习的异构数据计算模型,即基于联邦学习的分布式计算模型。在该模型中,每个移动设备训练各自的样本数据,通过中心服务器参数的交换,最终确定模型。基于联邦学习的分布式计算模型,将不同数量的数据分发到不同的设备进行计算,并使用一个服务器来协调多个设备。每个设备根据本地数据更新各自的联邦学习模型,并定期与服务器通信,以达到最小化总体学习损失率的目的。
27.再进一步地,每个所述移动设备的平均梯度的表达式如下:
[0028][0029]
式中,gk表示移动设备的平均梯度,jk表示目标损失函数,wk表示分布式计算模型的参数权重;
[0030]
每个所述移动设备的权重更新的表达式如下:
[0031][0032]
式中,表示第t+1次迭代时参数的更新权重,η表示学习速率,表示第t次迭代时参数的权重。
[0033]
上述进一步方案的有益效果是:基于联邦学习的分布式计算模型旨在让服务器能汇总所有移动设备的更新,分布式计算模型中的优化目标定义为总体学习损失率,即每个移动设备的学习损失加权平均,权重为每个移动设备上训练样本的比例。
[0034]
再进一步地,所述联邦学习模型包括加密样本对齐模块、加密模型训练模型以及激励效果模块;
[0035]
所述加密样本对齐模块,通过加密样本对齐在各移动设备不暴露各自的用户样本id的情况下,找出共同用户,并共享共同用户的数据;
[0036]
所述加密模型训练模块,用于利用公钥加密体系,对所述共同用户数据的传递损失梯度进行加密,以实现分布式计算模型的更新;
[0037]
所述激励效果模块,用于利用永久性数据记录机制记录所述分布式计算模型的效果,并根据所述效果优化分布式学习模型。
[0038]
上述进一步方案的有益效果是:本发明中联邦学习过程由三个部分构成:加密样本对齐、加密模型训练以及激励效果。加密样本对齐为了以便结合这些样本的特征进行建模;加密模型训练对传递的损失梯度进行加密,实现模型的更新;效果激励是指通过区块链等永久性数据记录机制记录所建立模型的效果,以进一步优化联邦学习模型中的参数。
[0039]
再进一步地,所述步骤s3包括以下步骤:
[0040]
s301、根据时域数据,对每个移动设备的样本量以{n1,n2,......n k
}的升序进行排列,并设每个移动设备的本地更新时间为t1≤t2≤......≤tk,其中,nk表示样本总量;
[0041]
s302、设置样本量的增加阈值,并选择最小的样本量,判断所述最小样本量是否优化动态样本算法的目标函数,若是,则保持所述最小样本量的大小,并选择相同数量的样本量对所述分布式计算模型进行训练,完成基于联邦学习的移动设备射频分布识别,若则,根据所述增加阈值增加样本量,以及更新每个所述移动设备的本地更新时间,并返回步骤s301。
[0042]
上述进一步方案的有益效果是:本发明采用动态样本选择策略,首先用少量样本对模型进行训练,然后逐步增加样本量,以提高模型的运行效率,并提高模型的识别准确度。
[0043]
再进一步地,所述步骤s302中优化动态样本算法目标函数的条件为:
[0044][0045]
式中,表示基于样本集s的下降梯度,表示基于全样本集的下降梯度,θ表示给定常数。
[0046]
上述进一步方案的有益效果是:当移动设备需要处理海量数据时,联邦学习算法的迭代开销较高。如果所有的本地样本都是在一个移动设备上训练,那么在每一轮迭代中,更新模型的成本会很高。为了解决上述问题,本发明采用动态样本选择策略,本发明本发明动态样本算法目标函数的收敛条件为判断是否增加样本量的标准,首先用少量样本对模型进行训练,然后逐步增加样本量,从而提高模型的效率。
附图说明
[0047]
图1为本发明的方法流程图。
[0048]
图2为本实施例中实验环境布置示意图。
[0049]
图3为本实施例中动态样本选择对收敛性影响对比图。
[0050]
图4为本实施例中不同参数对实施例中所述动态样本选择的联邦学习算法影响对比图。
具体实施方式
[0051]
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
[0052]
实施例
[0053]
如图1所示,本发明提供了一种基于联邦学习的移动设备射频分布识别方法,其特征在于,包括以下步骤:
[0054]
s1、通过瑞利衰落信道采集时域数据,并对所述时域数据进行预处理,其实现方法如下:
[0055]
s101、通过瑞利衰落信道采集时域数据;
[0056]
s102、使用最小均方误差为目标的信道估计方法,将所述时域数据进行归一化处理;
[0057]
s103、将所述时域数据划分为若干个子序列,并设输入的i/q子序列长度为t,每个子序列的长度为t;
[0058]
s104、利用滑动窗口对各子序列进行分割,完成对时域数据的预处理,其中,所述滑动窗口的长度与各子序列的长度相同。
[0059]
本实施例中,根据采集的射频信号进行预处理。模型的输入数据是i/q样本序列,即通过瑞利衰落信道采集的时域数据。在训练原始数据之前,需要对这些数据进行预处理。首先,使用最小均方误差(mmse)为目标的信道估计方法,然后将数据值归一化为0到之间。在将整个数据序列加载到训练模型之前,需要将数据划分为几个子序列。假设输入i/q序列长度为t,每个子序列为t,则分区子序列的数量为m=t/t。我们设置了一个t长度的窗口,将该窗口滑动到长度为t的i/q序列上。本发明不再将长为t的完整i/q样本序列加载到训练模型中,而是将多个子序列依次地放入模型中。选择子序列的长度是关键的,因为子序列太短可能导序列内的方差很低,而序列间的偏差很高,子序列太长可能导致序列内的方差很高,序列间的偏差很低。在实践中,需要合理选择子序列的长度来平衡序列内的方差和序列间
的偏差。考虑到无线信道的变化,当子序列的持续时间很短,即子序列的长度很短时,可将信道视为不变。因此,选择相当短的输入样本序列来训练模型,能简化无线信道中系数的估计。
[0060]
s2、根据所述预处理后的时域数据,利用移动设备构建基于联邦学习的分布式计算模型,分布式计算模型包括若干个移动设备,以及汇总若干个移动设备更新数据的总服务器,且各移动设备训练各自的时域数据;其实现方法如下:
[0061]
s201、将预处理后的时域数据分发至不同的移动设备,并利用总服务器协调若干个移动设备;
[0062]
s202、选择nk个移动设备,并利用联邦学习模型对分布在每个移动设备上的时域数据进行训练;
[0063]
s203、将训练结果汇总至总服务器,完成基于联邦学习的分布式计算模型的构建。
[0064]
本实施例中,所述联邦学习模型加密样本对齐模块、加密模型训练模型以及激励效果模块;所述加密样本对齐模块,通过加密样本对齐在各移动设备不暴露各自的用户样本id的情况下,找出共同用户,并共享共同用户的数据;所述加密模型训练模块,用于利用公钥加密体系,对所述共同用户数据的传递损失梯度进行加密,以实现分布式计算模型的更新;所述激励效果模块,用于利用永久性数据记录机制记录所述分布式计算模型的效果,并根据所述效果优化分布式学习模型。
[0065]
本实施例中,每个所述移动设备的平均梯度的表达式如下:
[0066][0067]
式中,gk表示移动设备的平均梯度,jk表示目标损失函数,wk表示分布式计算模型的参数权重。
[0068]
本实施例中,每个所述移动设备的权重更新的表达式如下:
[0069][0070]
式中,表示第t+1次迭代时参数的更新权重,η表示学习速率,表示第t次迭代时参数的权重。
[0071]
本实施例中,确定基于联邦学习的异构数据计算模型,即基于联邦学习的分布式计算模型。在该模型中,每个移动设备训练各自的样本数据,通过中心服务器参数的交换,最终确定模型。基于联邦学习的分布式计算模型,将不同数量的数据分发到不同的设备进行计算,并使用一个服务器来协调多个设备。每个设备根据本地数据更新各自的联邦学习模型,并定期与服务器通信,以达到最小化总体学习损失率的目的。联邦学习过程由三个部分组成:加密样本对齐、加密模型训练和激励效果。加密样本对齐是指利用基于加密的方式,在每个设备不泄露数据的前提下,找到双方共同的样本,以便结合这些样本的特征进行建模;加密模型训练是指利用公钥加密体系,对传递的损失梯度进行加密,实现模型的更新;效果激励是指通过区块链等永久性数据记录机制记录所建立模型的效果,以进一步优化联邦学习模型中的参数。基于联邦学习的分布式计算模型旨在让服务器能汇总所有移动设备的更新。模型中的优化目标定义为总体学习损失率,即每个移动设备的学习损失加权平均,权重为每个设备上训练样本的比例。具体的过程可以概括为:首先选择nk个移动设备,然后使用联邦学习对分布在每个设备上的数据进行训练。在给定学习速率η的情况下,
在本地计算每个设备上的平均梯度并将计算结果发送给服务器。对于第k个移动设备,它的权重更新为
[0072]
s3、根据所述时域数据的层次划分,利用动态样本选择算法对所述分布式计算模型进行训练,完成基于联邦学习的移动设备射频分布识别,其实现方法如上:
[0073]
s301、根据时域数据,对每个移动设备的样本量以{n1,n2,......n k
}的升序进行排列,并设每个移动设备的本地更新时间为t1≤t2≤......≤tk,其中,nk表示样本总量;
[0074]
s302、设置样本量的增加阈值,并选择最小的样本量,判断所述最小样本量是否优化动态样本算法的目标函数,若是,则保持所述最小样本量的大小,并选择相同数量的样本量对所述分布式计算模型进行训练,完成基于联邦学习的移动设备射频分布识别,否则,根据所述增加阈值增加样本量,以及更新每个所述移动设备的本地更新时间,并返回步骤s301。
[0075]
本实施例中,优化动态样本算法目标函数的收敛条件为:
[0076][0077]
式中,表示基于样本集s的下降梯度,表示基于全样本集的下降梯度,θ表示给定常数。
[0078]
本实施例中,在联邦学习中,当数据在每个移动设备上分布不均衡时,可能导致少数设备需要较长时间去计算数据,无法在规定的时间内完成本地更新并上传到服务器。针对异构移动设备间数据分布不均衡的问题,需要对数据量进行多层次量化,以分析联邦学习的性能。通过设置一些阈值来调整移动设备的数据量,我们可以区分需要处理大量数据的设备和只需要处理少量数据的设备。假设所有移动设备的容量几乎相同,并且每个移动设备的样本量可以按{n1,n2,......n k
}的升序排列,则每个移动设备的本地更新时间可计算为t1≤t2≤......≤tk,本地更新时间随样本量的大小呈线性增加。
[0079]
由于数据通过分布式移动设备独立生成,来自不同设备的数据具有不同的分布特征,导致进行本地学习时使用的训练数据非常不平衡。动态样本选择算法能有效减弱不平衡的数据分布对模型训练的影响。该方法根据异构设备的数据处理能力分配任务,在保证学习模型的准确性的前提下,大幅度地提高模型的运行效率。
[0080]
(3)根据数据量的层次划分,使用动态样本选择算法模型,减轻不平衡的数据分布对模型训练的影响。移动设备具有不同的数据处理能力,当少数设备需要处理大量数据时,则执行本地更新的时间会急剧增加。以往的研究表明,使用动态样本选择算法可以满足异构移动设备处理大量数据的要求,加快数据处理算法在移动设备上的收敛速度。具体来说,动态样本选择算法通过计算批量梯度得到的方差估计来增加训练样本的大小。该算法可以在开始的时候设置较小的初始值,动态地增加训练样本量。在保证算法预期准确度的前提下,降低计算量。对于设备k上建立的本地样本集sk,动态样本选择算法的目标函数可以描述为设备k的平均损失函数l(f(w,xk),yk),w为算法权重,xk为输入数据,yk为输出数据。
[0081]
在第一次迭代中,首先选择一个相对规模较小的样本集,并确定是否能优化目标函数。如果样本集能提高目标函数的值,则在下一次迭代中保持样本集的大小,并选择相同数据量的新样本集来完成迭代。反之,如果样本集不能优化目标函数,则增加样本量,并下一次迭代中选择更多的新样本集。在动态样本选择算法的梯度下降过程中,表示目
标函数j关于参数w的下降方向。为了实现目标函数的收敛,可以将收敛条件表示为
[0082]
当移动设备需要处理海量数据时,联邦学习算法的迭代开销较高。如果所有的本地样本都是在一个移动设备上训练,那么在每一轮迭代中,更新模型的成本会很高。为了解决上述问题,本发明采用动态样本选择策略。首先用少量样本对模型进行训练,然后逐步增加样本量,从而提高模型的效率。
[0083]
在算法的具体实施过程中,服务器向每个移动设备发送dk,并且每个设备将自己的样本数nk与dk进行比较。如果nk《dk,使用所有的本地样本进行训练,不作任何调整,并使用随机梯度算法进行本地的梯度下降运算。另外,选择一些移动设备来调整梯度下降参数。每一次迭代的样本量由批量梯度计算得到的方差估计值确定。该算法的复杂度可以表示为其中,ε表示允许的计算误差,ω表示移动设备之间的数据处理任务分配量。
[0084]
本实施例中,在基于联邦学习的射频指纹识别算法中,首先考虑采用动态样本选择算法与没有采用动态样本选择的分布式训练模型的收敛性进行对比;此外,还考虑了模型中不同参数下所提出算法的准确度。分布式射频指纹识别任务在图2所示实验的部署环境中实现,其中,包括4个x310 usrp sdr作为发送器,一个x310 usrp sdr作为接收器,通过信噪比为5db的瑞利衰落信道,记录的i/q样本数据以5m/s的速率接收,频率为2.45ghz,最终样本总量为2000万。
[0085]
本实施例中,根据实验中收集到的数据,本发明将学习率设为0.2,并将移动设备的数量分别设置为50、100和200个。图3展示动态样本选择算法(dasa)和不使用样本选择的随机梯度算法(fga)的学习损失率的对比。与随机梯度算法(fga)相比,动态算法(dasa)能有效地降低不同移动设备的学习损失率。图4显示在dasa算法和fga算法中射频指纹识别准确度的对比。与fga算法相比,dasa算法在不同移动设备数量下获得更高的识别准确度。另外,dasa算法可以在400-600次迭代中收敛到最终的准确度结果,而fga算法需要在1000次迭代后完成收敛。这说明dasa算法在保证识别准确度的同时,能加快收敛并降低计算量。
[0086]
本发明通过以上设计,不仅解决了数据分散带来的问题,而且为本地的敏感数据提供了隐私保护。为了减少移动设备数据分布不均衡对联邦学习算法性能的影响,本发明在联邦学习算法的基础上,额外增加了动态样本选择算法,即根据异构设备的数据处理能力动态分配任务。与传统的深度学习算法相比,本发明提出的算法在减少计算时间的同时,提高了识别的准确度。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1