一种半监督智慧城市网络设备识别方法及系统

文档序号:35127192发布日期:2023-08-14 20:51阅读:53来源:国知局
一种半监督智慧城市网络设备识别方法及系统

本发明涉及智慧城市领域,特别涉及一种半监督智慧城市网络设备识别方法及系统。


背景技术:

1、当今社会,随着智能化需求不断提高,智慧城市建设和发展的脚步逐渐加速,在各个领域给我们的工作生活都带来了极大便利。例如:在交通领域,有共享单车、电动车的投放,环保的同时方便人们出行;在物流领域,可以轻松获得物品运输信息、物品运输路线等;在医疗领域,能够实现病房智能化护理、药品跟踪监管以及远程医疗等功能;在农业领域,实现了智能化灌溉、智能调温调湿和实时监测等功能。

2、智慧城市建设过程中,随着物联网技术的发展,产生了越来越多的物联网设备。而数量庞大、种类繁多的物联网设备会给网络安全带来威胁,并且给网络管理带来更为严峻的挑战。针对这一情况,研究者们开始对网络设备进行分析,发现通过对网络设备进行准确、快速的识别,能够统计和评估网络空间中设备的分布状况和存在的漏洞,且能够对网络管理工作提供支撑。于是,我们提出了一种半监督智慧城市网络设备识别方法及系统,该系统先通过学习网络设备的特征、结构以及部分标签信息,获得最优的网络设备表示,再使用softmax函数对网络设备进行分类,从而保证网络设备识别的准确性和高效性。


技术实现思路

1、本发明要解决的技术问题是:设计一种半监督智慧城市网络设备识别方法及系统,能够实现对智慧城市中网络设备的有效分类。

2、为了达到上述目的,本发明采用了下列技术方案:

3、一种半监督智慧城市网络设备识别方法,该方法包含五个主要环节,步骤s10~s20为网络设备数据预处理环节,步骤s30为半监督智慧城市网络设备识别模型的构建环节,步骤s40为半监督智慧城市网络设备识别模型的优化环节,步骤s50为半监督智慧城市网络设备识别模型的训练环节,步骤s60为半监督智慧城市网络设备识别模型的结果输出环节。

4、s10、利用网络设备数据构建图结构g=(v,e,x);

5、s20、构建图结构g=(v,e,x)的n×n维邻接矩阵a;

6、s30、基于步骤s10和s20建立的图结构及其邻接矩阵,构建半监督智慧城市网络设备识别模型;

7、s40、针对步骤s30构建的半监督智慧城市网络设备识别模型,构建其模型优化的目标函数;

8、s50、设定半监督智慧城市网络设备识别模型的训练流程并进行迭代训练,最小化目标函数,从而确定该模型参数;

9、s60、利用步骤s30构建的半监督智慧城市网络设备识别模型以及步骤s50确定的模型参数,对网络设备数据进行识别与划分,并将分类结果进行输出。

10、进一步,该方法所述步骤s10包含以下具体步骤:

11、从智慧城市系统中采集网络设备数据,利用获取的网络设备数据构建图结构g=(v,e,x)。在构建过程中,将网络设备表示为图结构中的节点,网络设备间的信息传递作为图结构中的边,将网络设备的操作系统、网络设备开放的端口、开放端口的banner信息以及网络设备提供的服务等信息作为图结构中节点的特征,将标记的网络设备类型信息作为节点的标签。将构建的图结构记为g=(v,e,x),其中v={v1,v2,…,vn}表示由n个网络设备构成的集合,其中网络设备节点vn表示第n个网络设备(1≤n≤n);e={e1,e2,…,ef}表示网络设备节点之间存在的f条连边,其中第f条边(1≤f≤f)记为ef;x表示n×r维的网络设备节点的特征矩阵,每一行表示一个网络设备节点的特征,例如,第n(1≤n≤n)行xn=[xn1,xn2,…xnr]是网络设备节点vn的r个特征,其中网络设备节点vn的第r个特征记为xnr;y为一个维的标签矩阵,其中,和k分别表示含有标记的网络设备节点数和标签类别数,矩阵中第i行第j列元素即yij表示第i个网络设备节点vi与第j个类标签之间的关系,若网络设备节点vi属于该类别则yij=1,否则yij=0。

12、进一步,该方法所述步骤s20包含以下具体步骤:

13、将n×n维邻接矩阵记为a,矩阵中第i行第j列(1≤i≤n,1≤j≤n)元素即aij表示第i个网络设备节点vi和第j个网络设备节点vj的邻接关系,若网络设备节点vi和网络设备节点vj之间有连边则aij=1,否则,aij=0。

14、进一步,该方法所述步骤s30中的半监督智慧城市网络设备识别模型包含图自编码器模块、自训练聚类模块与类语义信息模块,在图自编码器模块中,通过gcn编码器获得网络设备节点的低维表示,并利用解码器来重构图结构信息对表示学习进行指导;自训练聚类模块中,使用k-means算法对学到的低维表示进行聚类,并利用其结果指导学习过程,学到的网络设备节点表示再反过来监督聚类的生成;类语义信息模块中,利用已有的标签信息从网络设备原始信息中提取同类网络设备的语义信息,来监督表示学习,使同类网络设备节点具有相近表示。

15、进一步,模型整体结构如附图1所示,所述步骤30中半监督智慧城市网络设备识别模型具体操作步骤如下:

16、s31、在图自编码器模块中,将图结构g=(v,e,x)输入到gcn编码器中进行编码,获得网络设备节点的表示向量,其编码过程的形式化表示如式(1)所示:

17、

18、其中,in表示n维单位矩阵,是的度矩阵,h(l)表示第l层的网络设备节点的特征向量,w(l)表示第l层的参数矩阵;h={h1,h2…,hn}是网络设备节点的表示向量的集合,其中网络表示hn表示第n个网络设备节点的低维表示(1≤n≤n)。编码器中σ表示激活函数relu(·),由式(2)定义:

19、

20、通过gcn编码器获得网络设备节点的低维表示后,再利用解码器来重构其信息。解码器采用简单的内积函数,如式(3)所示:

21、

22、其中,为重构的邻接矩阵,δ为sigmoid函数。在该模块中,通过将重构邻接矩阵与原始邻接矩阵进行对比,利用两者间的误差训练模型,从而获得网络设备节点表示。

23、s32、在自训练聚类模块中,先利用k-means算法对网络设备节点表示h进行聚类分析,获得u个聚类,然后使用学生t分布衡量网络设备节点表示hi与聚类中心向量的相似程度,如式(4)所示:

24、

25、其中,qiu表示网络设备节点vi属于聚类u的概率,获得了网络设备节点聚类的分布结果q,利用分布q来计算目标分布p,如式(5)所示:

26、

27、其中,piu同样表示网络设备节点vi属于聚类u的概率,但目标分布p具有更高的置信度,分布p依赖于分布q,分布q由网络设备节点表示参与计算得到,因而聚类结果会对学到的网络设备节点表示产生影响,而网络设备节点表示的好坏影响聚类结果的可信度,通过不断学习,获得可信度高的聚类结果,从而能够捕捉到同一类的网络设备信息,得到更优的网络设备节点表示。

28、s33、在类语义信息模块中,由于网络设备种类复杂,导致不能获取所有类别的网络设备标签信息,于是我们借鉴零样本学习的思想,使用类语义信息即类属性信息来监督指导模型训练,得到的网络设备节点表示不仅可以对已知类进行区分,还能对未知类进行识别。类语义信息由原始网络设备节点特征生成,其生成过程如式(6)所示:

29、

30、其中,c是可见的类标签,ci表示第i个网络设备节点的类别标签,xi表示第i个网络设备节点的特征向量,是类语义信息,μc表示可见类节点特征的均值,如式(7)所示,σc表示可见类节点特征的方差,如式(8)所示:

31、

32、

33、进一步,该方法所述步骤s40包含以下具体步骤:

34、s41、将s30所述图自编码器模块、自训练聚类模块与类语义信息模块设计损失函数,在图自编码器模块中,选用交叉熵损失函数来计算重构损失,重构损失越小,表明重构的邻接矩阵与原始矩阵越相似,学到的网络设备节点表示更优。交叉熵损失函数计算如式(9)所示:

35、

36、其中,n为节点数量,a为原始邻接矩阵a中的元素,值为0或1;为重构邻接矩阵中的元素,值在0到1之间。

37、s42、自训练聚类模块中,利用目标分布p指导表示学习,并监督实际分布q的更新,而由于分布p在分布q的基础上计算得到,则分布q能够反向监督分布p的更新,从而形成自训练聚类机制。采用kl散度来衡量两个分布之间的差异,如式(10)所示:

38、

39、s43、类语义信息模块中,通过对比由原始特征得到的真实类语义信息与由网络设备节点表示得到的预测类语义信息,来使同类节点的两种类语义信息更接近,即增加同一类节点间的相似性和不同类节点间的差异性,从而来指导监督网络设备节点表示的生成,获得更优的网络设备节点表示结果。该模块损失函数如式(11)所示:

40、

41、其中,k′是有标签节点的集合,和分别表示真实的和预测的类语义信息。

42、s44、则半监督智慧城市网络设备识别模型最终的目标函数如式(12)所示,超参数α>0。

43、l=lr+α(lc+ls) (12)

44、进一步,该方法所述步骤s50包含以下具体步骤:

45、s51、对步骤s30中的半监督智慧城市网络设备识别模型进行参数初始化,给定调节系数θ和迭代次数t,迭代执行步骤s52~s54,直到达到迭代次数,完成对半监督智慧城市网络设备识别模型的训练,获得模型的最优参数。

46、s52、将s10和s20获取的网络设备数据的邻接矩阵a和特征矩阵x作为输入,经过式(1)gcn编码器获取网络设备节点表示h={h1,h2…,hn}。

47、s53、按式(9)、式(10)和式(11)分别得到图自编码器损失lr、自训练聚类损失lc以及类语义信息损失ls。

48、s54、将得到的三个模块的损失输入到式(12)中,得到半监督智慧城市网络设备识别模型的总损失,进行反向传播,循环更新模型参数(神经网络参数w)。

49、进一步,该方法所述步骤s60包括以下具体步骤:

50、s61、通过s52~s54获得模型的最优参数,输入网络设备数据,经过编码器gcn得到网络设备节点的表示,再通过式(13)将每个网络设备节点表示中的元素值转成0-1之间的概率;

51、

52、其中,zi指网络设备节点表示hi的第i个元素,zj指网络设备节点表示hi的第j个元素。计算得到每个网络设备节点表示中各个元素的概率后,取最大概率所对应的类作为该网络设备节点的类别。

53、s62、将分类结果送至网络分析平台或运营商,从而得到网络空间中设备的分布状况以及存在的漏洞,且及时对网络进行管理。

54、本发明还提供了一种半监督智慧城市网络设备识别系统,用于实现上述半监督智慧城市网络设备识别方法,包括计算机处理器和内存、网络设备数据预处理单元、基于半监督智慧城市网络设备识别模型训练单元、基于半监督智慧城市网络设备识别模型结果输出单元。

55、进一步,所述网络设备数据预处理单元执行步骤s10~s20,对于获取到的网络设备数据,将网络设备作为节点,网络设备间的信息传递作为边,将网络设备的操作系统、网络设备开放的端口、开放端口的banner信息以及网络设备提供的服务信息作为网络设备节点特征,构建图结构及其邻接矩阵,并加载到计算机内存中;所述基于半监督智慧城市网络设备识别模型训练单元根据步骤s10~s20中构建的图结构及其邻接矩阵执行步骤s30~s50,构建半监督智慧城市网络设备识别模型,并基于定义的目标函数对模型进行训练;所述基于半监督智慧城市网络设备识别模型结果输出单元执行步骤s60,对网络设备进行分类,并将分类结果至网络分析平台或运营商,获得网络空间中设备的分布状况以及存在的漏洞,且及时对网络进行管理。

56、与现有技术相比本发明具有以下优点:

57、1、一种半监督智慧城市网络设备识别方法,建立了自监督机制,将图自编码器与自训练聚类统一到一个一体化框架中,提高对网络设备特征的提取能力,增强网络设备表示的内聚性,为网络设备分类提供更为丰富的判别性信息。

58、2、一种半监督智慧城市网络设备识别方法,设计了类语义信息模块,增加同一类网络设备节点间的相似性和不同类网络设备节点间的差异性,从而来指导监督网络设备节点表示的生成,同时与自监督机制结合,使学到的网络设备节点表示进行分类任务时更加有效。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1