掌桥专利:专业的专利平台
掌桥专利
首页

网络流量异常检测方法、电子设备及可读存储介质

文献发布时间:2023-06-19 12:11:54


网络流量异常检测方法、电子设备及可读存储介质

技术领域

本发明涉及计算机技术领域,尤其涉及一种网络流量异常检测方法、电子设备及可读存储介质。

背景技术

随着互联网数字化技术的发展,网络环境正遭越来越大的冲击,网络攻击方式变得多样化,直接威胁着用户的数据信息安全。然而,随着人工智能和大数据的兴起,深度学习技术对网络入侵的检测起到了极大的帮助作用。

目前,检测网络入侵的方法主要基于历史数据库内的流量信息,通过存取很大的数据流量,人工分析并设计数据的内在特征并进行降维,再利用传统机器学习技术进行异常检测。

但是,上述检测方法中实时数据需要一定时间的积累才能用于网络的自训练过程,若攻击方式在某一时刻发生了改变,网络响应不及时,且需要人工分析网络数据的特征共性,因此会造成检测效率较低。

发明内容

本发明提供一种网络流量异常检测方法、电子设备及可读存储介质,用以解决现有技术需要收集数据量大,检测效率低等问题的缺陷,实现有效提高检测效率的目标。

本发明提供一种网络流量异常检测方法,包括:

获取实时网络流量数据,并对所述实时网络流量数据进行第一预设处理,获取第一实时流量数据;

将所述第一实时流量数据输入目标深度单类概率模型,以通过进行端到端的数据分析,实现网络流量异常的实时检测;

其中,所述目标深度单类概率模型为预先通过对正常网络下的流量数据提取设定类型特征,并基于所述设定类型特征,在改进的深度单类模型损失函数下训练获取的。

根据本发明一个实施例的网络流量异常检测方法,在所述将所述第一实时流量数据输入目标深度单类概率模型之前,还包括训练所述目标深度单类概率模型的步骤,包括:

获取第一目标时间段内的第一网络流量数据,并对所述第一网络流量数据进行第一数据处理,获取正常网络下的第一有效网络数据;

搭建初始编码-解码深度网络模型,并基于第一损失函数,利用所述第一有效网络数据,训练所述初始编码-解码深度网络模型,直至训练收敛完成,获取目标编码-解码深度网络模型并提取所述第一有效网络数据的所述设定类型特征;

获取第二目标时间段内的第二网络流量数据,并对所述第二网络流量数据进行第二数据处理,获取正常网络下的第二有效网络数据;

基于所述目标编码-解码深度网络模型中编码层的架构和参数,搭建初始深度单类概率模型,并基于所述改进的深度单类模型损失函数,利用所述第二有效网络数据,训练所述初始深度单类概率模型,使所述第二有效网络数据在高维特征空间中向所述设定类型特征收缩,直至训练收敛完成,获取所述目标深度单类概率模型。

根据本发明一个实施例的网络流量异常检测方法,所述获取所述目标深度单类概率模型,还包括:

通过计算所述高维特征空间中距离所述设定类型特征最远的特征点至所述设定类型特征的距离,获取所述高维特征空间的球形半径。

根据本发明一个实施例的网络流量异常检测方法,所述通过进行端到端的数据分析,实现网络流量异常的实时检测,包括:

利用所述目标深度单类概率模型,提取所述第一实时流量数据的隐向量特征,并计算所述隐向量特征至所述设定类型特征的第一距离;

比较所述第一距离与所述球形半径,确定实时网络流量的异常情况。

根据本发明一个实施例的网络流量异常检测方法,所述搭建初始编码-解码深度网络模型,并基于第一损失函数,利用所述第一有效网络数据,训练所述初始编码-解码深度网络模型,包括:

采用全连接网络架构,通过确定网络层数、神经元个数以及ReLu的激励函数,搭建所述初始编码-解码深度网络模型;

基于所述第一有效网络数据,获取第一训练样本,并基于所述第一训练样本,训练所述初始编码-解码深度网络模型,直至训练收敛完成,获取所述目标编码-解码深度网络模型。

根据本发明一个实施例的网络流量异常检测方法,所述搭建初始深度单类概率模型,并基于所述改进的深度单类模型损失函数,利用所述第二有效网络数据,训练所述初始深度单类概率模型,包括:

获取所述目标编码-解码深度网络模型中编码层的架构和参数,并将所述编码层的架构和参数作为所述初始深度单类概率模型的架构和参数,搭建所述初始深度单类概率模型;

将所述第二有效网络数据输入所述初始深度单类概率模型,形成所述高维特征空间,并利用所述第二有效网络数据训练所述初始深度单类概率模型,使所述高维特征空间中的特征点在训练过程中向所述设定类型特征收缩,直至训练收敛完成,形成球形包络并获取所述目标深度单类概率模型;

加入松弛变量,剔除所述球形包络中特征数据的噪点,并获取所述球形包络中距离所述设定类型特征最远的特征点至所述设定类型特征的距离,作为所述球形包络的半径。

根据本发明一个实施例的网络流量异常检测方法,还包括:

通过引进exponential surrogate loss控制松弛变量,确定所述改进的深度单类模型损失函数如下:

其中,

根据本发明一个实施例的网络流量异常检测方法,所述提取所述第一有效网络数据的所述设定类型特征,包括:

在利用所述第一有效网络数据训练所述初始编码-解码深度网络模型的过程中,获取训练收敛结果达到设定目标时刻对应的一轮训练提取的所述第一有效网络数据的隐向量中心,并将所述隐向量中心作为所述第一有效网络数据的所述设定类型特征。

本发明还提供一种网络流量异常检测装置,包括:

数据获取模块,用于获取实时网络流量数据,并对所述实时网络流量数据进行第一预设处理,获取第一实时流量数据;

检测模块,用于将所述第一实时流量数据输入目标深度单类概率模型,以通过进行端到端的数据分析,实现网络流量异常的实时检测;

其中,所述目标深度单类概率模型为预先通过对正常网络下的流量数据提取设定类型特征,并基于所述设定类型特征,在改进的深度单类模型损失函数下训练获取的。

根据本发明一个实施例的网络流量异常检测装置,还包括建模模块,用于:

获取第一目标时间段内的第一网络流量数据,并对所述第一网络流量数据进行第一数据处理,获取正常网络下的第一有效网络数据;

搭建初始编码-解码深度网络模型,并基于第一损失函数,利用所述第一有效网络数据,训练所述初始编码-解码深度网络模型,直至训练收敛完成,获取目标编码-解码深度网络模型并提取所述第一有效网络数据的所述设定类型特征;

获取第二目标时间段内的第二网络流量数据,并对所述第二网络流量数据进行第二数据处理,获取正常网络下的第二有效网络数据;

基于所述目标编码-解码深度网络模型中编码层的架构和参数,搭建初始深度单类概率模型,并基于所述改进的深度单类模型损失函数,利用所述第二有效网络数据,训练所述初始深度单类概率模型,使所述第二有效网络数据在高维特征空间中向所述设定类型特征收缩,直至训练收敛完成,获取所述目标深度单类概率模型。

根据本发明一个实施例的网络流量异常检测装置,所述建模模块,在用于所述获取所述目标深度单类概率模型时,还用于:

通过计算所述高维特征空间中距离所述设定类型特征最远的特征点至所述设定类型特征的距离,获取所述高维特征空间的球形半径。

根据本发明一个实施例的网络流量异常检测装置,所述检测模块,在用于所述通过进行端到端的数据分析,实现网络流量异常的实时检测时,用于:

利用所述目标深度单类概率模型,提取所述第一实时流量数据的隐向量特征,并计算所述隐向量特征至所述设定类型特征的第一距离;

比较所述第一距离与所述球形半径,确定实时网络流量的异常情况。

根据本发明一个实施例的网络流量异常检测装置,所述建模模块,在用于所述搭建初始编码-解码深度网络模型,并基于第一损失函数,利用所述第一有效网络数据,训练所述初始编码-解码深度网络模型时,用于:

采用全连接网络架构,通过确定网络层数、神经元个数以及ReLu的激励函数,搭建所述初始编码-解码深度网络模型;

基于所述第一有效网络数据,获取第一训练样本,并基于所述第一训练样本,训练所述初始编码-解码深度网络模型,直至训练收敛完成,获取所述目标编码-解码深度网络模型。

根据本发明一个实施例的网络流量异常检测装置,所述建模模块,在用于所述搭建初始深度单类概率模型,并基于所述改进的深度单类模型损失函数,利用所述第二有效网络数据,训练所述初始深度单类概率模型时,用于:

获取所述目标编码-解码深度网络模型中编码层的架构和参数,并将所述编码层的架构和参数作为所述初始深度单类概率模型的架构和参数,搭建所述初始深度单类概率模型;

将所述第二有效网络数据输入所述初始深度单类概率模型,形成所述高维特征空间,并利用所述第二有效网络数据训练所述初始深度单类概率模型,使所述高维特征空间中的特征点在训练过程中向所述设定类型特征收缩,直至训练收敛完成,形成球形包络并获取所述目标深度单类概率模型;

加入松弛变量,剔除所述球形包络中特征数据的噪点,并获取所述球形包络中距离所述设定类型特征最远的特征点至所述设定类型特征的距离,作为所述球形包络的半径。

根据本发明一个实施例的网络流量异常检测装置,所述建模模块,还用于:

通过引进exponential surrogate loss控制松弛变量,确定所述改进的深度单类模型损失函数如下:

其中,

根据本发明一个实施例的网络流量异常检测装置,所述建模模块,在用于所述提取所述第一有效网络数据的所述设定类型特征时,用于:

在利用所述第一有效网络数据训练所述初始编码-解码深度网络模型的过程中,获取训练收敛结果达到设定目标时刻对应的一轮训练提取的所述第一有效网络数据的隐向量中心,并将所述隐向量中心作为所述第一有效网络数据的所述设定类型特征。

本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述处理器执行所述程序或指令时,实现如上述任一种所述的网络流量异常检测方法的步骤。

本发明还提供一种非暂态计算机可读存储介质,其上存储有程序或指令,所述程序或指令被计算机执行时,实现如上述任一种所述的网络流量异常检测方法的步骤。

本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述的网络流量异常检测方法的步骤。

本发明提供的网络流量异常检测方法、电子设备及可读存储介质,通过改进网络优化的损失函数并采用深度单类概率模型进行端到端的分析检测,可适应于不同高维度的数据信息,且可以直接由输入到输出,不存在二次优化的断层,因此提取的特征对正常数据和异常数据更具有区分性,数据特征的完备性和异常检测的有效性都能得到有效保障,从而能有效提高检测效率和检测准确性。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对本发明实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的网络流量异常检测方法的流程示意图之一;

图2为本发明提供的网络流量异常检测方法的流程示意图之二;

图3为根据本发明提供的网络流量异常检测方法中目标编码-解码深度网络模型的网络架构示意图;

图4为本发明提供的网络流量异常检测装置的结构示意图;

图5为本发明提供的电子设备的实体结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明针对现有技术需要收集数据量大,检测效率低等的问题,通过改进网络优化的损失函数并采用深度单类概率模型进行端到端的分析检测,可适应于不同高维度的数据信息,且可以直接由输入到输出,不存在二次优化的断层,因此提取的特征对正常数据和异常数据更具有区分性,数据特征的完备性和异常检测的有效性都能得到有效保障,从而能有效提高检测效率和检测准确性。

具体的,本发明主要构建了正常模式的数据库;利用自动编码-解码网络,提取高维度网络流量信息的时序特征;提出并设计了一种深度网络,代替传统的机器学习OC-SVM的单类学习;结合Deep-SVM与编码-解码网络的损失函数共同优化网络;使用AUC指标评价网络入侵检测系统的性能。以下将结合附图,具体通过多个实施例对本发明进行展开说明和介绍。

图1为本发明提供的网络流量异常检测方法的流程示意图之一,如图1所示,该方法包括:

S101,获取实时网络流量数据,并对所述实时网络流量数据进行第一预设处理,获取第一实时流量数据。

可以理解为,本发明可以对正在运行的网络进行网络流量异常的检测,因此可以实时地获取网络中的流量数据,且可将其称为是实时网络流量数据。应理解的是,此处实时网络流量数据可以是网络当前的流量数据,也可以是网络运行过程中实时获取的流量数据的历史记录,本发明对此并不作具体限制。

通常,获取的实时网络流量数据中不同数据的标签代表的数据可能属于不同的范围,这会导致不同数据相互之间存在差异,且数据中可能存在噪声数据,计算会出现较大误差甚至无法正常运算。因此,本发明对获取的实时网络流量数据会进行数据清洗,去除噪声污染数据,并对清洗后的数据按照一定标准进行归一化处理,如将数据全部映射到[0, 1]范围内的数据。则,对实时网络流量数据实施的上述一系列处理可统称为是第一预设处理,进行归一化处理后的数据即可称为是第一实时流量数据。

S102,将所述第一实时流量数据输入目标深度单类概率模型,以通过进行端到端的数据分析,实现网络流量异常的实时检测。

其中,所述目标深度单类概率模型为预先通过对正常网络下的流量数据提取设定类型特征,并基于所述设定类型特征,在改进的深度单类模型损失函数下训练获取的。

可以理解为,在获取第一实时流量数据的基础上,可将其输入到预先建立好的目标深度单类概率模型中,以利用该目标深度单类概率模型提取该第一实时流量数据的特征,并根据该特征,端对端的对该第一实时流量数据进行分析检测,确定检测结果。也即根据该特征判断是否存在网络流量入侵或网络异常,并输出判断的结果。

其中,目标深度单类概率模型是预先通过利用目前大数据技术和深度学习技术,实时统计历史网络流量数据,并对其中正常时间内的数据进行特征提取,然后基于提取的特征,通过设计设计一种改进的优化神经网络的损失函数,利用深度单类检测技术进行模型训练获取的。该目标深度单类概率模型实质上是一种单类深度神经网络模型。

也就是说,通过设计一种基于深度学习的单类神经网络框架,可以在实时检测时采用端对端的对网络流量数据进行分析检测。该方法把特征的提取和分析都交给深度神经网络处理,不需要人工分析网络数据的特征共性,网络可适应于不同高维度的数据信息,且效率高,能实时准确的定位异常数据流量,进行提前预警。

本发明提供的网络流量异常检测方法,通过改进网络优化的损失函数并采用深度单类概率模型进行端到端的分析检测,可适应于不同高维度的数据信息,且可以直接由输入到输出,不存在二次优化的断层,因此提取的特征对正常数据和异常数据更具有区分性,数据特征的完备性和异常检测的有效性都能得到有效保障,从而能有效提高检测效率和检测准确性。

可以知道,现有技术在进行网络流量的检测时,检测过程需要存取很大的数据流量来分析内在特征,因此需要较大的存储媒介。为此,本发明根据上述各实施例提供的网络流量异常检测方法可选地,如图2所示,为本发明提供的网络流量异常检测方法的流程示意图之二,其中除右侧实时检测分支之外,在所述将所述第一实时流量数据输入目标深度单类概率模型之前,该方法还包括训练所述目标深度单类概率模型的步骤,包括:

获取第一目标时间段内的第一网络流量数据,并对所述第一网络流量数据进行第一数据处理,获取正常网络下的第一有效网络数据;

搭建初始编码-解码深度网络模型,并基于第一损失函数,利用所述第一有效网络数据,训练所述初始编码-解码深度网络模型,直至训练收敛完成,获取目标编码-解码深度网络模型并提取所述第一有效网络数据的所述设定类型特征;

获取第二目标时间段内的第二网络流量数据,并对所述第二网络流量数据进行第二数据处理,获取正常网络下的第二有效网络数据;

基于所述目标编码-解码深度网络模型中编码层的架构和参数,搭建初始深度单类概率模型,并基于所述改进的深度单类模型损失函数,利用所述第二有效网络数据,训练所述初始深度单类概率模型,使所述第二有效网络数据在高维特征空间中向所述设定类型特征收缩,直至训练收敛完成,获取所述目标深度单类概率模型。

可以理解为,本发明利用目前大数据技术和深度学习技术,实时统计出历史网络流量数据,并对其中正常时间内的数据进行特征提取,然后基于提取的特征,利用深度单类检测技术建立目标深度单类概率模型(PDF),并在此基础上可以对不同于以往正常时刻的网络流量数据通过模态判别来检测异常。

具体而言,可以先获取网络运行过程中某一小段时间内的一小部分网络流量数据,并对这部分流量数据先进行数据清洗处理,消除噪声数据,得到网络正常情况(也即不存在流量异常情况)下的网络数据,再进一步对这些数据进行设定流程的规范化处理,消除数据差异,最终得到网络正常情况下规范且有效的网络数据。

应理解的是,此处为了便于区分,可以将上述某一小段时间称为第一目标时间。相应的,可以将提取的该段时间内的一小部分网络流量数据称为第一网络流量数据,将对第一网络流量数据进行的上述一系列处理统称为是第一数据处理,将最终得到的网络正常情况下规范且有效的网络数据称为第一有效网络数据。

之后,通过搭建网络框架并初始化设定网络参数以及训练过程需要用到的各项指数和函数(包括损失函数,为便于区分可称其为第一损失函数)等,初始化搭建编码-解码深度网络模型,得到初始编码-解码深度网络模型。

再之后,利用上述得到的一小部分第一有效网络数据,训练上述初始编码-解码深度网络模型,并在训练过程中通过第一损失函数判断模型的收敛情况并确定网络参数的更新策略,直至判断模型收敛结果达到设定目标,将当前网络参数下的模型作为目标编码-解码深度网络模型,同时提取第一有效网络数据的设定类型特征。

可选地,所述提取所述第一有效网络数据的所述设定类型特征,包括:在利用所述第一有效网络数据训练所述初始编码-解码深度网络模型的过程中,获取训练收敛结果达到设定目标时刻对应的一轮训练提取的所述第一有效网络数据的隐向量中心,并将所述隐向量中心作为所述第一有效网络数据的所述设定类型特征。

具体的,在上述利用第一有效网络数据对初始编码-解码深度网络模型进行多轮迭代训练得到目标编码-解码深度网络模型的过程中,每轮训练过程需提取第一有效网络数据的隐向量中心作为中间量进行下一轮的训练过程。当在某轮训练后通过第一损失函数判断训练收敛结果达到设定目标时,将该某轮训练作为当前一轮训练,同时保留当前一轮训练过程中提取的第一有效网络数据的隐向量中心,将其作为网络正常情况下网络流量数据的设定类型特征。

再之后,当网络数据持续输入时,获取网络持续运行过程中另一时间段内的网络流量数据,并对这部分网络流量数据作如上述第一网络流量数据同样的清洗处理和规范化处理,得到这段时间网络正常情况下规范且有效的网络数据。并且类似的,可以将这另一时间称为第二目标时间,将第二目标时间内的网络流量数据称为第二网络流量数据,将对第二网络流量数据进行的上述一系列处理称为第二数据处理,将最终有效的网络数据称为第二有效网络数据。

最后,在完成数据准备之后,可以获取上述得到的目标编码-解码深度网络模型中编码层的网络架构和参数,将其作为待搭建网络模型的网络架构和参数,得到初始深度单类概率模型。再利用上述得到的第二有效网络数据,训练该初始深度单类概率模型,并在训练过程中通过改进的深度单类模型损失函数判断模型的收敛情况并确定网络参数的更新策略,使第二有效网络数据的特征在高维特征空间中向上述设定类型特征收缩聚拢,直至判断模型收敛结果达到设定目标,将当前网络参数下的模型作为目标深度单类概率模型。

本发明在学习过程中使用持续学习概念,先收集一小部分数据构建一个深度学习模型,来提取网络正常情况下的设定类型特征,当网络数据持续输入时,可以获取新的数据来覆盖老的数据,并利用新数据同步训练更新网络参数。也就是说,本发明只需要开辟一个有限的空间就可以满足网络的学习,能够有效避免存储空间不足的问题。其中,根据上述各实施例提供的网络流量异常检测方法可选地,第一数据处理(和/或第二数据处理)的过程,包括:对所述第一网络流量数据(和/或第二网络流量数据)进行清洗,消除噪声数据,以构建正常网络下的流量数据;利用TRIM函数、LTRIM函数和/或RTRIM函数,去掉所述正常网络下的流量数据中的多余空格;对去除多余空格后的流量数据进行去重处理,消除字段冗余,获取去重后的流量数据;对所述去重后的流量数据进行归一化规范处理,获取所述第一有效网络数据(和/或第二有效网络数据)。

可以理解为,本发明在提取数据特征前,先会对数据进行预处理,这里的数据包括第一网络流量数据和/或第二网络流量数据。预处理具体如下:

首先,收集一段时间范围内的网络流量数据,并对该数据进行清洗,构建网络正常(即不存在网络流量异常)模式时间内的网络流量数据,消除没有必要的噪声。

其次,原始数据中夹杂着大量的空格,会影响筛选数据或统计。本发明使用 TRIM、LTRIM和RTRIM 这 3个函数去掉多余的空格,仅在字符间保留一个空格。

再次,数据集中字段信息可能存在冗余,冗余的部分可能会造成训练的不均衡,存在过度训练的状况,因此本发明对数据进行字段去重处理。

最后,数据集中不同的标签代表的数据属于不同的范围,相互之间存在差异,可以通过将这些数据归一化到每个数据的最小值为零,最大值为 1来进行数据规范处理,这样训练时平衡了各个数据之间的关联性。

本发明可以处理高维度数据信息,数据特征的完备性和异常检测的有效性都能依靠深度学习技术进行有效保障,相比于传统的机器学习方法检测效率和准确率都具有显著提升。

其中,根据上述各实施例提供的网络流量异常检测方法可选地,所述获取所述目标深度单类概率模型,还包括:通过计算所述高维特征空间中距离所述设定类型特征最远的特征点至所述设定类型特征的距离,获取所述高维特征空间的球形半径。

具体而言,在根据上述实施例利用第二有效网络数据训练获取目标深度单类概率模型的过程中,可以在模型收缩完成后,获取到收缩为球形包络的高维特征空间,并可获取到其中距离设定类型特征最大的特征点,然后计算该特征点至设定类型特征的距离,并将该距离作为球形包络的半径。其中,根据上述各实施例提供的网络流量异常检测方法可选地,所述通过进行端到端的数据分析,实现网络流量异常的实时检测,包括:利用所述目标深度单类概率模型,提取所述第一实时流量数据的隐向量特征,并计算所述隐向量特征至所述设定类型特征的第一距离;比较所述第一距离与所述球形半径,确定实时网络流量的异常情况。

可以理解为,在进行实时网络流量异常检测时,可以将第一实时流量数据输入目标深度单类概率模型进行特征提取,得到第一实时流量数据的隐向量特征,并计算该隐向量特征至设定类型特征的距离作为第一距离。

之后,可以直接比较该第一距离与球形包络的半径的大小,判断当前网络流量是否被入侵。通常如果第一距离大于球形包络的半径,说明上述隐向量特征在球形包络之外,那么对应的网络流量数据是存在异常的,可认为存在网络流量异常,否则认为不存在网络流量异常。

另外,也可以将第一距离与球形包络的半径求差值,并根据该差值的正负,来判断当前网络流量是否被入侵。例如,当第一距离与球形包络的半径的差值为负时,说明当前实时网络流量在球形包络内,判定为正常,反之则为异常。

其中,根据上述各实施例提供的网络流量异常检测方法可选地,所述搭建初始编码-解码深度网络模型,并基于第一损失函数,利用所述第一有效网络数据,训练所述初始编码-解码深度网络模型,包括:

采用全连接网络架构,通过确定网络层数、神经元个数以及ReLu的激励函数,搭建所述初始编码-解码深度网络模型;基于所述第一有效网络数据,获取第一训练样本,并基于所述第一训练样本,训练所述初始编码-解码深度网络模型,直至训练收敛完成,获取所述目标编码-解码深度网络模型。

可以理解为,如图3所示,为根据本发明提供的网络流量异常检测方法中目标编码-解码深度网络模型的网络架构示意图,其中包括输入层、输出层和多个隐含层,且存在中心神经元。本发明通过分析网络异常入侵的数据,可以知道正常时间段内的数据量要远高于异常情况,因此考虑将数据作为单类数据训练深度网络,构建正常模态的检测网络。也就是说,对于数据特征提取,本发明利用第一有效网络数据训练获取目标编码-解码深度网络模型,并利用该模型,通过网络的压缩编码和解码过程,学习第一有效网络数据的设定类型特征。

具体而言,首先通过确定全连接的架构,并定义网络层数和神经元个数,构建encoder-decoder深度网络框架;其次,定义ReLu函数作为激活函数;再次,为了适应超高维度数据的数据,前期可以使用主元分析PCA法或者也可以设计更深层的深度网络架构,来对数据进行降维,从而将第一有效网络数据归一化到同一输入量,得到第一训练样本;最后,以均方差(Mean Square Error, MSE)函数作为目标函数,学习率设定为 1e-3,并使用stochastic gradient descent(SGD)优化器,以每100个epoches衰减10%训练初始编码-解码深度网络模型,直至训练收敛完成,获取目标编码-解码深度网络模型。同时,可以保留中间隐向量(latent tensor)作为数据的中心点,也即设定类型特征。

其中,根据上述各实施例提供的网络流量异常检测方法可选地,所述搭建初始深度单类概率模型,并基于所述改进的深度单类模型损失函数,利用所述第二有效网络数据,训练所述初始深度单类概率模型,包括:获取所述目标编码-解码深度网络模型中编码层的架构和参数,并将所述编码层的架构和参数作为所述初始深度单类概率模型的架构和参数,搭建所述初始深度单类概率模型;将所述第二有效网络数据输入所述初始深度单类概率模型,形成所述高维特征空间,并利用所述第二有效网络数据训练所述初始深度单类概率模型,使所述高维特征空间中的特征点在训练过程中向所述设定类型特征收缩,直至训练收敛完成,形成球形包络并获取所述目标深度单类概率模型;加入松弛变量,剔除所述球形包络中特征数据的噪点,并获取所述球形包络中距离所述设定类型特征最远的特征点至所述设定类型特征的距离,作为所述球形包络的半径。

可以理解为,本发明通过搭建初始深度单类概率模型,并使用设计的新型损失函数来优化网络,构建目标深度单类概率模型(PDF)。具体而言,包括如下处理步骤:

首先,由特征提取阶段训练得到的目标编码-解码深度网络模型,保留编码层的架构和参数,作为待构建初始深度单类概率模型的初始网络架构和参数,得到初始深度单类概率模型。

其次,将获取的第二有效网络数据输入初始深度单类概率模型,此外也可将第一有效网络数据重新输入初始深度单类概率模型,或者将第一有效网络数据和第二有效网络数据一起输入初始深度单类概率模型,并以改进的深度单类模型损失函数作为目标函数,学习率设定为 1e-3,使用stochastic gradient descent(SGD)优化器,以每100个epoches衰减10%训练初始深度单类概率模型,逐步最小化高维特征空间中特征点与设定类型特征(即正常网络数据中心点)的距离,也即把空间中所有的数据点向设定类型特征收束,直至球形概率模型收缩完成,形成一种球形包络,获取目标深度单类概率模型。

同时,在收缩形成的球形包络加入松弛变量剔除数据内的噪点,以高维特征空间内特征点离中心点距离的最大值作为球形半径。其中,高维特征空间即是数据点在高维数据空间的分布。

也就是说,本发明先需要从第一有效网络数据的数据中寻找到超球体(包络球形)的中心点,因此先训练了一个初始化模型,也即目标编码-解码深度网络模型,然后根据新增的网络流量数据,持续更新网络的参数模型,最终可以得到目标深度单类概率模型。

实际应用中,本发明包含了网络参数的训练优化和测试过程。具体的,模型训练的特征提取阶段以均方差(Mean Square Error, MSE)作为目标函数(objective function),训练初始特征网络。用于特征提取的编码-解码深度网络模型和深度单类估计网络模型的学习率均设定为1e-3,使用 SGD(stochastic gradient descent)优化器,以每100个epoches衰减10%进行训练。

使用测试数据测试时,测试该测试数据的隐向量中心至中心固定点(即设定类型特征)的距离与球形包络半径的差值,当差值为负时,说明该测试数据在球形包络内,判定为正常,反之则为异常。

其中,根据上述各实施例提供的网络流量异常检测方法可选地,还包括:

通过引进exponential surrogate loss控制松弛变量,确定所述改进的深度单类模型损失函数如下:

其中,

具体而言,考虑到原始机器学习中单类支持向量机优化函数为:

式中,

由上述公式可以看出对于神经网络,此优化函数是不可导的。因此本发明引进了exponential surrogate loss来控制松弛变量,exponential surrogate loss如下:

从而可以设计出如上述所示的有利于深度单类概率模型的改进深度单类模型损失函数,来优化网络。

在确定上述损失函数来优化网络的基础上,本发明可以先找到一个最优的

可求得:

设定

利用拉格朗日乘子法,可以得到如下乘子式:

将上述乘子式对拉格朗日参数

可得如下λ表达式:

将上述λ表达式代回到上述乘子式中,可得:

基于相同的发明构思,本发明根据上述各实施例还提供一种网络流量异常检测装置,该装置用于在上述各实施例中实现网络流量异常检测。因此,在上述各实施例的网络流量异常检测方法中的描述和定义,可以用于本发明中各个执行模块的理解,具体可参考上述方法实施例,此处不在赘述。

根据本发明的一个实施例,网络流量异常检测装置的结构如图4所示,为本发明提供的网络流量异常检测装置的结构示意图,该装置可以用于实现上述各方法实施例中的网络流量异常检测,该装置包括:数据获取模块401和检测模块402。其中:

数据获取模块401用于获取实时网络流量数据,并对所述实时网络流量数据进行第一预设处理,获取第一实时流量数据;检测模块402用于将所述第一实时流量数据输入目标深度单类概率模型,以通过进行端到端的数据分析,实现网络流量异常的实时检测。

其中,所述目标深度单类概率模型为预先通过对正常网络下的流量数据提取设定类型特征,并基于所述设定类型特征,在改进的深度单类模型损失函数下训练获取的。

具体而言,数据获取模块401可以实时地获取网络中的流量数据,且可将其称为是实时网络流量数据。应理解的是,此处实时网络流量数据可以是网络当前的流量数据,也可以是网络运行过程中实时获取的流量数据的历史记录,本发明对此并不作具体限制。

通常,获取的实时网络流量数据中不同数据的标签代表的数据可能属于不同的范围,这会导致不同数据相互之间存在差异,且数据中可能存在噪声数据,计算会出现较大误差甚至无法正常运算。因此,数据获取模块401对获取的实时网络流量数据会进行数据清洗,去除噪声污染数据,并对清洗后的数据按照一定标准进行归一化处理,如将数据全部映射到[0, 1]范围内的数据。则,对实时网络流量数据实施的上述一系列处理可统称为是第一预设处理,进行归一化处理后的数据即可称为是第一实时流量数据。

再之后,在获取第一实时流量数据的基础上,检测模块402可通过将该第一实时流量数据输入到预先建立好的目标深度单类概率模型中,提取该第一实时流量数据的特征,并根据该特征,端对端的对该第一实时流量数据进行分析检测,确定检测结果。也即根据该特征判断是否存在网络流量入侵或网络异常,并输出判断的结果。

其中,目标深度单类概率模型是预先通过利用目前大数据技术和深度学习技术,实时统计历史网络流量数据,并对其中正常时间内的数据进行特征提取,然后基于提取的特征,通过设计设计一种改进的优化神经网络的损失函数,利用深度单类检测技术进行模型训练获取的。该目标深度单类概率模型实质上是一种单类深度神经网络模型。

本发明提供的网络流量异常检测装置,通过改进网络优化的损失函数并采用深度单类概率模型进行端到端的分析检测,可适应于不同高维度的数据信息,且可以直接由输入到输出,不存在二次优化的断层,因此提取的特征对正常数据和异常数据更具有区分性,数据特征的完备性和异常检测的有效性都能得到有效保障,从而能有效提高检测效率和检测准确性。

进一步地,本发明的网络流量异常检测装置,还包括建模模块,用于:

获取第一目标时间段内的第一网络流量数据,并对所述第一网络流量数据进行第一数据处理,获取正常网络下的第一有效网络数据;

搭建初始编码-解码深度网络模型,并基于第一损失函数,利用所述第一有效网络数据,训练所述初始编码-解码深度网络模型,直至训练收敛完成,获取目标编码-解码深度网络模型并提取所述第一有效网络数据的所述设定类型特征;

获取第二目标时间段内的第二网络流量数据,并对所述第二网络流量数据进行第二数据处理,获取正常网络下的第二有效网络数据;

基于所述目标编码-解码深度网络模型中编码层的架构和参数,搭建初始深度单类概率模型,并基于所述改进的深度单类模型损失函数,利用所述第二有效网络数据,训练所述初始深度单类概率模型,使所述第二有效网络数据在高维特征空间中向所述设定类型特征收缩,直至训练收敛完成,获取所述目标深度单类概率模型。

可选地,所述建模模块,在用于所述获取所述目标深度单类概率模型时,还用于:

通过计算所述高维特征空间中距离所述设定类型特征最远的特征点至所述设定类型特征的距离,获取所述高维特征空间的球形半径。

可选地,所述检测模块,在用于所述通过进行端到端的数据分析,实现网络流量异常的实时检测时,用于:

利用所述目标深度单类概率模型,提取所述第一实时流量数据的隐向量特征,并计算所述隐向量特征至所述设定类型特征的第一距离;

比较所述第一距离与所述球形半径,确定实时网络流量的异常异常情况。

可选地,所述建模模块,在用于所述搭建初始编码-解码深度网络模型,并基于第一损失函数,利用所述第一有效网络数据,训练所述初始编码-解码深度网络模型时,用于:

采用全连接网络架构,通过确定网络层数、神经元个数以及ReLu的激励函数,搭建所述初始编码-解码深度网络模型;

基于所述第一有效网络数据,获取第一训练样本,并基于所述第一训练样本,训练所述初始编码-解码深度网络模型,直至训练收敛完成,获取所述目标编码-解码深度网络模型。

可选地,所述建模模块,在用于所述搭建初始深度单类概率模型,并基于所述改进的深度单类模型损失函数,利用所述第二有效网络数据,训练所述初始深度单类概率模型时,用于:

获取所述目标编码-解码深度网络模型中编码层的架构和参数,并将所述编码层的架构和参数作为所述初始深度单类概率模型的架构和参数,搭建所述初始深度单类概率模型;

将所述第二有效网络数据输入所述初始深度单类概率模型,形成所述高维特征空间,并利用所述第二有效网络数据训练所述初始深度单类概率模型,使所述高维特征空间中的特征点在训练过程中向所述设定类型特征收缩,直至训练收敛完成,形成球形包络并获取所述目标深度单类概率模型;

加入松弛变量,剔除所述球形包络中特征数据的噪点,并获取所述球形包络中距离所述设定类型特征最远的特征点至所述设定类型特征的距离,作为所述球形包络的半径。

可选地,所述建模模块,还用于:通过引进exponential surrogate loss控制松弛变量,确定所述改进的深度单类模型损失函数如下:

其中,

可选地,所述建模模块,在用于所述提取所述第一有效网络数据的所述设定类型特征时,用于:

在利用所述第一有效网络数据训练所述初始编码-解码深度网络模型的过程中,获取训练收敛结果达到设定目标时刻对应的一轮训练提取的所述第一有效网络数据的隐向量中心,并将所述隐向量中心作为所述第一有效网络数据的所述设定类型特征。

可选地,所述建模模块,在用于对所述第一网络流量数据进行第一数据处理时,用于:

对所述第一网络流量数据进行清洗,消除噪声数据,以构建正常网络下的流量数据;

利用TRIM函数、LTRIM函数和/或RTRIM函数,去掉所述正常网络下的流量数据中的多余空格;

对去除多余空格后的流量数据进行去重处理,消除字段冗余,获取去重后的流量数据;

对所述去重后的流量数据进行归一化规范处理,获取所述第一有效网络数据。

可以理解的是,本发明中可以通过硬件处理器(hardware processor)来实现上述各实施例的装置中的各相关程序模块。并且,本发明的网络流量异常检测装置利用上述各程序模块,能够实现上述各方法实施例的网络流量异常检测流程,在用于实现上述各方法实施例中的网络流量异常检测时,本发明的装置产生的有益效果与对应的上述各方法实施例相同,可以参考上述各方法实施例,此处不再赘述。

作为本发明的又一个方面,本实施例根据上述各实施例提供一种电子设备,该电子设备包括存储器、处理器及存储在该存储器上并可在该处理器上运行的程序或指令,该处理器执行该程序或指令时,实现如上述各实施例所述的网络流量异常检测方法的步骤。

进一步的,本发明的电子设备还可以包括通信接口和总线。参考图5,为本发明提供的电子设备的实体结构示意图,包括:至少一个存储器501、至少一个处理器502、通信接口503和总线504。

其中,存储器501、处理器502和通信接口503通过总线504完成相互间的通信,通信接口503用于该电子设备与网络设备之间的信息传输;存储器501中存储有可在处理器502上运行的程序或指令,处理器502执行该程序或指令时,实现如上述各实施例所述的网络流量异常检测方法的步骤。

可以理解为,该电子设备中至少包含存储器501、处理器502、通信接口503和总线504,且存储器501、处理器502和通信接口503通过总线504形成相互间的通信连接,并可完成相互间的通信,如处理器502从存储器501中读取网络流量异常检测方法的程序指令等。另外,通信接口503还可以实现该电子设备与网络设备之间的通信连接,并可完成相互间信息传输,如通过通信接口503实现网络流量数据的读取等。

电子设备运行时,处理器502调用存储器501中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:获取实时网络流量数据,并对所述实时网络流量数据进行第一预设处理,获取第一实时流量数据;将所述第一实时流量数据输入目标深度单类概率模型,以通过进行端到端的数据分析,实现网络流量异常的实时检测等。

上述的存储器501中的程序指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。或者,实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

本发明还根据上述各实施例提供一种非暂态计算机可读存储介质,其上存储有程序或指令,该程序或指令被计算机执行时,实现如上述各实施例所述的网络流量异常检测方法的步骤,例如包括:获取实时网络流量数据,并对所述实时网络流量数据进行第一预设处理,获取第一实时流量数据;将第一实时流量数据输入目标深度单类概率模型,以通过进行端到端的数据分析,实现网络流量异常的实时检测等。

作为本发明的再一个方面,本实施例根据上述各实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的网络流量异常检测方法。

本发明提供的电子设备、非暂态计算机可读存储介质和计算机程序产品,通过执行上述各实施例所述的网络流量异常检测方法的步骤,改进网络优化的损失函数并采用深度单类概率模型进行端到端的分析检测,可以适应于不同高维度的数据信息,且可以直接由输入到输出,不存在二次优化的断层,因此提取的特征对正常数据和异常数据更具有区分性,数据特征的完备性和异常检测的有效性都能得到有效保障,从而能有效提高检测效率和检测准确性。

可以理解的是,以上所描述的装置、电子设备及存储介质的实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,既可以位于一个地方,或者也可以分布到不同网络单元上。可以根据实际需要选择其中的部分或全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上实施方式的描述,本领域的技术人员可以清楚地了解,各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如U盘、移动硬盘、ROM、RAM、磁碟或者光盘等,包括若干指令,用以使得一台计算机设备(如个人计算机,服务器,或者网络设备等)执行上述各方法实施例或者方法实施例的某些部分所述的方法。

另外,本领域内的技术人员应当理解的是,在本发明的申请文件中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本发明的说明书中,说明了大量具体细节。然而应当理解的是,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本发明公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

相关技术
  • 网络流量异常检测方法、电子设备及可读存储介质
  • 网络流量的异常检测方法、装置、电子设备和可读介质
技术分类

06120113207742