CN111222638B - 一种基于神经网络的网络异常检测方法及装置 - Google Patents

一种基于神经网络的网络异常检测方法及装置 Download PDF

Info

Publication number
CN111222638B
CN111222638B CN201911147757.2A CN201911147757A CN111222638B CN 111222638 B CN111222638 B CN 111222638B CN 201911147757 A CN201911147757 A CN 201911147757A CN 111222638 B CN111222638 B CN 111222638B
Authority
CN
China
Prior art keywords
matrix
neural network
data
vector
projection
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.)
Active
Application number
CN201911147757.2A
Other languages
English (en)
Other versions
CN111222638A (zh
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 CN201911147757.2A priority Critical patent/CN111222638B/zh
Publication of CN111222638A publication Critical patent/CN111222638A/zh
Application granted granted Critical
Publication of CN111222638B publication Critical patent/CN111222638B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Traffic Control Systems (AREA)

Abstract

本发明公开了一种基于神经网络的网络异常检测方法及装置,涉及网络检测技术领域。所述网络异常检测方法及装置,先将网络流量数据样本经投影矩阵降维处理,再将降维后的数据输入神经网络模型得到输出结果,通过输出结果与实际值之间的误差进行权重矩阵、偏置项以及投影矩阵的更新,使神经网络模型不断的自学习,并且在面对缺失数据时具有良好的自学习和自适应能力,使训练过程不易陷入局部最优,保证了训练过程和模型的稳定性,数据降维后再输入至神经网络,大大降低了训练数据量、时间复杂度和空间复杂度;最后用训练好的神经网络模型进行网络异常流量检测,提高了缺失数据的检测精度。

Description

一种基于神经网络的网络异常检测方法及装置
技术领域
本发明属于网络检测技术领域,尤其涉及一种基于神经网络的网络异常检测方法及装置。
背景技术
随着科学技术的发展,计算机网络和应用程序规模的不断增长,互联网融入到人类社会活动的各个角落。显然,网络安全对于个人信息、企业信息、甚至国家机密信息有着重要的意义,然而计算机网络的攻击越来越多,由于网络攻击的目标对象不断扩展,网络攻击的意图不断变换,网络攻击造成的损失不断增加,网络攻击技术手段不断的更新,使得网络安全形势严峻。网络中的用户存在着异常和正常的行为,异常是指在数据集中存在与众不同的数据,使人怀疑这些数据并非随机偏差,而是产生于完全不同的机制。异常的识别与检测,对于网络入侵检测具有十分重要的意义。异常检测的方法有很多,如基于距离的方法、基于统计的方法、基于信息论的方法等,然而传统异常流量检测方法已经不能满足当今互联网安全的需要。
人工神经网络又称感知机模型,是在现代神经学、生物学、心理学等学科研究的基础上产生的,是在模拟人脑神经组织的基础上发展起来的计算***,是由大量处理单元通过广泛互联而构成的网络体系,它具有生物神经***的基本特征,是对生物***的某种模拟,具有大规模并行、分布式处理、自组织、自学习等优点,被广泛应用于语音分析、图像识别、数字水印、计算机视觉等很多领域,取得了许多突出的成果。最近由于人工神经网络的快速发展,它已经成为模式识别的强有力的工具。神经网络的运用展开了新的领域,解决其它模式识别不能解决的问题,其分类功能特别适合于模式识别与分类的应用。
神经网络具有以下优点:
1)非线性映射能力:神经网络实质上实现了一个从输入到输出的映射功能,数学理论证明三层的神经网络就能够以任意精度逼近任何非线性连续函数,这使得其特别适合于求解内部机制复杂的问题,即神经网络具有较强的非线性映射能力。
2)自学习和自适应能力:神经网络在训练时,能够通过学习自动提取输入、输出数据间的“合理规则”,并自适应的将学习内容记忆于网络的权值中,即神经网络具有高度自学习和自适应的能力。
3)泛化能力:所谓泛化能力是指在设计模式分类器时,即要考虑网络在保证对所需分类对象进行正确分类,还要关心网络在经过训练后,能否对未见过的模式或有噪声污染的模式,进行正确的分类,也即神经网络具有将学习成果应用于新知识的能力。
4)容错能力:神经网络在其局部的或者部分的神经元受到破坏后对全局的训练结果不会造成很大的影响,也就是说即使***在受到局部损伤时还是可以正常工作的,即神经网络具有一定的容错能力。
然而传统的神经网络模型,训练数据必须是完备的,但是在各种实用的数据库中,属性值缺失的情况经常发全甚至是不可避免的。因此,在大多数情况下,数据信息***是不完备的,或者说存在某种程度的不完备。缺失值产生的原因多种多样,主要分为机械原因和人为原因。机械原因是由于机械原因导致数据收集或保存失败而造成数据缺失,比如数据存储失败,存储器损坏,机械故障导致某段时间数据未能收集。人为原因是由于人的主观失误、历史局限或有意隐瞒造成数据缺失,比如,在市场调查中被访人拒绝透露相关问题的答案,或者回答的问题是无效的,数据录入人员失误漏录了数据。
面临不完备数据集的处理方法主要有:
a)删除数据
将存在遗漏信息属性值的对象删除(整组数据删除),从而得到一个完备的数据集。这种方法简单易行,在对象有多个属性缺失值、被删除的含缺失值的对象与信息表中数据量相比非常小的情况下是非常有效的。然而,这种方法却有很大的局限性,它是以减少历史数据来换取信息的完备,会造成资源的大量浪费,丢弃了大量隐藏在这些对象中的信息。对于信息表中本来包含的对象很少的情况,删除少量对象就足以严重影响到信息表中信息的客观性和结果的正确性;当每个属性空值的百分比变化很大时,它的性能非常差。因此,当遗漏数据所占比例较大,特别当遗漏数据非随机分布时,这种方法可能导致数据发生偏离,从而引出错误的结论。
b)数据补齐
该方法是用一定的值去填充缺失值,从而使信息表完备化。通常基于统计学原理,根据决策表中其余对象取值的分布情况来对一个缺失值进行填充,譬如用其余属性的平均值来进行补充等。
如图1所示,目前基于神经网络的异常检测使用传统的全连接神经网络,训练参数量大,时间复杂度和空间复杂度较高,需要更多的计算时间和存储空间。例如传统全连接神经网络层数为D,第d层有Ud个神经元,第d层的输入为rd,第d+1层(0≤d<D)输入通过前向传播公式rd+1=Wdad+bd,Wd表示大小为Ud+1×Ud的权重矩阵,bd表示偏置。那么总共的参数量有:
Figure BDA0002282682350000021
训练神经网络的时间复杂度为:
Figure BDA0002282682350000031
其中,N为样本数量。
数据降维是为了解决在高维情形下出现数据样本稀疏、距离计算困难等维数灾难问题,去除不相关的特征,可以降低学习任务的难度、加快运算速度,增强对特征和特征值之间的理解。但是传统的降维方法需要使用待投影数据的所有项,对于有缺失的数据无法进行直接操作,而且传统的数据降维方法为无监督降维方式,即将降维后数据的使用与降维过程是割裂开的,这可能会导致后续数据使用工作陷入局部最优化和不稳定现象。
发明内容
针对现有技术的不足,本发明提供一种基于神经网络的网络异常检测方法及装置,先对网络异常数据进行降维处理,再输入到神经网络中进行训练和测试,并且神经网络输出的结果又反向调整投影矩阵,以解决神经网络进行网络异常检测时存在的训练参数量大,时间复杂度和空间复杂度高,以及不能处理含有缺失值的样本等问题。
本发明是通过如下的技术方案来解决上述技术问题的:一种基于神经网络的网络异常检测方法,包括以下步骤:
步骤1:将N个网络流量数据向量化,并对向量化后的数据进行标准化处理,得到N个标准化向量;
步骤2:构建投影矩阵,并对投影矩阵进行初始化;
步骤3:构建神经网络模型,并对神经网络模型进行初始化;
步骤4:根据标准化向量中的完备项和缺失项,提取投影矩阵中对应行或列生成投影中间矩阵,将标准化向量的缺失项删除,再与投影中间矩阵相乘得到降维后的数据样本;
步骤5:将降维后的数据样本输入至神经网络模型,得到模型的输出向量,计算输出向量与实际值向量之间的误差函数,采用误差函数对神经网络模型的权重矩阵、偏置项、以及投影中间矩阵进行更新,完成神经网络模型的训练;
步骤6:将网络异常测试数据经过投影矩阵降维后,输入至训练好的神经网络模型中,模型输出的结果即为网络异常检测结果。
本发明所述的网络异常检测方法,先将网络流量数据样本经投影矩阵降维处理,在降维处理过程中,针对样本非缺失的部分学习,而不是删除单个数据样本,避免了数据样本的大量丢弃,保留了数据样本中的关键信息,减少了对检测结果的影响,提高了检测精度;再将降维后的数据输入神经网络模型得到输出结果,在训练过程中,通过输出结果与实际值之间的误差进行权重矩阵、偏置项以及投影矩阵的更新,使神经网络模型不断的自学习,提高了神经网络模型的自学习和自适应能力,使训练过程不陷入局部最优,保证了训练过程和模型的稳定性,数据降维后再输入至神经网络,大大降低了训练数据量、时间复杂度和空间复杂度,同时使神经网络能够处理含有缺失值的数据样本;最后用训练好的神经网络模型进行网络异常流量的检测,大大提高了对缺失数据的检测精度和可靠性。
进一步地,所述步骤2中,投影矩阵的构建包括以下子步骤:
步骤2.1:由N个所述标准化向量x(n)构成样本数据矩阵X,求取样本数据矩阵X的去中心化矩阵XC
Figure BDA0002282682350000041
其中,X∈RN×M,N为样本的数量,M为样本的维数;
步骤2.2:求取协方差矩阵C,
Figure BDA0002282682350000042
步骤2.3:将所述协方差矩阵C进行特征值分解得到特征矩阵E,ΛE=CE,其中,Λ为对角矩阵,对角矩阵的角元素为各特征向量对应的特征值;
步骤2.4:取特征矩阵E前K个最大特征值对应的特征向量形成投影矩阵U,U∈RM×K,K为投影空间的大小。
进一步地,所述步骤2中,采用主成分分析法对投影矩阵初始化,使投影矩阵成为各行两两正交或各列两两正交的矩阵。
进一步地,所述步骤3中,神经网络模型每一层神经元的数量为上一层神经元数量的2/3。
进一步地,所述步骤3中,采用Xavier初始化方法对神经网络模型进行初始化,使神经网络模型的权重矩阵W服从
Figure BDA0002282682350000043
的均匀分布,偏置项的初始值为0;
其中,Nx为神经网络模型输入数据样本的维数,Ny为神经网络模型输出向量的维数。
进一步地,所述步骤4包括以下子步骤:
步骤4.1:记录标准化向量
Figure BDA0002282682350000044
中样本数据为完备项和缺失项的下标,n=1,2,…,N,m=1,2,…,M,N为样本的数量,M为样本的维数,
Figure BDA0002282682350000045
为第n个标准化向量中的第m个样本数据;
步骤4.2:对比投影矩阵U=(u1,u2,…,um,…,uM)T的行下标与标准化向量x(n)的下标,删除与标准化向量x(n)缺失项对应的投影矩阵U中的行,得到投影中间矩阵U';
步骤4.3:将标准化向量x(n)中的缺失项删除后,再与投影中间矩阵U'相乘得到降维后的数据样本x'(n)
进一步地,所述步骤5包括以下子步骤:
步骤5.1:将降维后的数据样本x'(n)输入至神经网络模型得到的输出向量y'(n)中的元素为
Figure BDA0002282682350000051
分别为向量y'(n)
Figure BDA0002282682350000052
中第c个元素,y'(n)为与第n个输入数据样本x'(n)对应的输出向量,
Figure BDA0002282682350000053
为与第n个输入数据样本x'(n)对应的第D层的输入向量,第D层为输出层;
步骤5.2:计算输出向量y'(n)与实际值向量y(n)之间的误差函数
Figure BDA0002282682350000054
Figure BDA0002282682350000055
为实际值向量y(n)中的第c个元素;
步骤5.3:计算误差函数对权重矩阵、偏置项、以及投影中间矩阵的偏导:
Figure BDA0002282682350000056
Figure BDA0002282682350000057
Figure BDA0002282682350000058
Figure BDA0002282682350000059
其中,Wd、Wd+1为第d、d+1层神经元的权重向量,
Figure BDA00022826823500000510
为第0、d+1、d+2层神经元的输入向量,
Figure BDA00022826823500000511
为第d层神经元的输出向量,bd为第d层神经元的偏置向量,h()为激活函数,h'()为激活函数的导数,U'为投影中间矩阵,x'(n)为第n个降维后的数据样本;
步骤5.4:对权重向量、偏置向量和投影中间矩阵进行更新,再根据投影中间矩阵更新投影矩阵:
Figure BDA0002282682350000061
其中,η为学习率;
步骤5.5:当达到训练次数或误差函数小于设定阈值时,完成神经网络模型的训练,得到训练好的神经网络模型。
相应的,一种计算机可读介质,其上存储有计算机指令,所述计算机指令在由处理器执行时实现如上述的基于神经网络的网络异常检测方法的步骤。
相应的,一种基于神经网络的网络异常检测装置,包括处理器及与所述处理器通信连接的存储器;
所述处理器被配置为:
将N个网络流量数据向量化,并对向量化后的数据进行标准化处理,得到N个标准化向量;
构建投影矩阵,并对投影矩阵进行初始化;
构建神经网络模型,并对神经网络模型进行初始化;
根据标准化向量中的完备项和缺失项,提取投影矩阵中对应行或列生成投影中间矩阵,将标准化向量的缺失项删除,再与投影中间矩阵相乘得到降维后的数据样本;
将降维后的数据样本输入至神经网络模型,得到模型的输出向量,计算输出向量与实际值向量之间的误差函数,采用误差函数对神经网络模型的权重矩阵、偏置项、以及投影中间矩阵进行更新,完成神经网络模型的训练;
将网络异常测试数据经过投影矩阵降维后,输入至训练好的神经网络模型中,模型输出的结果即为网络异常检测结果。
有益效果
与现有技术相比,本发明提供的一种基于神经网络的网络异常检测方法,先将网络流量数据样本经投影矩阵降维处理,在降维处理过程中,针对样本非缺失的部分学习,而不是删除单个数据样本,避免了数据样本的大量丢弃,保留了数据样本中的关键信息,减少了对检测结果的影响,提高了检测精度;再将降维后的数据输入神经网络模型得到输出结果,在训练过程中,通过输出结果与实际值之间的误差进行权重矩阵、偏置项以及投影矩阵的更新,使神经网络模型不断的自学习,提高了神经网络模型的自学习和自适应能力,使训练过程不易陷入局部最优,保证了训练过程和模型的稳定性,数据降维后再输入至神经网络,大大降低了训练数据量、时间复杂度和空间复杂度,同时使神经网络能够处理含有缺失值的数据样本;最后用训练好的神经网络模型进行网络异常流量的检测,大大提高了对缺失数据的检测精度。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一个实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明背景技术中传统网络异常检测的神经网络模型;
图2是本发明实施例中采用投影矩阵后的神经网络模型;
图3是本发明实施例中K和D不同组合下的准确度、查准率和误判率示意图;
图4是本发明实施例中AVNN和VNN在不同损失率下准确度曲线;
图5是本发明实施例中AVNN和VNN在不同损失率下查准率曲线;
图6是本发明实施例中AVNN和VNN在不同损失率下误判率曲线;
图7是本发明实施例中AVNN和VNN在无缺失项情况下准确度、查准率、误判率以及消耗总时间对比图;
图8是本发明实施例中AVNN和VNN在有缺失项情况下准确度、查准率、误判率以及消耗总时间对比图。
具体实施方式
下面结合本发明实施例中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图2所示,本发明所提供的一种基于神经网络的网络异常检测方法,包括以下步骤:
1、将N个网络流量数据向量化,并对向量化后的数据进行标准化处理,得到N个标准化向量。
将原始网络流量数据各维度用数值类型表示,若存在非数值类型,则将其替换成相应的数值类型。由于这些维度的变量多为非连续型变量,因此采用枚举类型来表示。
将网络流量数据数值化之后,再进行向量化。为了去除数据的单位限制,将其进行标准化处理,使其转化成无量纲的纯数值,便于不同单位或量级的数据能够进行比较和加权。本实施例中,采用z-score标准化方法进行标准化处理,经过标准化处理后的数据符合标准正态分布,即均值为0,标准差为1,其标准化处理函数为:
Figure BDA0002282682350000071
其中,μ为所有样本数据的均值,σ为所有样本数据的标准差。
标准化处理后的向量表示为向量
Figure BDA0002282682350000081
且标签为y(n),y(n)为由1和0组成的二元向量,0表示正常样本,1表示异常样本,y(n)即为实际值向量。网络异常检测结果包括正常和异常,异常又包括dos攻击、R2L、U2R、PROBING攻击等。经神经网络模型检测后的结果可以为正常和异常两大类,也可以分为正常、dos攻击、R2L、U2R、PROBING攻击等多个类别。
2、构建投影矩阵,并对投影矩阵进行初始化。
数据缺失能够给神经网络模型带来稳定性下降的问题,在标准化处理后的数据样本输入神经网络模型之前,先经过投影矩阵进行降维处理,以解决数据样本含缺失值导致的稳定性问题、以及高维数据导致的神经网络模型训练参数量大,时间复杂度和空间复杂度高的问题。投影矩阵降维方法是将高维数据投影到低维空间,且使投影后的数据样本间能够尽量分开。本实施例中,投影矩阵的构建步骤如下:
2.1由N个标准化向量x(n)构成样本数据矩阵X,求取样本数据矩阵X的去中心化矩阵XC
Figure BDA0002282682350000082
其中,X∈RN×M,N为样本的数量,M为样本的维数。
2.2求取协方差矩阵C,
Figure BDA0002282682350000083
2.3将协方差矩阵C进行特征值分解得到特征矩阵E,ΛE=CE,其中,Λ为对角矩阵,对角矩阵的角元素为各特征向量对应的特征值。
2.4取特征矩阵E前K个最大特征值对应的特征向量形成投影矩阵U,U∈RM×K,K为投影空间的大小,K的取值不同对神经网络模型的各指标有着不同的影响,本实施例中,给定六种不同的K和四种不同的D,D为神经网络模型的层数,K和D可以有24组合,如图3所示,得到不同组合下准确度Accuracy、查准率TPR以及误判率FPR的结果。由图3可知,当K=24,D=4时,效果最好。
主成分分析法是一种数据简化技术,采用主成分分析法对投影矩阵进行初始化,使投影矩阵成为各行两两正交或各列两两正交的矩阵,经投影矩阵降维后的数据保留更多的信息,但投影矩阵并未确定下来,其通过神经网络进行参数调整。
3、构建神经网络模型,并对神经网络模型进行初始化。
如图2所示,神经网络模型包括输入层、隐藏层(为多层)和输出层,每个圆圈代表一个神经元,每根连线对应一个不同的权重。设神经网络模型的层数为D,第d层有Ud个神经元,第d层的输入向量为rd,采用ReLu函数作为激活函数h(),则第d层的输出向量ad=h(rd)。在输入层,a0=r0,第d+1层(0≤d<D)输入通过前向传播公式rd+1=Wdad+bd,Wd是大小为Ud+1×Ud的权重矩阵,bd是偏置向量。在神经网络模型中,每一层神经元的数量为上一层神经元数量的2/3。
采用Xavier初始化方法对神经网络模型进行初始化,使神经网络模型权重矩阵W中的权重参数服从
Figure BDA0002282682350000091
的均匀分布,偏置项的初始值为0;
其中,Nx为神经网络模型输入数据样本的维数,Ny为神经网络模型输出向量的维数。
4、根据标准化向量中的完备项和缺失项,提取投影矩阵中对应行或列生成投影中间矩阵,将标准化向量的缺失项删除,再与投影中间矩阵相乘得到降维后的数据样本。该步骤的具体操作如下:
4.1记录标准化向量
Figure BDA0002282682350000092
中样本数据为完备项和缺失项的下标,n=1,2,…,N,m=1,2,…,M,
Figure BDA0002282682350000093
为第n个标准化向量中的第m个样本数据。
4.2对比投影矩阵U=(u1,u2,…,um,…,uM)T的行下标与标准化向量x(n)的下标,删除与标准化向量x(n)缺失项对应的投影矩阵U中的行,得到投影中间矩阵U'。在本发明中,并不是将单个标准化向量x(n)删除,而是将单个标准化向量x(n)中的缺失项删除,避免了数据样本的大量丢弃,保留了数据样本中的关键信息,减少了对检测结果的影响,提高了检测精度。
4.3将标准化向量x(n)中的缺失项删除后,再与投影中间矩阵U'相乘得到降维后的数据样本x'(n)。降维后的数据样本相对于原始数据样本来说,不含有缺失项,对缺失项具有良好的容忍性,保留了数据样本点本身以及数据样本点与数据样本点之间的信息,大大降低的数据维数,从而大大降低了后续处理的复杂度。
5、将降维后的数据样本输入至神经网络模型,得到模型的输出向量,计算输出向量与实际值向量之间的误差函数,采用误差函数对神经网络模型的权重矩阵、偏置项、以及投影中间矩阵进行更新,完成神经网络模型的训练。该步骤的具体操作如下:
5.1将降维后的数据样本x'(n)输入至神经网络模型得到的输出向量y'(n)中的元素为
Figure BDA0002282682350000101
分别为向量y'(n)
Figure BDA0002282682350000102
中第c个元素,y'(n)为与第n个输入数据样本x'(n)对应的输出向量,
Figure BDA00022826823500001012
为与第n个输入数据样本x'(n)对应的第D层的输入向量,第D层为输出层。
5.2通过前向传播计算输出向量y'(n)与实际值向量y(n)之间的误差函数
Figure BDA0002282682350000103
Figure BDA0002282682350000104
为实际值向量y(n)中的第c个元素。
5.3通过反向传播计算误差函数对权重矩阵、偏置项、以及投影中间矩阵的偏导:
Figure BDA0002282682350000105
Figure BDA0002282682350000106
Figure BDA0002282682350000107
Figure BDA0002282682350000108
其中,Wd、Wd+1为第d、d+1层神经元的权重向量,
Figure BDA0002282682350000109
为第0、d+1、d+2层神经元的输入向量,
Figure BDA00022826823500001010
为第d层神经元的输出向量,bd为第d层神经元的偏置向量,h()为激活函数,h'()为激活函数的导数,U'为投影中间矩阵,x'(n)为第n个降维后的数据样本(即神经网络模型第n个输入数据样本)。
5.4对权重向量、偏置向量和投影中间矩阵进行更新,再根据投影中间矩阵更新投影矩阵:
Figure BDA00022826823500001011
其中,η为学习率,通过一定的学习率调整神经网络模型的权重向量和投影矩阵,使神经网络模型不断的自学习。
在模型训练过程中,先将原始数据样本经投影矩阵投影到较低维度,再输入至神经网络模型中,通过前向传播和反向传播更新神经网络模型和投影矩阵,在学习训练数据样本内部特征和潜在属性的同时,使数据样本具有更少的噪音,使模型精度更高,时间复杂度和空间复杂度更低。本发明并不是简单的将缺失项填充或删除数据样本,因而本发明的神经网络模型在数据缺失情况下具有更好的鲁棒性。
5.5当达到训练次数或误差函数小于设定阈值时,完成神经网络模型的训练,得到训练好的神经网络模型。本实施例中,采用随机梯度下降法,由于每个样本数据缺失不同,所以一个批量的大小为1,将一个批量中的每个数据样本输入,计算误差函数,并进行反向更新,直到达到训练次数或者设定阈值,使模型收敛。
6、将网络异常测试数据经过投影矩阵降维后,输入至训练好的神经网络模型中,模型输出的结果即为网络异常检测结果。
本发明的检测方法将输入的含缺失项的数据投影到一个低维空间,提取了原始数据的重要性质,并利用神经网络模型调整投影矩阵,反复学习不同种类数据的深层次特征,有效地的解决了数据缺失导致模型不稳定的问题。
相比较于传统的神经网络,该方法使用了更少的神经元,降低了神经网络模型的复杂度,减少了模型训练和预测的时间,并且充分利用了每个数据样本完备项的信息,深入学习数据样本信息的特性,使模型在数据缺失时在多个不同的评价指标上具有更好的鲁棒性。
如图4-8所示,通过仿真实验验证本发明技术方案的优势,AVNN为本发明的神经网络模型,VNN为传统神经网络模型。图4为AVNN和VNN在不同损失率下的检测准确度,由图4可知,本发明的神经网络模型的检测准确度高于传统神经网络模型的检测准确度,且随着损失率的增加,本发明的神经网络模型能够将准确度保持在88%以上。图5为AVNN和VNN在不同损失率下的查准率,由图5可知,本发明的神经网络模型的查准率明显高于传统神经网络模型的查准率,且随着损失率的增加,本发明的神经网络模型能够将查准率保持在86%以上。图6为AVNN和VNN在不同损失率下的误判率,由图6可知,本发明的神经网络模型的误判率明显低于传统神经网络模型的查准率,特别是随着损失率的增加,本发明的神经网络模型的误判断保持在5%以下,而传统神经网络模型的误判断急剧上升,高达20%。图7为AVNN和VNN在无缺失项情况下准确度、查准率、误判率以及消耗总时间对比图,由图7可知,本发明的神经网络模型所需要的时间TimeCost明显低于传统神经网络模型,本发明的神经网络模型耗时为228s,传统神经网络模型耗时为248s。图8为AVNN和VNN在有缺失项情况下准确度、查准率、误判率以及消耗总时间对比图,由图8可知,本发明的神经网络模型在准确度、查准率、误判率以及消耗总时间上均要优于传统神经网络模型。通过实验验证了本发明的技术方案在对于含有缺失数据的检测上具有更突出的优势。
相应的,一种计算机可读介质,其上存储有计算机指令,所述计算机指令在由处理器执行时实现如上述的基于神经网络的网络异常检测方法的步骤。
相应的,一种基于神经网络的网络异常检测装置,包括处理器及与所述处理器通信连接的存储器;
处理器被配置为:
将N个网络流量数据向量化,并对向量化后的数据进行标准化处理,得到N个标准化向量;
构建投影矩阵,并对投影矩阵进行初始化;
构建神经网络模型,并对神经网络模型进行初始化;
根据标准化向量中的完备项和缺失项,提取投影矩阵中对应行或列生成投影中间矩阵,将标准化向量的缺失项删除,再与投影中间矩阵相乘得到降维后的数据样本;
将降维后的数据样本输入至神经网络模型,得到模型的输出向量,计算输出向量与实际值向量之间的误差函数,采用误差函数对神经网络模型的权重矩阵、偏置项、以及投影中间矩阵进行更新,完成神经网络模型的训练;
将网络异常测试数据经过投影矩阵降维后,输入至训练好的神经网络模型中,模型输出的结果即为网络异常检测结果。
以上所揭露的仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或变型,都应涵盖在本发明的保护范围之内。

Claims (8)

1.一种基于神经网络的网络异常检测方法,其特征在于,包括以下步骤:
步骤1:将N个网络流量数据向量化,并对向量化后的数据进行标准化处理,得到N个标准化向量;
步骤2:构建投影矩阵,并对投影矩阵进行初始化;
步骤3:构建神经网络模型,并对神经网络模型进行初始化;
步骤4:根据标准化向量中的完备项和缺失项,提取投影矩阵中对应行或列生成投影中间矩阵,将标准化向量的缺失项删除,再与投影中间矩阵相乘得到降维后的数据样本;
步骤5:将降维后的数据样本输入至神经网络模型,得到模型的输出向量,计算输出向量与实际值向量之间的误差函数,采用误差函数对神经网络模型的权重矩阵、偏置项、以及投影中间矩阵进行更新,完成神经网络模型的训练;
步骤6:将网络异常测试数据经过投影矩阵降维后,输入至训练好的神经网络模型中,模型输出的结果即为网络异常检测结果;
其中,所述步骤4包括以下子步骤:
步骤4.1:记录标准化向量
Figure FDA0004084512810000011
中样本数据为完备项和缺失项的下标,n=1,2,…,N,m=1,2,…,M,N为样本的数量,M为样本的维数,
Figure FDA0004084512810000012
为第n个标准化向量中的第m个样本数据;
步骤4.2:对比投影矩阵U=(u1,u2,…,um,…,uM)T的行下标与标准化向量x(n)的下标,删除与标准化向量x(n)缺失项对应的投影矩阵U中的行,得到投影中间矩阵U';
步骤4.3:将标准化向量x(n)中的缺失项删除后,再与投影中间矩阵U'相乘得到降维后的数据样本x'(n)
2.如权利要求1所述的网络异常检测方法,其特征在于,所述步骤2中,投影矩阵的构建包括以下子步骤:
步骤2.1:由N个所述标准化向量x(n)构成样本数据矩阵X,求取样本数据矩阵X的去中心化矩阵XC
Figure FDA0004084512810000013
其中,X∈RΝ×Μ,N为样本的数量,M为样本的维数;
步骤2.2:求取协方差矩阵C,
Figure FDA0004084512810000014
步骤2.3:将所述协方差矩阵C进行特征值分解得到特征矩阵E,ΛE=CE,其中,Λ为对角矩阵,对角矩阵的角元素为各特征向量对应的特征值;
步骤2.4:取特征矩阵E前K个最大特征值对应的特征向量形成投影矩阵U,U∈RM×K,K为投影空间的大小。
3.如权利要求1所述的网络异常检测方法,其特征在于,所述步骤2中,采用主成分分析法对投影矩阵初始化,使投影矩阵成为各行两两正交或各列两两正交的矩阵。
4.如权利要求1所述的网络异常检测方法,其特征在于,所述步骤3中,神经网络模型每一层神经元的数量为上一层神经元数量的2/3。
5.如权利要求1所述的网络异常检测方法,其特征在于,所述步骤3中,采用Xavier初始化方法对神经网络模型进行初始化,使神经网络模型的权重矩阵W服从
Figure FDA0004084512810000021
的均匀分布,偏置项的初始值为0;
其中,Nx为神经网络模型输入数据样本的维数,Ny为神经网络模型输出向量的维数。
6.如权利要求1所述的网络异常检测方法,其特征在于,所述步骤5包括以下子步骤:
步骤5.1:将降维后的数据样本x'(n)输入至神经网络模型得到的输出向量y'(n)中的元素为
Figure FDA0004084512810000022
Figure FDA0004084512810000023
分别为向量y'(n)
Figure FDA0004084512810000024
中第c个元素,y'(n)为与降维后的数据样本x'(n)对应的输出向量,
Figure FDA0004084512810000025
为与降维后的数据样本x'(n)对应的第D层的输入向量,第D层为输出层;
步骤5.2:计算输出向量y'(n)与实际值向量y(n)之间的误差函数
Figure FDA0004084512810000026
Figure FDA0004084512810000027
为实际值向量y(n)中的第c个元素;
步骤5.3:计算误差函数对权重矩阵、偏置项、以及投影中间矩阵的偏导:
Figure FDA0004084512810000028
Figure FDA0004084512810000029
Figure FDA00040845128100000210
Figure FDA00040845128100000211
其中,Wd、Wd+1为第d、d+1层神经元的权重向量,
Figure FDA0004084512810000031
为第0、d+1、d+2层神经元的输入向量,
Figure FDA0004084512810000032
为第d层神经元的输出向量,bd为第d层神经元的偏置向量,h()为激活函数,h'()为激活函数的导数,U'为投影中间矩阵,x'(n)为降维后的数据样本;
步骤5.4:对权重向量、偏置向量和投影中间矩阵进行更新,再根据投影中间矩阵更新投影矩阵:
Figure FDA0004084512810000033
其中,η为学习率;
步骤5.5:当达到训练次数或误差函数小于设定阈值时,完成神经网络模型的训练,得到训练好的神经网络模型。
7.一种计算机可读介质,其特征在于,其上存储有计算机指令,所述计算机指令在由处理器执行时实现如权利要求1~6中任意一项所述的基于神经网络的网络异常检测方法的步骤。
8.一种基于神经网络的网络异常检测装置,其特征在于,包括处理器及与所述处理器通信连接的存储器;
所述处理器被配置为:
将N个网络流量数据向量化,并对向量化后的数据进行标准化处理,得到N个标准化向量;
构建投影矩阵,并对投影矩阵进行初始化;
构建神经网络模型,并对神经网络模型进行初始化;
记录标准化向量
Figure FDA0004084512810000034
中样本数据为完备项和缺失项的下标,n=1,2,…,N,m=1,2,…,M,N为样本的数量,M为样本的维数,
Figure FDA0004084512810000035
为第n个标准化向量中的第m个样本数据;
对比投影矩阵U=(u1,u2,…,um,…,uM)T的行下标与标准化向量x(n)的下标,删除与标准化向量x(n)缺失项对应的投影矩阵U中的行,得到投影中间矩阵U';
将标准化向量x(n)中的缺失项删除后,再与投影中间矩阵U'相乘得到降维后的数据样本x'(n)
将降维后的数据样本输入至神经网络模型,得到模型的输出向量,计算输出向量与实际值向量之间的误差函数,采用误差函数对神经网络模型的权重矩阵、偏置项、以及投影中间矩阵进行更新,完成神经网络模型的训练;
将网络异常测试数据经过投影矩阵降维后,输入至训练好的神经网络模型中,模型输出的结果即为网络异常检测结果。
CN201911147757.2A 2019-11-21 2019-11-21 一种基于神经网络的网络异常检测方法及装置 Active CN111222638B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911147757.2A CN111222638B (zh) 2019-11-21 2019-11-21 一种基于神经网络的网络异常检测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911147757.2A CN111222638B (zh) 2019-11-21 2019-11-21 一种基于神经网络的网络异常检测方法及装置

Publications (2)

Publication Number Publication Date
CN111222638A CN111222638A (zh) 2020-06-02
CN111222638B true CN111222638B (zh) 2023-05-12

Family

ID=70808201

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911147757.2A Active CN111222638B (zh) 2019-11-21 2019-11-21 一种基于神经网络的网络异常检测方法及装置

Country Status (1)

Country Link
CN (1) CN111222638B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112131781B (zh) * 2020-08-26 2024-06-21 浙江工业大学 基于全连接神经网络与传递率函数的钢结构损伤检测方法
CN112117475A (zh) * 2020-09-30 2020-12-22 国网四川省电力公司经济技术研究院 一种燃料电池水管理子***故障检测装置及方法
CN113343587A (zh) * 2021-07-01 2021-09-03 国网湖南省电力有限公司 用于电力工控网络的流量异常检测方法
CN114745187B (zh) * 2022-04-19 2022-11-01 中国人民解放军战略支援部队航天工程大学 一种基于pop流量矩阵的内部网络异常检测方法及***
CN114781650B (zh) * 2022-04-28 2024-02-27 北京百度网讯科技有限公司 一种数据处理方法、装置、设备以及存储介质
CN114928477B (zh) * 2022-04-28 2023-04-07 深圳信息职业技术学院 一种网络入侵检测方法、装置、可读存储介质及终端设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107809430A (zh) * 2017-10-31 2018-03-16 常州大学 一种基于极值点分类的网络入侵检测方法
CN108573243A (zh) * 2018-04-27 2018-09-25 上海敏识网络科技有限公司 一种基于深度卷积神经网络的低质量人脸的比对方法
CN108632279A (zh) * 2018-05-08 2018-10-09 北京理工大学 一种基于网络流量的多层异常检测方法
CN110213244A (zh) * 2019-05-15 2019-09-06 杭州电子科技大学 一种基于时空特征融合的网络入侵检测方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9280565B1 (en) * 2014-10-03 2016-03-08 EyeEm Mobile GmbH. Systems, methods, and computer program products for displaying images
US10732621B2 (en) * 2016-05-09 2020-08-04 Strong Force Iot Portfolio 2016, Llc Methods and systems for process adaptation in an internet of things downstream oil and gas environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107809430A (zh) * 2017-10-31 2018-03-16 常州大学 一种基于极值点分类的网络入侵检测方法
CN108573243A (zh) * 2018-04-27 2018-09-25 上海敏识网络科技有限公司 一种基于深度卷积神经网络的低质量人脸的比对方法
CN108632279A (zh) * 2018-05-08 2018-10-09 北京理工大学 一种基于网络流量的多层异常检测方法
CN110213244A (zh) * 2019-05-15 2019-09-06 杭州电子科技大学 一种基于时空特征融合的网络入侵检测方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Leman Akoglu et al..Graph based anomaly detection and description: a survey.《Data Mining and Knowledge Discovery》.2014,第626-688页. *
YONG ZHANG et al..PCCN: Parallel Cross Convolutional Neural Network for Abnormal Network Traffic Flows Detection in Multi-Class Imbalanced Network Traffic Flows.《IEEE Access》.2019,第7卷第119904-119916页. *
邴其春.城市快速路交通状态评估与预测关键技术研究.《中国博士学位论文全文数据库 (工程科技Ⅱ辑)》.2016,第1-130页. *

Also Published As

Publication number Publication date
CN111222638A (zh) 2020-06-02

Similar Documents

Publication Publication Date Title
CN111222638B (zh) 一种基于神经网络的网络异常检测方法及装置
CN108737406B (zh) 一种异常流量数据的检测方法及***
CN112231562B (zh) 一种网络谣言识别方法及***
Fan et al. Robust deep auto-encoding Gaussian process regression for unsupervised anomaly detection
CN107220635A (zh) 基于多造假方式的人脸活体检测方法
Nguyen et al. Practical and theoretical aspects of mixture‐of‐experts modeling: An overview
Irfan et al. A novel lifelong learning model based on cross domain knowledge extraction and transfer to classify underwater images
Zhang et al. Recognition of mixture control chart pattern using multiclass support vector machine and genetic algorithm based on statistical and shape features
Jha et al. Extracting low‐dimensional psychological representations from convolutional neural networks
Ekinci et al. A comparative study on machine learning techniques using Titanic dataset
CN113177587A (zh) 基于主动学习和变分自编码器的广义零样本目标分类方法
CN112749737A (zh) 图像分类方法及装置、电子设备、存储介质
WO2020190951A1 (en) Neural network trained by homographic augmentation
CN109858245A (zh) 一种基于改进深度置信网络的入侵检测方法
Lauren et al. A low-dimensional vector representation for words using an extreme learning machine
CN111178897B (zh) 在不平衡数据上快速特征学习的代价敏感的动态聚类方法
Balafar et al. Active learning for constrained document clustering with uncertainty region
CN112613032A (zh) 基于***调用序列的主机入侵检测方法及装置
CN111401440A (zh) 目标分类识别方法、装置、计算机设备及存储介质
CN115878804A (zh) 基于ab-cnn模型的电商评论多分类情感分析方法
Merritt et al. An experimental study of dimension reduction methods on machine learning algorithms with applications to psychometrics
CN114912109A (zh) 一种基于图嵌入的异常行为序列识别方法及***
CN115131646A (zh) 基于离散系数的深度网络模型压缩方法
Abidin et al. Wavelet based approach for facial expression recognition
CN114401135A (zh) 基于LSTM-Attention用户和实体行为分析技术的内部威胁检测方法

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
GR01 Patent grant
GR01 Patent grant