技术新讯 > 电子通信装置的制造及其应用技术 > 一种基于联邦学习的校园网异常流量检测方法  >  正文

一种基于联邦学习的校园网异常流量检测方法

  • 国知局
  • 2024-08-02 14:21:39

本发明属于网络安全,涉及一种基于联邦学习的校园网异常流量检测系统,具体涉及一种基于lstm+sas-p transformer的联邦学习异常流量检测。

背景技术:

1、在当今的经济和科技环境下,网络运用已经成为人们生活的一部分,互联网已经覆盖到民生、经济、政务等人民生活的方方面面,成为推动国家发展的新动力。除此之外,网络直播、在线政务、智能教育、在线医疗以及远程办公等服务均获得了蓬勃发展,产生了巨大的经济效益[2],人工智能、区块链、5g技术、物联网技术以及超级计算等技术的深入研究,助力了网络服务方式与体验的逐步变革[3]。因此越来越多的学校相继建立起了自已的校园网,为教师和学生信息获取带来了方便。

2、但信息共享与信息安全历来是一对互相冲突的矛盾。由于计算机网络具有开放性、互连性、连接形式的多样性等特征,无论是在局域网还是在广域网中,都存在着技术弱点和人为疏忽等形成的潜在威胁,致使网络受到黑客、恶意软件或病毒的攻击。学校作为国家重要学术研究和试验项目的发展基地,其数据必须要采取严格的保护措施,实行非常严格的访问控制权限控制对这些数据的访问,否则不仅影响网络系统的使用效率和学校校园的管理工作,而且也影响校园的稳定。于是,我们急需设计一套系统,可以协助管理人员及时发现和预警校园网异常流量,建立一套行之有效的校园网络安全体系,从而保障校园网络的安全性、可靠性和稳定性。

3、网络异常检测是网络安全领域一种重要的防护手段,它能够及时发现网络传输过程中存在的异常流量,获取网络攻击行为,从而进行态势感知和采取针对性的处理措施,进而有效抵御网络入侵,提高系统的安全性,保护资产不被破坏,维护信息安全。当今使用网络的场景越来越多,网络流量也呈爆发式增长,对网络流量异常检测提出更高的要求,如何在众多流量中快速且高效检测出异常行为显得尤为重要。此外,新颖的网络攻击技术会对个人和学校的信息安全造成极大的威胁,零日漏洞和攻击也时常出现,而现有的网络异常检测工具在面对零日攻击时,往往显得无能为力,因此,需要开辟新的方向,结合新兴技术,加强网络异常检测的能力,保障网络系统的安全运行。

4、异常检测系统(intrusion detection system,ids)是指可以通过捕获网络中存在的恶意流量,检测其中的异常流量情况以及违反安全策略的行为,弥补防火墙只能依据特定的规则防范已知的网络攻击的不足,从而保护资源的完整性、私密性和有效性。

5、随着校园网及其研究的快速发展,出现了很多基于传统机器学习和深度学习的网络异常检测系统,但是无法广泛应用于校园网条件下,主要原因是:

6、(1)网络流量数据中极少有包含正负标签的样本,因此训练样本需要人为添加标签,成本极高。而基于无监督的机器学习算法虽然可以通过自动标注样本的方式来节省人力物力,但检测性能往往离实际网络环境下的应用需求还有一定差距,误报率和漏报率偏高。

7、(2)对于某些流量特征与正常网络流量差异较小的网络攻击类型,或者一些出现新型攻击类型,传统算法难以对其准确识别,因此需要利用不同数据源的网络流量数据来共同训练网络异常流量检测模型,而传统机器学习和深度学习无法应用于现实场景中复杂的网络环境。

8、(3)学校中保存着众多国家重点研发项目,校园网一旦出现异常事件,造成信息外泄,将带来极大的安全隐患,因此需要尽可能对校园网设备中的数据进行安全性处理。但是传统机器学习和某些深度学习在异常检测方面没有考虑到安全性,不能满足实际需求。

技术实现思路

1、为了克服上述现有技术的不足,本发明的目的是提供一种基于联邦学习的校园网异常流量检测方法,去中心化的联邦学习可以在多个参与方之间构建统一的数据安全、高效、合规的多源数据应用生态系统。为了能更好地解决校园网异常检测中的数据异构和数据安全性的问题,采用基于transformer的特征提取生成方法,对校园网中的数据进行降维和特征提取,并生成异常分数,从而判断数据样本是否异常。然后,采用了一种去中心化联邦学习模型,将不同设备之间的模型参数聚合,下发到每个校园网设备中重新训练,使每个设备的最终模型不仅具有全局模型的特点而且保留本地的差异性。在此基础上,设计并实现基于transformer和联邦学习的校园网异常检测系统,用于对校园网中的进行实时异常检测并可视化展示。

2、为了实现上述目的,本发明采用的技术方案是:

3、一种基于联邦学习的校园网异常流量检测方法,其特征在于,包括以下步骤:

4、(1)数据预处理模块:数据预处理模块用于对原始网络流量进行预处理并为选择的客户端划分数据集;其中由于数据集样本不平衡,采用合成少数类过采样技术(synthetic minority oversampling technique,smote)方法对异常流量数据过采样,从而平衡数据;

5、(2)随机选择参与训练的客户端;为了提高模型的泛化性,每次训练的时候不是全部客户端一起训练,而是从中随机选择部分客户端进行训练,并为每个客户端分配数据集;

6、(3)基于lstm+sas-p transformer的联邦学习异常流量检测模型;采用lstm+sas-p transformer提取网络流量的特征表示,并通过服务器计算异常评分,从而判断数据是否异常;

7、(4)基于联邦学习和差分隐私的校园网异常流量检测模型;由于客户端和服务器模型异构,于是使用一种新型的联邦学习训练协议训练模型,即传输异常特征表示和异常损失;此外,为了保护客户端的数据隐私,在训练期间使用高斯机制隐藏原本交互的数据;

8、(5)构建本地异常检测模型;通过本地异常检测模型的异常损失和全局损失进行模型训练,直至收敛,从而获得一个融合了全局和本地数据的本地异常检测模型,兼具有全局性和特殊性;

9、(6)检测分类;将获取和分配到的网络流量通过本地异常检测模型,从而获得本地异常检测结果。

10、进一步,一种基于联邦学习的校园网异常流量检测方法,具体包括:

11、1)数据预处理:

12、(1)数据聚合:将收集到的网络流量整合到一个csv文件中;

13、(2)数据去重:检查数据集中是否存在重复的数据记录,如有重复,删除其中的一条或多条记录;

14、(3)处理缺失值和错误值;将数据集中存在的某些数据缺失和错误值的流量进行删除;

15、(4)平衡正常和异常样本;使用smote算法,对数据集中的异常样本进行上采样,从而扩充异常数据,使得正负样本处于平衡状态[1];

16、(5)数据标准化、归一化;使用最大最小标准化(min-max),将属性数据按比例缩放,使其范围为[0,1];其标准化形式见式(1):

17、

18、其中,x表示当前数据值,是数据最小值,是数据最大值;

19、(6)独热编码;使用独热编码(one-hot encoding)方法,把离散型数据转换成向量,即向量中只有一位为1,剩下的位数都为0;

20、2)数据预处理之后,需要从所有客户端中选择随机选取参与者,服务器将聚合并处理后的数据集分配给参与训练的客户端,从而进行模型训练;

21、在基于lstm+sas-p transformer的联邦学习异常流量检测模型中,首先通过lstm进行特征提取,在此基础上通过sas-p transformer编码器学习网络流量中的正常和异常特征表示;其次,在学到的特征中添加差分隐私的高斯噪声用来保护隐私;并将特征而不是模型上传到服务器,减少通信开销;最后,服务器通过解码器将获得的所有特征结合并解码,计算异常评分;

22、3)基于联邦学习和差分隐私的校园网异常流量检测模型;

23、上述特征表示方法虽然能够将原始数据空间中的数据嵌入到新的特征空间中,从而改变了数据的原始分布,进而提取特征,采用差分隐私;在客户端对特征数据加入高斯噪声,攻击者无法从模型中提取到过多的敏感信息,降低数据泄露的风险;

24、4)异常流量检测效果评估与分析;

25、采用nsl-kdd、shuttle和spambase数据集对模型的实现效果进行评估,在这些数据集中,异常的定义依据领域特定的规则、数据分布的显著变化或者与大部分数据存在显著的差异;

26、5)评价指标;

27、采用受试者工作特征曲线下的面积(area under the receiver operatingcharacteristic curve,auc-roc)和精度-召回率曲线下的面积(area under theprecision-recall curve,auc-pr)两个指标来评估模型性能;

28、6)结果与分析;采用auc-roc和auc-pr作为评价指标,从而评价模型在保障了安全性、可扩展性的同时,也保持了较高的准确性。

29、进一步,基于lstm+sas-p transformer的联邦学习异常流量检测模型中,具体如下:

30、(1)基于lstm特征提取:

31、校园网环境的网络流量变化是连续性的,因此,在进行异常检测时,需要考虑到之前时间流经的流量,而传统cnn无法获取到前一时刻的特征,这就需要lstm进行提取;同时,为了解决单层lstm提取时序特征时适应性弱等问题,采用三层堆叠lstm网络;

32、将经过数据预处理后的数据输入到lstm中,先通过拥有32个单元的第一层lstm,得到一阶特征;然后通过拥有64个单元的第二个lstm,将不同深度的网络流量特征和数据进行合并,从而获得深度不同的特征数据;最后通过拥有128个单元的lstm,并使用relu激活函数进行变换,输入到sas-p transformer中;

33、(2)基于sas-p transformer学习特征表示:

34、sas-p transformer将经过lstm的网络流量数据编码到到潜在特征空间,并对其进行降维,然后服务器端使用sas-p transformer的解码器将l的潜在表示转换回原始空间;

35、给定输入样本,其根据sas-p transformer编码器的隐藏表示可以表示为

36、h=fe(sas-p_encoder(lstm(xi;we))) (2)

37、其中,fe为参数wd的编码器;

38、设自编码器对xi的重构向量为则可以通过解码器得到:

39、

40、其中,fd为参数wd的解码器;

41、基于可以提取两个附加因子,其中重构误差被用作异常流量的指标,见公式(4):

42、

43、特征编码的第二个附加因子就是重构残差向量,可以表示为

44、

45、本模型通过重构误差对残差向量进行了归一化;因此重构误差r本质上表示原残差向量的方向;综上,隐藏表示、重构误差和重构残差向量被用来表征输入样本,即输入样本的特征表示,而且,这三个因子可以唯一表征输入样本;

46、(3)异常评分模块:

47、在经过上述两个步骤之后,得到了网络流量的特征表示,将其上传到服务器上,并根据编码的特征表示为每个输入样本计算一个分数;特征编码器特征编码器旨在将输入数据转换成有利于异常检测任务的新表示形式;利用自动编码器来生成表示;特别地,从自编码器中提取隐藏表示、重构残差向量和重构误差三个因素形成表示;

48、异常评分模块用于判别lstm和sas-p transformer生成的特征是否正常;采用mlp对异常进行评分;异常评分的计算方法为:

49、si=sigmoid(fmlp(hi)) (6)

50、其中fmlp为服务器上的多层感知器,hi为第i个设备的特征表示生成的特征,si为异常评分,由云服务器发送给边缘设备;特别地,异常分数越高表示数据是异常数据的可能性越高,异常分数越低表示数据是正常数据的可能性越低;

51、实验中选用二元交叉熵损失函数进行训练,当yi=1即该数据为异常数据时,异常数据得分接近1;当yi=0即该数据为正常数据时,异常数据得分接近0;见式(7):

52、

53、其中,yi为第i个样本的标号,xi为第i个样本的异常得分;设备和服务器都根据异常分数计算损失,并使用该损失更新模型,直至收敛。

54、进一步,采用差分隐私;在客户端对特征数据加入高斯噪声,攻击者无法从模型中提取到过多的敏感信息,降低数据泄露的风险,具体如下:

55、(1)联邦学习中客户端层面的差分隐私;

56、在联邦学习中,模型的学习是分散在多个客户端上进行的;这意味着学习过程并不集中于一个中心节点,而是由分布式的客户端共同参与;这种分散式学习方式的一个关键优势是它提供了数据隐私保护;客户端在联邦学习中不直接共享原始数据二十共享模型参数,从而避免了数据泄露的风险;

57、采取一种客户端层面的差分隐私机制,既保证了数据的隐私性,又最小化其对异常流量检测模型的影响;因为噪声较小时对模型的影响最小,于是联邦学习进行训练和参数聚合时,不是将所有客户端用于模型训练,而是以一定的比例随机抽取部分客户端进行训练,这样由于服务器自己也无法得知每次参与训练的客户端的具体信息,从而提高隐私保护的水平;

58、ki=qi·u  (8)

59、其中,为第i轮参与训练的客户端,u为所有客户端的总数,为第i轮通信的抽样率;

60、添加噪声时,首先要把更新的参数进行裁剪,使其符合第二范式,然后添加高斯噪声并上传到服务器;见式(9)和(10):

61、

62、其中,l′k为第k个客户端添加噪声后的本地损失,lk为第k个客户端的本地损失,为第k个客户端第i个数据的本地数据的标签,为第k个客户端第i个数据的伪分类标签,k为客户端的个数,ki为第i轮参与训练的客户端,nk为第k个客户端dk中的样本个数,||·||为第二范式,s为敏感度,n(0,σ2s2)为高斯噪声;

63、(2)基于联邦学习和差分隐私的校园网异常流量检测模型;

64、因为上述lstm+sas-p transformer的联邦学习异常流量检测模型方法在客户端和服务器处的模型是不同的,于是需要采取一种新型的联邦学习训练协议;这种协议的核心思想是通过交换异常评分和损失信息,使得达到模型收敛状态;

65、在联邦学习框架下,一个云服务器s随机选择k个客户端进行模型训练,每个客户端对本地数据集dk使用提取特征表示;

66、

67、其中,dk为第k个边缘设备的本地数据,共有nk个样本{(x1,y1),(x2,y2),…,(,)},为第k个边缘设备的本地编码器,hk有nk个特征{h1,h2,…,}∈rm(m<d);

68、然后,为所有客户端的特征表示使用差分隐私添加高斯噪声;云服务器收集到所有参与训练的客户端上传的特征{h1,h2,…hk}后,使用生成异常分数{s1,s2,…,sk};见式(12):

69、

70、其中,是云解码器模型,sk是一组异常分数{s1,s2,…,};当云服务器利用解码器对上传的特征异常进行评估时,它会根据异常评分将数据发送至相应的客户端;

71、服务器利用获得的异常分数,对数据添加伪分类标记;标记方法主要通过比较和阈值的大小进行分类,若大于阈值,表示其有很大可能式异常数据,将伪分类标签设置为1;若小于阈值,表示其有很大可能是正常数据,将伪分类标签设置为0;见式(13):

72、

73、其中,为第k个客户端的伪分类标签,为第k个客户端第i个数据的异常分数,γ为阈值;

74、这些客户端作为数据处理的关键节点,不仅接收云服务器发送的异常评分,还根据本地数据的标签和接收到的伪分类标签来计算本地损失;如式(14):

75、

76、其中,为第k个客户端的本地损失函数,为第k个客户端第i个数据的本地数据的标签,为第k个客户端第i个数据的伪分类标签,k为客户端的个数,nk为第k个客户端dk中的样本个数;

77、这些客户端将计算出的本地损失,并添加高斯噪声后上传至服务器,如式(15);云服务器收集到所有参与训练的客户端上传的本地损失之后,使用fedavg联邦聚合算法计算模型的全局损失;其中,公式如下:

78、

79、其中,为全局损失,为第k个客户端添加差分隐私后的本地损失,k为客户端个数;客户端和云服务器根据全局损失更新模型参数,直到收敛。

本文地址:https://www.jishuxx.com/zhuanli/20240801/242554.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。