CN116662852A - 基于流量采样的设备类型识别方法、终端设备和存储介质 - Google Patents

基于流量采样的设备类型识别方法、终端设备和存储介质 Download PDF

Info

Publication number
CN116662852A
CN116662852A CN202310615867.7A CN202310615867A CN116662852A CN 116662852 A CN116662852 A CN 116662852A CN 202310615867 A CN202310615867 A CN 202310615867A CN 116662852 A CN116662852 A CN 116662852A
Authority
CN
China
Prior art keywords
node
graph
vector
layer
updating
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
CN202310615867.7A
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.)
Hunan University
Original Assignee
Hunan 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 Hunan University filed Critical Hunan University
Priority to CN202310615867.7A priority Critical patent/CN116662852A/zh
Publication of CN116662852A publication Critical patent/CN116662852A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/29Graphical models, e.g. Bayesian networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/042Knowledge-based neural networks; Logical representations of neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种基于流量采样的设备类型识别方法、终端设备和存储介质,不需要采集完整的设备流量,仅需在网关处进行流量的采样,即可进行设备识别。为了应对流量特征缺失的问题,传统的张量填充算法学习张量行、列、深度对应的嵌入本身,不能推广到未知的行、列或深度,存在需要反复重训练,缺失特征补全耗时长,开销大的问题。本发明提出了一种归纳式张量填充方法,该方法能够利用历史信息,学习生成嵌入的函数,进行快速、有效设备流量特征补全。

Description

基于流量采样的设备类型识别方法、终端设备和存储介质
技术领域
本发明涉及深度学习和设备识别技术领域,特别是一种基于流量采样的设备类型识别方法、终端设备和存储介质。
背景技术
随着嵌入式系统,无线通信,云计算和人工智能的发展,物联网在工业,家庭和办公领域得到广泛应用。为了保证物联网的安全和服务管理,及时识别物联网设备对整个物联网环境的管理是非常重要的。例如,网络服务提供商可以为识别为智能音响的设备,分配更高的带宽来提高用户体验和满意度;可以为识别为烟雾报警器或智能门锁的设备,提供更可靠的通信服务以确保用户的生命安全。
基于流量特征的设备识别是一类有效的设备识别方法,其通过从物联网设备的完整流量中提取诸如时间间隔、通信流量和协议等特征,并应用机器学习多分类器如随机森林、支持向量机、卷积神经网络、长短期记忆网络等,对设备流量行为特征进行分类,从而实现设备的识别。该类方法可大致分为三步:(1)采集设备的完整流量;(2)从采集的完整设备流量中提取设备流量行为特征;(3)将流量特征输入到设备识别模型,即机器学习多分类器中,进行设备类型的识别与分类。
尽管这类基于流量特征的设备识别,识别准确性较高。然而,其仍然存在一些不可忽略的技术问题,即它们依赖于从完整的流量流中提取特征,如源/目的地址、源/目的端口、网络协议、上下行数据包长度的平均/标准偏差、持续时间、有效载荷等。而获得完整的数据流需要在网关上连续捕获数据包,这不仅会增加网关的计算负担和存储压力,还可能影响网络通信速度和稳定性,进而造成方法的鲁棒性和实用性较差。
另外,一种基于时间序列的环保设备识别方法也是一种有效的设备识别方法。这种方法,虽然不是基于设备流量的识别方法,但它仍然需要采集完整的环保设备实时波形数据。即使它们使用了图神经网络提取灰度像图像的节点特征,并使用灰度特征构建二型模糊分类网络,对模糊规则进行筛选以达到较高的设备识别精度。但当设备数目多的时候,仍然会造成较大的数据采集开销,即数据采集源头的开销仍然存在。另外,二型模糊分类网络可能需要更多的计算资源和时间来处理更高维度、更复杂的数据,而且可能存在过拟合或欠拟合的风险,且建模成灰度图像可能会损失一些环保设备波形数据的细节信息,而且可能受到噪声或干扰的影响,造成识别精度不佳。
与此同时,还有一种基于图神经网络的电力物联网设备异常检测方法。这种方法使用图神经网络进行物联网设备的异常检测,在数据采集源头仍然需要完整的收集电力物联网中不同设备的流量数据和业务数据,当入网的设备数目多的时候,仍然会造成较大的数据采集开销,给数据采集源,例如网关,造成大的负担,进一步影响其作为网络转发设备的基础功能。
发明内容
本发明所要解决的技术问题是,针对现有技术不足,提供一种基于流量采样的设备类型识别方法、终端设备和存储介质,解决传统基于设备流量特征的设备识别方法依赖于在网关处采集与存储完整的设备流量,网关计算负担和存储压力大,导致设备识别方法鲁棒性和实用性差的问题。
为解决上述技术问题,本发明所采用的技术方案是:一种基于流量采样的设备类型识别方法,包括以下步骤:
S1、对物联网设备进行间断的数据包采集;
S2、提取采集的数据包的特征,得到各个数据包的特征向量,所有数据包的特征向量堆叠形成三阶稀疏张量,利用所述三阶稀疏张量构建二分图G={Vm,Vw,E},其中二分图的左节点集合Vm为设备集合,右节点集合Vw为数据包测量窗口集合,左节点集合与右节点集合之间的边集E为特征集合;
S3、将所述二分图作为设备识别模型的输入,得到更新后的设备识别模型。
本发明仅需在网关处进行流量的采样即可进行基于设备流量特征的设备识别,不需要采集完整的设备流量,因此减轻了测量成本和存储压力,能够解决现有基于流量特征的设备识别方法开销大、实用性差的问题,降低了识别成本。
本发明中,步骤S1的具体实现过程包括:
设置多个测量窗口;
随机选择部分测量窗口,采集选择的测量窗口内的设备流量。
步骤S3中,所述设备识别模型包括:
第一图神经网络消息传递层,用于对输入的二分图进行第一次图信息传递,更新二分图中节点、边的向量表征;
第二图神经网络消息传递层,用于根据第一图神经网络消息传递层输出的二分图中的2跳邻居关系,更新第一图神经网络消息传递层输出的二分图中的节点、边的向量表征;
缺失特征补全层,用于根据第二图神经网络消息传递层输出的二分图中的节点信息,估计缺失的特征边,并输出补全后的特征边集合;
卷积单元,用于对补全后的特征边集合进行卷积操作;
线性输出层,输入为拼接特征,输出为设备的类别;所述拼接特征获取过程包括:对卷积单元输出的特征进行展平操作,拼接展平操作后的特征与第二图神经网络消息传递层输出的节点向量,得到所述拼接特征。
本发明以归纳的方式学习如何生成嵌入,而不是学习嵌入本身,能有效、快速的补全设备未采样流量的行为特征,且能应对新到来的设备,从而更满足设备识别的场景,提高了设备类型识别精度。
所述第一图神经网络消息传递层更新二分图中节点、边的向量表征的具体实现过程包括:
通过下式构造第1次图信息传递中构建节点v的邻居聚合向量
N(v)为v的邻居节点集合,为节点v的邻居节点。/>为节点v的1跳邻居节点u的初始向量表征,/>为边uv的初始向量表征,CONCAT(·)表示拼接操作,Mean{·}为均值聚合函数,ReLU(·)为非线性激活函数,/>为第1次图信息传递中,构造过程的可学习参数;
利用下式更新节点向量表征:其中,为节点v在第1次图信息传递中更新的表征向量,/>为第1次图信息传递中,节点表征更新过程的可学习参数;
利用下式更新边向量表征:其中,/>为边uv在第1次图信息传递中更新的表征向量,/>为第1次图信息传递中,边表征更新过程的可学习参数。
通过第1次的图信息传递,图中的每一个节点更新一次,它的表征能够捕捉到其一阶展开的邻居子树结构的复杂特征和模式,例如节点的度数、邻居的属性分布、邻居之间的连接关系等。这些特征和模式可以反映节点在图中的位置和角色,以及节点与邻居之间的相似性和差异性。第二图神经网络消息传递层更新第一图神经网络消息传递层输出的二分图中的节点、边的向量表征的具体实现过程包括:
通过下式构造第2次图信息传递中节点v的邻居聚合向量 为节点u在第1次图信息传递中的向量表征,/>为第2次图信息传递中,构造过程的可学习参数;
更新节点向量表征: 为节点v在第2次图信息传递中更新的表征向量,/>为第2次图信息传递中,节点表征更新过程的可学习参数;
更新边向量表征: 为边uv在第2次图信息传递中更新的表征向量,/>为第2次图信息传递中,边表征更新过程的可学习参数。
通过第2次的图信息传递,图中的每一个节点进行第二次的更新,可以让节点的表征包含了其二阶展开的邻居子树信息和图结构信息,从而提高了节点表征的质量和表达能力。这意味着节点的表征不仅能够反映其直接邻居的信息,还能够反映其间接邻居的信息,例如节点的聚类系数、邻居的度数分布、邻居之间的路径长度等。这些信息和图结构信息可以更多地反映出更远的局部子图信息,甚至是整个图的信息。这样就能够捕捉到图中更复杂和更高阶的特征和模式,有利于后续的缺失特征补全任务。所述缺失特征补全层获得补全后的特征边集合的具体实现过程包括:
估计缺失特征边:其中,/>是节点v和u之间缺失特征边的估计,为一个K维的特征向量,/>和/>分别为节点v和u在第二图神经网络消息传递层中更新的表征向量,Wpred为可学习参数,Sigmoid(·)为非线性激活函数;
将所有缺失特征边的估计值合并到已知的特征边集合中,得到补全后的特征边集合
经过两次图消息传递后,缺失特征可以通过缺失特征补全层进行估计。相较于传统的张量补全算法,其优势主要有三点:(1)它可以在不依赖于辅助信息的情况下,利用图的结构特征来估计缺失的特征;(2)特征补全过程是归纳式的,它可以利用历史信息,推广到未知的行、列、深度,而不需要重新训练模型;(3)它可以利用图模式来捕获节点之间的相互依赖关系,从而提高特征估计的准确性。
本发明所述卷积单元包括多个串联的卷积模块。
本发明中,所述线性输出层首先将输入的拼接特征映射到固定长度(即,设备类型的数目),再通过softmax计算所属设备的概率,最大概率值对应的设备类型即为最终的设备类别。
作为一个发明构思,本发明还提供了一种终端设备,其包括:
一个或多个处理器;
存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现本发明上述方法的步骤。
作为一个发明构思,本发明还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现本发明上述方法的步骤。
与现有技术相比,本发明所具有的有益效果为:
1、本发明不需要采集完整的设备流量,只在少数随机窗口中采集设备流量,仅需在网关处进行流量的采样即可进行基于设备流量特征的设备识别,不需要采集完整的设备流量,因此减轻了测量成本和存储压力,能够解决现有基于流量特征的设备识别方法开销大、实用性差的问题。本发明采用间断的数据包采集,降低了识别成本。
2、本发明对设备使用二分图建模,能有效的解决因只在少数随机窗口中采集设备流量降低识别成本所带来的特征缺失问题。因此能以相对现有基于流量特征的设备识别方法低开销的方式,带来高的设备识别精度。
3、本发明提出了一种基于图神经网络的缺失特征补全模型,与传统的张量填充算法不同,该模型能够利用历史信息,学习生成嵌入的函数,当新设备到来时,能够进行未采样流量缺失特征的快速、高精度补全,本发明以归纳的方式学习如何生成嵌入,而不是学习嵌入本身,能有效、快速的补全设备未采样流量的行为特征,且能应对新到来的设备,从而更满足设备识别的场景,能实现高精度的设备类型识别。
4、本发明提出了一种基于卷积神经网络的设备识别模型,该模型能够利用补全的设备特征和从图神经网络学习到的节点嵌入来实现高识别精度设备识别。本发明利用将特征补全损失与设备识别损失混合的损失函数,能够有效的使得特征补全任务和设备识别任务达到平衡。通过最小化损失函数,补全的特征一方面将更好地适应特征空间的结构,另一方面将使得补全后的特征跟随标签具备一定的区分性。
因此能在解决现有基于流量特征的设备识别方法开销大,模型鲁棒性差的同时,实现较高的设备识别精度。
附图说明
图1是本发明实施例基于流量采样的设备识别方法的流程图;
图2是本发明实施例间断数据包采集的示意图;
图3是本发明实施例的数据建模与处理过程图;
图4为现有张量填充的缺点示意图;
图5本发明实施例张量填充的数据建模;
图6是本发明实施例的网络结构示意图;
图7是本发明实施例的张量填充算法与传统张量填充算法的性能对比。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地说明,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
传统基于设备流量的设备识别方法,需要采集完整的设备流量,开销大。为了克服上述问题,本发明实施例提出了一种基于设备流量的设备识别方法,该方法相比传统基于设备流量的设备识别方法而言,其不需要采集完整的设备流量,仅需在网关处进行流量的采样,即可进行设备识别。为了应对流量特征缺失的问题,传统的张量填充算法学习张量行、列、深度对应的嵌入本身,不能推广到未知的行、列或深度,存在需要反复重训练,缺失特征补全耗时长,开销大的问题。本发明实施例提出了一种归纳式张量填充算法,该算法能够利用历史信息,学习生成嵌入的函数,进行快速、有效设备流量特征补全。
实施例1
如图1所示,本发明提供了一种基于流量采样的设备识别方法,包括以下步骤:
步骤(1)为间断采集物联网设备的流量。与完整采集全量的设备流量不同,本步骤将设备流量按时间划分为多个测量窗口。基于此,本步骤对不同的设备执行间断数据包采集的方法,以降低全量数据包采集与转储的开销。具体而言,本步骤对于物联网设备只在部分随机测量窗口中进行数据包采集,而不是全部,这样可以减轻测量成本和存储压力。如图2执行例所示,本步骤对该物联网设备进行间断的数据包采集。在该例子中,设备流量按时间被被划分为五个测量窗口,窗口容量为5,表示按时间顺序捕获5个数据包,窗口w2和w4被随机选中,其中的数据包序列pw2和pw4被采集并转储。
步骤(2)对步骤(1)中部分采集的数据包序列进行特征工程,提取流量特征,并进行数据建模与处理。在本步骤中,提取的数据特征为6个,包括上行数据包的数目、下行数据包的数目、上行数据包长度的均值、下行数据包长度的均值、上行数据包长度的标准差、下行数据包长度的标准差。在步骤(1)执行例中,测量窗口w2和w4中的数据包序列pw2和pw4被采集与转储。如图3所示,本步骤对数据包序列pw2和pw4分别进行特征工程,分别得到特征向量a2=(a21,a22,a23,a24,a25,a26)和a4=(a41,a42,a43,a44,a45,a46),每个特征向量包括上行数据包的数目、下行数据包的数目、上行数据包长度的均值、下行数据包长度的均值、上行数据包长度的标准差、下行数据包长度的标准差,这6个简单的流量特征。经过该步骤后,一个物联网设备的特征向量形成了一个K*T的稀疏矩阵,其中K为特征数、T为窗口数目。如图3中的(a)执行例所示,一个物联网设备的流量特征形成了一个6*5的稀疏矩阵。同一执行时刻,多个物联网设备的流量特征,将堆叠形成了一个K*T*M的三阶稀疏张量。如图3中的(b)执行例所示,同一执行时刻,3个物联网设备堆叠形成了一个6*5*3的三阶稀疏张量。
对于形成的稀疏张量,本发明采用张量补全技术进行缺失特征补全。现有的张量补全技术可分为训练和补全两个步骤:
①训练步骤。使用稀疏张量中的已知元素训练对应三个维度的嵌入。
其中,Ω表示稀疏张量中已知元素的集合,分别为行rk、列ct和深度dm的嵌入。Θ表示模型中的其他参数。f(·)是一个交互函数,可以是内积、外积等操作。
②特征补全。将训练好的嵌入和参数Θ送入函数f(·)中,一个未知的元素可以被估计为/>
然而,上述现有的张量填充方法是直推式的。除非进行耗时的重训练,否则无法直接推广到未见过的行、列或深度。这不能有效地应用于设备识别场景,因为设备实例可能是动态到达的。
在此,用图4中的例子来说明上述张量填充算法的缺点。在时间T1,三个设备实例device1、device2、device3到达,并形成一个三阶张量A1∈R6*5*3
在训练步骤中,使用张量中已知元素的集合,我们可以训练并获得六个行嵌入对应于六种类型的特征,五种列嵌入/>对应于五个时间窗口,三个深度嵌入/>对应于三个待分类设备实例。在特征补全步骤中,可以使用这些训练好的嵌入来估计出因流量采样而缺失的特征。
在时间T2,新来了4个未分类的设备device4、device5、device6、device7,于是形成了一个新的三阶张量A2∈R6*5*4。尽管上面在时间T1中学习了设备实例嵌入但它们不是新到的四个设备的嵌入,不能用来估计A2中缺少的条目。因此,在时间T2,必须使用A2中的数据重新训练整个模型,而不能之前学习到的先验信息。
为了应对上述问题,与现有的张量填充方法不同。本发明实施例提出了一种归纳式的张量填充方法。该方法将历史设备流量数据构成二分图,并利用二分图中的消息传递学习如何生成嵌入,即学习嵌入的生成函数,而不是直接学习嵌入本身。二分图中的消息传递由以下三步构成,且可重复多次(轮)。
①消息的构造与聚合
其中,是第l次消息传递时,节点v的邻居聚合向量。/>是节点u在第l次消息传递时的嵌入。/>是边uv在第l次消息传递时的嵌入。N(v)表示节点v邻居的集合。CONCAT为拼接操作。/>是一个可学习的参数,σ是一个非线性激活函数,AGG为聚合操作。
②节点嵌入的更新
其中,是第l次消息传递时,节点v的邻居嵌入。/>是节点v在第l-1次消息传递时的嵌入。/>是一个可学习的参数。
③边嵌入的更新
其中,是第l次消息传递时,边uv的嵌入。/>是节点u在第l次消息传递时的嵌入。/>是节点v在第l次消息传递时的嵌入。/>是一个可学习的参数。
因此,可以在一个新设备待分类流量实例到来时,可以通过上述步骤,迅速获得二分图中两端节点的嵌入,估计缺失的特征。
基于此,同一执行时刻的三阶稀疏张量首先将进一步被构建为二分图G={Vm,Vw,E},其中二分图的左节点集合Vm为设备集合,右节点集合Vw为窗口集合,左节点与右节点之间的边集E为特征集合。如图5执行例所示,同一执行时刻,一个6*5*3的三阶稀疏张量,被构建为一个左节点集合大小|Vm|=3,右节点集合大小|Vw|=5,边集合维度为6的二分图。
步骤(3)首先将步骤(2)中构成的二分图G={Vm,Vw,E}输入到特征补全模块中,该模块利用本发明实施例提出的归纳式张量补全技术对缺失特征进行补全。接着,补全后的数据与补全过程中学习得到的设备节点表征将被输入到基于卷积神经网络的识别模块进行设备识别。
具体而言,本步骤中的特征补全模块与识别模块(整体称之为设备识别模型),是通过以下步骤联合训练得到的:
步骤(3-1)使用从真实世界物联网环境中采集的物联网设备流量作为数据集,并将其按7:1:2的比例划分为训练集、验证集和测试集;
具体而言,本发明中使用了21类物联网设备,并将数据集命名为dataset-21,包括:智能空调、风扇、电冰箱、台灯、微波炉、吸尘器、洗衣机等物联网设备。应该理解的是,本发明不局限于上述物联网设备,任何物联网设备都被纳入本发明的保护范围。
步骤(3-2)对步骤(3-1)中的数据集进行间断数据包采集和特征工程,以得到不同设备的流量特征矩阵,形成不同时刻的流量特征张量,从而进一步形成不同时刻的二分图G={Vm,Vw,E}。
步骤(3-3)将步骤(3-2)处理后得到的二分图G={Vm,Vw,E},输入到设备识别模型中。
步骤(3-4)使用反向传播算法对设备识别模型参数进行更新和优化,以得到更新后的设备识别模型。
具体而言,模型参数的初始值是使用Xavier方法进行初始化。为了加快损失值的下降速度,本步骤中的反向传播算法是采用Adam作为优化器,这是由于该优化器具有动量以及自适应学习率的优势。
步骤(3-5)对步骤(3-4)更新后的设备识别模型进行迭代训练,直到该设备识别模型的损失函数达到最小为止。
设备识别模型的损失函数为L,该损失函数由特征补全损失L特征补全和设备分类损L设备分类两部分构成。
①特征补全损失L特征补全
其中,节点u和节点v表示二分图中左右两个节点集,设备节点集Vm和窗口节点集Vw。euv为二分图中节点u和节点v之间的特征边,为通过图神经网络进行缺失边补全后的估计特征边/>E为二分图中所有边的集合。
②设备分类损失L设备分类
其中,Φ为卷积神经网络分类器,为设备i通过图神经网络进行特征补全后构成的特征集合,/>为设备i通过图神经网络学习得到的向量表征。/>为预测的分类标签,yi为真实的分类标签。Vm为所有训练数据中所有设备的集合。
最后,设备识别模型损失函数L:
L=L设备分类+λL特征补全
其中,λ为一个可学习的权重因子,用于平衡设备补全和设备识别两部分在训练过程中的权重。
步骤(3-6)使用步骤(3-1)得到的数据集中的验证集对迭代训练后的设备识别模型进行迭代验证,直到得到的识别精度达到最优为止,从而得到训练好的设备识别模型,并在测试集上进行模型的性能测试。
对于本发明实施例中的设备识别模型而言,其网络为8层结构,如图6所示,依次包括了1个输入层,2个基于图神经网络的消息传递层,1个缺失特征补全层,3个基于卷积神经网络的设备识别层和1个线性输出层。前四层为特征补全模块,后四层为设备识别模块。其具体网络结构如下:
第一层是输入层,输入二分图G={Vm,Vw,E}。
第二层是图神经网络消息传递层。该层对输入的二分图进行第一次图信息传递,根据二分图中的1跳邻居关系,更新图中节点、边的向量表征。依次包含以下三个步骤:
①消息构造和聚合。信息的构造和聚合过程可表达为下式:
其中,为第1次图信息传递中,节点v的邻居聚合向量。/>为节点v的1跳邻居节点u的初始向量表征。/>为边uv的初始向量表征。CONCAT(·)表示拼接操作。该操作将节点u的初始表征向量/>与边uv的初始向量表征/>拼接到一起。Mean{·}为均值聚合函数。ReLU(·)为非线性激活函数。/>为第1次图信息传递中,消息构造和聚合过程的可学习参数。
②节点表征更新。节点集合的向量表征可通过邻居聚合向量更新。节点向量表征的更新可表达为下式:
其中,为节点v在第1次图信息传递中更新的表征向量,CONCAT(·)表示拼接操作。该操作将节点v在的初始表征向量/>与其在第1次图信息传递中聚合的邻居向量/>拼接到一起。ReLU(·)为非线性激活函数。/>为第1次图信息传递中,节点表征更新过程的可学习参数。
③边表征更新。更新完图中所有节点的向量表征后,利用更新后节点的向量表征,
可以更新边的向量表征。边向量表征的更新可表达为下式:
其中,为边uv在第1次图信息传递中更新的表征向量,CONCAT(·)表示拼接操作。该操作将节点u在第1次图信息传递中更新的表征向量/>节点v在第1次图信息传递中更新的表征向量/>与边uv在的初始向量表征/>拼接到一起。ReLU(·)为非线性激活函数。/>为第1次图信息传递中,边表征更新过程的可学习参数。
第三层与第二层一致,该层进行第二次图信息传递,根据二分图中的2跳邻居关系,更新图中节点、边的向量表征。依次包含以下三个步骤:
①消息构造和聚合。信息的构造和聚合可表达为下式:
其中,为第2次图信息传递中节点v的邻居聚合向量。/>为节点u在第1次图信息传递中的向量表征。/>为边uv在第1次图信息传递中的向量表征。/>为第2次图信息传递中,消息构造和聚合过程的可学习参数。
②节点表征更新。节点向量表征的更新可表达为下式:
其中,为节点v在第2次图信息传递中更新的表征向量。/>为第2次图信息传递中,节点表征更新过程的可学习参数。
③边表征更新。边向量表征的更新可表达为下式:
其中,为边uv在第2次图信息传递中更新的表征向量,/>为第2次图信息传递中,边表征更新过程的可学习参数。
第四层为缺失特征补全层。该层输入经过2次信息传递更新后的节点信息,进行缺失特征边的估计,具体的过程可表示为下式:
其中,是节点v和u之间缺失特征边的估计,为一个K维的特征向量。/>和/>分别为节点v和u在第2次图信息传递中更新的表征向量,Wpred为可学习参数,用于估计缺失的特征边。Sigmoid(·)为非线性激活函数,用于将值限制在0到1之间。经过该层后,将输出补全后的特征边集合,记为/>
第五层为一个2D卷积模块,输入为补全的特征边集该模块依次包含一个2D的卷积(通道数为64,卷积核为3,步长为1,padding为1)、一个ReLU激活函数、一个2D的MaxPool(卷积核为3,步长为1,padding为1)和一个2D的Dropout(概率为0.2),输出的矩阵大小为K*T,通道数为64。
第六层为一个2D卷积模块,输入为第五层的输出。该模块依次包含一个2D的卷积(通道数为128,卷积核为3,步长为1,padding为1)、一个ReLU激活函数、一个2D的MaxPool(卷积核为3,步长为1,padding为1)和一个2D的Dropout(概率为0.2),输出的矩阵大小为K*T,通道数为128。
第七层为一个2D卷积模块,输入为第六层的输出。该模块依次包含一个2D的卷积(通道数为64,卷积核为3,步长为1,padding为1)、一个ReLU激活函数、一个2D的MaxPool(卷积核为3,步长为1,padding为1)和一个2D的Dropout(概率为0.2),输出的矩阵大小为K*T,通道数为64。
第八层为一个线性输出层。输入为第七层的输出和第三层输出的设备节点向量表征。该层首先将第七层的输出进行flatten操作,接着拼接上第三层输出的设备节点向量表征,作为该层的输入。输出的节点数目为设备类型的数目,并通过softmax进行分布概率归一化,最大概率值对应的设备类型即为最终的设备类型。
线性输出层(线性层+softmax层)做最后分类的原理如下:线性层是一个全连接层,它将输入的特征向量映射到一个固定长度的向量,这个向量的每个元素对应一个设备类型的得分,得分越高表示越有可能属于该类型,向量的长度值与设备的种类数相等。softmax层是一个激活函数,它将线性层的输出向量转换为一个概率分布,即对每个元素进行指数运算,然后除以所有元素的指数和,使得它们的和为1,表示每个设备类型的概率。分类结果是取softmax层输出向量中最大概率值对应的设备类型。
测试结果
将测试集物联网设备流量使用本发明实施例提出的一种基于流量采样的设备类型识别方法中,并给出识别结果。在测试部分,选取的评价指标为特征补全误差指标NMAE和设备识别精度指标F1-score。
其中,xi为特征真实值,为特征估计值,n为缺失特征的总数目。
其中,Rk表示第k类设备的召回率,Pk表示第k类设备的精确率,m是总的设备类别数。F1-score的取值范围在[0,1]之间,它反映了每个设备类别的识别精度,越大的F1-score意味着更高的设备识别精度。
图7展示了本发明实施例提出的归纳式张量填充算法相比传统张量填充算法的填充误差。如该图所示,本发明实施例提出的归纳式张量填充算法能有效估计物联网环境中缺失的流量特征,并相比其他传统算法取得了最好的缺失特征补全性能。
表2展示了256个待分类设备实例到达时,本发明实施例提出的归纳式张量填充算法相比传统张量填充算法补全缺失特征的时间消耗。由于本发明实施例采用的是一种学习嵌入生成函数的归纳方法。当新设备实例到达时,它可以直接生成嵌入。然而,传统方法是直推式的,不支持处理新设备实例的估计。当新设备实例到达时,他们必须进行模型再训练。如该表所示,重新训练的时间消耗很高。即使是最快的传统方法,其时间消耗也是本发明的38倍,这反映出本发明实施例的归纳式张量填充算法更适合于设备识别场景。
表2本发明实施例提出的归纳式张量填充算法相比传统张量填充算法补全缺失特征的时间消耗
本发明 NTC NTM CoSTCo NTF
时间(s) 0.0843 209.5121 51.3745 3.2331 3.2622
表3展示了本发明实施例提出的设备识别方法与使用传统张量填充算法做流量特征填充后进行设备识别的精度对比。由结果可知,本发明所提出的特征补全算法,相比传统的填充算法能够更好的适用于设备识别场景。
表3本发明实施例提出的设备识别方法与使用传统张量填充算法做流量特征填充后进行设备识别的精度对比
表4展示了本发明实施例在不同采样率下的F1-score。由结果可知,本发明在低流量采样率下,仍然有较高的设备识别精度。例如,当对30%的测量窗口进行数据包序列采样时,其识别精度为0.8444。这反映出本发明能在不需要进行完整流量采集,降低采集与转储开销的同时,达到较高的设备识别精度。
表5展示了本发明实施例与本领域常用的基于设备流量的设备识别方法的性能比较。可以看出,本发明即使是在60%采样率的设置下,仍然可以达到较高的识别精度,F1-score为0.9245,且由于采集的数据包只有60%,数据包采集与转储的开销降低相比传统方法降低40%。
表4本发明实施例在不同采样率下的F1-score
表5本发明实施例与本领域常用的基于设备流量的设备识别方法的性能比较
实施例2
本发明实施例2提供一种对应上述实施例1的终端设备,终端设备可以是用于客户端的处理设备,例如手机、笔记本电脑、平板电脑、台式机电脑等,以执行上述实施例的方法。
本实施例的终端设备包括存储器、处理器及存储在存储器上的计算机程序;处理器执行存储器上的计算机程序,以实现上述实施例1方法的步骤。
在一些实现中,存储器可以是高速随机存取存储器(RAM:Random AccessMemory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。
在另一些实现中,处理器可以为中央处理器(CPU)、数字信号处理器(DSP)等各种类型通用处理器,在此不做限定。
实施例3
本发明实施例3提供了一种对应上述实施例1的计算机可读存储介质,其上存储有计算机程序/指令。计算机程序/指令被处理器执行时,实现上述实施例1方法的步骤。
计算机可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意组合。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请实施例中的方案可以采用各种计算机语言实现,例如,面向对象的程序设计语言Java和直译式脚本语言JavaScript等。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (10)

1.一种基于流量采样的设备类型识别方法,其特征在于,包括以下步骤:
S1、对物联网设备进行间断的数据包采集;
S2、提取采集的数据包的特征,得到各个数据包的特征向量,所有数据包的特征向量堆叠形成三阶稀疏张量,利用所述三阶稀疏张量构建二分图G={Vm,Vw,E},其中二分图的左节点集合Vm为设备集合,右节点集合Vw为数据包测量窗口集合,左节点集合与右节点集合之间的边集E为特征集合;
S3、将所述二分图作为设备识别模型的输入,得到更新后的设备识别模型。
2.根据权利要求1所述的基于流量采样的设备类型识别方法,其特征在于,步骤S1的具体实现过程包括:
设置多个测量窗口;
随机选择部分测量窗口,采集选择的测量窗口内的设备流量。
3.根据权利要求1所述的基于流量采样的设备类型识别方法,其特征在于,步骤S3中,所述设备识别模型包括:
第一图神经网络消息传递层,用于对输入的二分图进行第一次图信息传递,更新二分图中节点、边的向量表征;
第二图神经网络消息传递层,用于根据第一图神经网络消息传递层输出的二分图中的2跳邻居关系,更新第一图神经网络消息传递层输出的二分图中的节点、边的向量表征;
缺失特征补全层,用于根据第二图神经网络消息传递层输出的二分图中的节点信息,估计缺失的特征边,并输出补全后的特征边集合;
卷积单元,用于对补全后的特征边集合进行卷积操作;
线性输出层,输入为拼接特征,输出为设备的类别;所述拼接特征获取过程包括:对卷积单元输出的特征进行展平操作,拼接展平操作后的特征与第二图神经网络消息传递层输出的节点向量,得到所述拼接特征。
4.根据权利要求3所述的基于流量采样的设备类型识别方法,其特征在于,所述第一图神经网络消息传递层更新二分图中节点、边的向量表征的具体实现过程包括:
通过下式构造第1次图信息传递中构建节点v的邻居聚合向量
N(v)为节点v的邻居节点集合,为节点v的邻居节点,/>为节点v的1
跳邻居节点u的初始向量表征,为边uv的初始向量表征,CONCAT(·)表示拼接操作,Mean{·}为均值聚合函数,ReLU(·)为非线性激活函数,/>为第1次图信息传递中,构造过程的可学习参数;
利用下式更新节点向量表征:其中,/>为节点v在第1次图信息传递中更新的表征向量,/>为第1次图信息传递中,节点表征更新过程的可学习参数;
利用下式更新边向量表征:
其中,为边uv在第1次图信息传递中更新的表征向量,/>为第1次图信息传递中,边表征更新过程的可学习参数。
5.根据权利要求4所述的基于流量采样的设备类型识别方法,其特征在于,第二图神经网络消息传递层更新第一图神经网络消息传递层输出的二分图中的节点、边的向量表征的具体实现过程包括:
通过下式构造第2次图信息传递中节点v的邻居聚合向量 为节点u在第1次图信息传递中的向量表征,/>为第2次图信息传递中,构造过程的可学习参数;
更新节点向量表征: 为节点v在第2次图信息传递中更新的表征向量,/>为第2次图信息传递中,节点表征更新过程的可学习参数;
更新边向量表征: 为边uv在第2次图信息传递中更新的表征向量,/>为第2次图信息传递中,边表征更新过程的可学习参数。
6.根据权利要求3所述的基于流量采样的设备类型识别方法,其特征在于,所述缺失特征补全层获得补全后的特征边集合的具体实现过程包括:
估计缺失特征边:其中,/>是节点v和u之间缺失特征边的估计,为一个K维的特征向量,/>和/>分别为节点v和u在第二图神经网络消息传递层中更新的表征向量,Wpred为可学习参数,(·)为非线性激活函数;
将所有缺失特征边的估计值合并到已知的特征边集合中,得到补全后的特征边集合
7.根据权利要求3所述的基于流量采样的设备类型识别方法,其特征在于,所述卷积单元包括多个串联的卷积模块。
8.根据权利要求3所述的基于流量采样的设备类型识别方法,其特征在于,所述线性输出层首先将输入的拼接向量映射为向量长度等于设备类型数目的向量,该向量中的每个元素对应一个设备类型的得分,再通过softmax层将所述向量转为为概率分布,最大值对应的设备类型即为最终的设备类型。
9.一种终端设备,其特征在于,包括:
一个或多个处理器;
存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1~8任一项所述方法的步骤。
10.一种计算机可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1~8任一项所述方法的步骤。
CN202310615867.7A 2023-05-29 2023-05-29 基于流量采样的设备类型识别方法、终端设备和存储介质 Pending CN116662852A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310615867.7A CN116662852A (zh) 2023-05-29 2023-05-29 基于流量采样的设备类型识别方法、终端设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310615867.7A CN116662852A (zh) 2023-05-29 2023-05-29 基于流量采样的设备类型识别方法、终端设备和存储介质

Publications (1)

Publication Number Publication Date
CN116662852A true CN116662852A (zh) 2023-08-29

Family

ID=87713099

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310615867.7A Pending CN116662852A (zh) 2023-05-29 2023-05-29 基于流量采样的设备类型识别方法、终端设备和存储介质

Country Status (1)

Country Link
CN (1) CN116662852A (zh)

Similar Documents

Publication Publication Date Title
CN112069398A (zh) 一种基于图网络的信息推送方法及装置
CN107786388B (zh) 一种基于大规模网络流数据的异常检测系统
CN110348526B (zh) 一种基于半监督聚类算法的设备类型识别方法和装置
CN111431819A (zh) 一种基于序列化的协议流特征的网络流量分类方法和装置
CN109086291B (zh) 一种基于MapReduce的并行异常检测方法及系统
CN113992349B (zh) 恶意流量识别方法、装置、设备和存储介质
CN114172688B (zh) 基于gcn-dl的加密流量网络威胁关键节点自动提取方法
CN110138681B (zh) 一种基于tcp报文特征的网络流量识别方法及装置
CN115277888A (zh) 一种移动应用加密协议报文类型解析方法及系统
CN113824707A (zh) 一种基于知识图谱的网站性能拨测度量方法和装置
CN113256438A (zh) 网络用户的角色识别方法及系统
Singh et al. A partially observable MDP approach for sequential testing for infectious diseases such as covid-19
CN117272195A (zh) 基于图卷积注意力网络的区块链异常节点检测方法及系统
CN116662852A (zh) 基于流量采样的设备类型识别方法、终端设备和存储介质
CN115334005B (zh) 基于剪枝卷积神经网络和机器学习的加密流量识别方法
Dener et al. Rfse-gru: Data balanced classification model for mobile encrypted traffic in big data environment
CN114866301B (zh) 基于直推图的加密流量识别与分类方法及系统
CN114881162A (zh) 计量自动化主站的故障预测方法、装置、设备及介质
Kalliola et al. Learning flow characteristics distributions with elm for distributed denial of service detection and mitigation
Nascimento et al. Comparative study of a Hybrid Model for network traffic identification and its optimization using Firefly Algorithm
CN114362972B (zh) 一种基于流量摘要和图采样的僵尸网络混合检测方法及系统
Nakhua et al. TReLU: A Novel Activation Function for Modern Day Intrusion Detection System Using Deep Neural Networks
CN115955323A (zh) 一种网络安全态势感知方法、装置及电子设备
CN111556017A (zh) 一种基于自编码机的网络入侵检测方法及电子装置
CN114051218B (zh) 一种环境感知网络优化方法和系统

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