CN115567367A - 一种基于多重提升集成学习的网络故障检测方法 - Google Patents

一种基于多重提升集成学习的网络故障检测方法 Download PDF

Info

Publication number
CN115567367A
CN115567367A CN202211153019.0A CN202211153019A CN115567367A CN 115567367 A CN115567367 A CN 115567367A CN 202211153019 A CN202211153019 A CN 202211153019A CN 115567367 A CN115567367 A CN 115567367A
Authority
CN
China
Prior art keywords
model
sub
weight
training sample
network
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
CN202211153019.0A
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.)
Army Engineering University of PLA
Original Assignee
Army Engineering University of PLA
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 Army Engineering University of PLA filed Critical Army Engineering University of PLA
Priority to CN202211153019.0A priority Critical patent/CN115567367A/zh
Publication of CN115567367A publication Critical patent/CN115567367A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • 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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (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)

Abstract

本发明具体涉及一种基于多重提升集成学习的网络故障检测方法,包括:将网络连接记录输入经过训练的故障检测模型中,输出对应的网络故障预测值;训练时,首先获取训练样本集;其次将训练样本集输入故障检测模型的卷积神经网络进行初步学习,得到若干个CNN基分类器;再通过自适应提升算法关注CNN基分类器训练过程中错误分类的训练样本,并基于CNN基分类器构建对应的AB模型;然后基于AB模型构建对应的子决策组,进而通过多重提升算法对各个子决策组的输出进行加权求和,生成对应的网络故障预测值,进而优化故障检测模型。本发明能够很好的适用于网络故障检测,且能够保证网络故障检测的精度和泛化误差,从而能够提高网络故障检测的效果。

Description

一种基于多重提升集成学习的网络故障检测方法
技术领域
本发明涉及深度学习网络技术领域,具体涉及一种基于多重提升集成学习的网络故障检测方法。
背景技术
随着信息化和智能化的发展,通信网络上运行的业务越来越多样化,网络规模日益剧增且结构越来越复杂,网络故障事件发生的概率和影响力不断扩大。而引发网络故障的原因层出不穷。这些网络故障事件造成了巨大的经济损失和社会影响。网络故障的检测效率和准确度直接影响网络是否正常运行及业务服务质量,因此研究高性能网络故障诊断模型以保证网络的正常运行至关重要。
随着网络连接记录数据呈现数据价值密度低,传统的网络故障诊断模型相继出现,如很多研究者采用专家***诊断法、信号处理诊断法、统计分析诊断法、状态估计诊断法等。但这些传统方法很难规避网络故障表现出的层次性、扩散性和不确定性的特点,已经难以应对现今大数据背景下复杂网络的故障诊断问题。传统网络监管***与人工排查故障的方式,难以削弱不相关的或者冗余的特征所带来的影响。因此,需要探索能够应对如今复杂网络***的新故障诊断技术。
申请人发现,机器学习具有学习能力强的特点,基于机器学习方法常被使用在网络故障诊断中,如BP算法、RBF算法、CNN算法等网络故障诊断模型。然而,网络故障具有特征属性维度高、数据价值密度较低、数据量大等特点,导致现有的BP算法和RBF算法不适用于网络故障的高精度识别。同时,单一基学习器难以保证故障诊断的精度和泛化误差,同样导致网络故障检测的准确性不高。因此,如何设计一种适用于网络故障检测且能够保证检测精度和泛化误差的方法是亟需解决的技术问题。
发明内容
针对上述现有技术的不足,本发明所要解决的技术问题是:如何提供一种基于多重提升集成学习的网络故障检测方法,以能够很好的适用于网络故障检测,且能够保证网络故障检测的精度和泛化误差,从而能够提高网络故障检测的效果。
为了解决上述技术问题,本发明采用了如下的技术方案:
一种基于多重提升集成学习的网络故障检测方法,包括:
S1:获取待检测的网络连接记录;
S2:将网络连接记录输入经过训练的故障检测模型中,输出对应的网络故障预测值;
故障检测模型包括T个子决策组,每个子决策组中包含It个AB模型,且每个AB模型包含K个CNN基分类器;
训练时,首先获取若干个带网络故障标签的网络连接记录构建训练样本集;其次将训练样本集输入故障检测模型的卷积神经网络进行初步学习,得到若干个CNN基分类器;再通过自适应提升算法关注CNN基分类器训练过程中错误分类的训练样本,并基于CNN基分类器构建对应的AB模型;然后基于AB模型构建对应的子决策组,进而通过多重提升算法对T个子决策组的输出进行加权求和,生成对应的网络故障预测值;最后基于网络故障预测值和对应的网络故障标签计算训练损失,用以优化故障检测模型;
S3:将故障检测模型输出的网络故障预测值作为网络连接记录的网络故障检测结果。
优选的,步骤S2中,故障检测模型的卷积神经网络为LetNet5模型,其包括输入层、卷积层、采样层、全连接层和输出层。
优选的,通过如下步骤训练故障检测模型:
S201:获取若干个携带网络故障标签的网络连接记录构建训练样本集;然后对训练样本集进行预处理得到预处理数据集,并设置预处理数据集中各个训练样本的权值;
S202:初始化标志变量It的下标,令t=1;
S203:初始化子决策组中AB模型的个数q=1;
S204:初始化AB模型中CNN基分类器的个数k=1;
S205:根据各个训练样本的权值有放回的抽样N次,得到第t个子决策组中第q个AB模型中第k个CNN基分类器的基分类器数据集
Figure BDA0003857155050000021
并输入至卷积神经网络,输出对应的CNN基分类器
Figure BDA0003857155050000022
S206:若k<K,则k=k+1,并返回步骤S205;否则,基于得到的K个CNN基分类器结合如下公式构建第t个子决策组中的第q个AB模型AB(tDq),并计算AB模型AB(tDq)的输出误差teq,进而基于输出误差teq调整预处理数据集中各个训练样本的权值;同时,得到对应的AB模型数据集向量
Figure BDA0003857155050000023
Figure BDA0003857155050000024
式中:AB(tDq)表示第t个子决策组中的第q个AB模型;
Figure BDA0003857155050000025
表示第t个子决策组中第q个AB模型中的第k个CNN基分类器;
Figure BDA0003857155050000026
表示第t个子决策组中第q个AB模型中第k个CNN基分类器的输出权重;
其中,
Figure BDA0003857155050000031
式中:
Figure BDA0003857155050000032
表示第t个子决策组中第q个AB模型中第k个CNN基分类器中未被正确分类的样本数量与所有样本数量之比;
S207:若q<It,则q=q+1,并返回步骤S204;否则,基于得到的It个AB模型构建第t个子决策组,并结合如下公式计算第t个子决策组的输出
Figure BDA0003857155050000033
和权重αt;同时,得到对应的子决策组数据集向量
Figure BDA0003857155050000034
αt=log[(1-teq)/teq];
式中:αt表示第t个子决策组的权重;teq表示第t个子决策组中第q个AB模型的输出误差;
S208:若t<T,则t=t+1,并返回步骤S203进入下一个子决策组;否则,通过T个子决策组分别对训练样本进行分类,并结合如下公式计算得到权重最大的网络故障类别作为网络故障预测值;
Figure BDA0003857155050000035
tβqteq/(1-teq);
式中:MB*(tDq)表示T个子决策组均对训练样本进行分类,并将权重最大的网络故障类别作为该网络连接记录的网络故障预测值;Yt表示AB模型数据集向量
Figure BDA0003857155050000036
中训练样本对应网络故障标签组成的标签向量,即网络故障真实值;αt表示第t个子决策组的权重;tDq表示输入到第t个子决策组中第q个AB模型的输入数据集向量,即为AB模型中K个CNN基分类器的数据集;tβq表示第t个子决策组中第q个AB模型对故障检测模型的输出权重。
优选的,步骤S201中,通过如下步骤对训练样本集进行预处理:
S2011:训练样本集D={(X1,Y1),…,(Xi,Yi),…,(XN,YN)},i=1,2,…,N中含有N条训练样本,其中Xi={xij,j=1,2,…,M}表示第i条训练样本,Y={Yi,i=1,2,…,N}表示训练样本的标签向量,M表示训练样本的原始特征属性维度;
S2012:对特征属性向量X={X1,…,Xj,…,XM},j=1,2,…,M进行数值化处理;
S2013:对数值化处理后的特征属性向量X进行归一化处理,得到归一化处理后的特征属性向量
Figure BDA0003857155050000041
进而得到数值化处理和归一化处理后的预处理数据集
Figure BDA0003857155050000042
优选的,步骤S2013中,通过如下公式对特征属性向量进行归一化处理:
Figure BDA0003857155050000043
其中,
Figure BDA0003857155050000044
式中:
Figure BDA0003857155050000045
表示归一化处理后的第j个维度的特征属性向量;Xj表示数值化处理后的第j个特征属性向量;xij表示第i条训练样本第j个维度的特征属性向量;Aj、Sj、Xjmin、Xjmax分别表示第j个特征属性Xj的平均值、方差、最小值和最大值。
优选的,步骤S205中,通过如下公式计算标志变量It:若It=t,则将预处理数据集
Figure BDA0003857155050000046
中每个训练样本的权重设置为
Figure BDA0003857155050000047
否则根据输出误差teq调整每个训练样本的权值;进而根据预处理数据集中各个训练样本的权值进行有放回的抽样;
Figure BDA0003857155050000048
优选的,步骤S206中,通过如下公式计算AB模型的输出误差teq
Figure BDA0003857155050000049
式中:teq表示第t个子决策组中第q个AB模型的输出误差;weight(Xt)表示训练样本Xt的权重;AB(Xt)表示AB模型的输出。
优选的,步骤S206中,通过如下方式调整预处理数据集中各个训练样本的权值:
1)若teq>0.5,则舍弃对应的AB模型,并基于连续泊松分布计算各个训练样本的权值;
2)若teq=0,则设置输出权重tβq=10-10,并基于连续泊松分布计算各个训练样本的权值;
3)若0<teq<0.5,则设置输出权重tβqteq/(1-teq),同时对于AB模型数据集向量tDq中的每个训练样本,错分样本的权重除以2teq,正分样本的权重除以2(1-teq),且最小权重为10-8
优选的,通过如下公式表示连续泊松分布:
Figure BDA0003857155050000051
式中:p表示概率值,即为训练样本权重;Random(1,2,…,999)表示从1至999中随机生成一个整数。
优选的,训练故障检测模型后,通过各类训练样本的精度、F1值、检测率TPR和误报率FPR评估故障检测模型的性能;
1)通过如下公式计算各类训练样本的精度:
Figure BDA0003857155050000052
式中:Acctest表示各类训练样本的精度;Na表示被正确分类的样本数量;N表示总样本数量;
2)通过如下公式计算F1值:
Figure BDA0003857155050000053
式中:F1表示F1值;P表示查准率;R表示查全率;
3)通过如下公式计算检测率TPR和误报率FPR:
Figure BDA0003857155050000054
式中:TP表示实际为正的样本且故障诊断模型预测为正的样本数量;FN表示实际为正的样本且故障诊断模型预测为负的样本数量;FP表示实际为负的样本且故障诊断模型预测为正的样本数量;TN表示实际为负的样本且故障诊断模型预测为负的样本数量。
本发明中基于多重提升集成学习的网络故障检测方法,具有如下有益效果:
本发明通过将网络连接记录输入卷积神经网络进行初步学习,使得能够利用卷积神经网络具有核共享、尺度不变性以及强大学习能力的优势来适应网络故障特征属性维度高、数据价值密度较低、数据量大的特点,进而能够很好的适用于网络故障检测并提高网络故障检测的精度;同时,本发明通过自适应提升算法关注CNN基分类器训练过程中错误分类的训练样本,使得能够利用自适应提升算法偏差减小能力较强的优势来降低网络故障分类的误差,从而能够进一步提高网络故障检测的精度;此外,本发明通过多重提升算法对各个子决策组的输出进行加权求和生成对应的网络故障预测值,使得能够通过多重提升算法能够有效减小方差的优势来提高分类的精确度,改善了故障数据价值密度低的问题,进而能够降低网络故障检测的泛化误差。因此,本发明能够很好的适用于网络故障检测,且能够保证网络故障检测的精度和泛化误差,从而能够提高网络故障检测的效果。
附图说明
为了使发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步的详细描述,其中:
图1为基于多重提升集成学习的网络故障检测方法的逻辑框图;
图2为卷积神经网络的网络结构图;
图3为故障检测模型训练时的网络结构图;
图4为故障检测模型中子决策组的网络结构图;
图5为网络故障的特征属性盒图;
图6为本发明的故障检测模型与现有其他模型的比较示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。此外,术语“水平”、“竖直”等术语并不表示要求部件绝对水平或悬垂,而是可以稍微倾斜。如“水平”仅仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜。在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
下面通过具体实施方式进一步详细的说明:
实施例:
本实施例中公开了一种基于多重提升集成学习的网络故障检测方法。
如图1所示,基于多重提升集成学习的网络故障检测方法,包括:
S1:获取待检测的网络连接记录;
S2:将网络连接记录输入经过训练的故障检测模型中,输出对应的网络故障预测值;
故障检测模型包括T个子决策组,每个子决策组中包含It个AB模型,且每个AB模型包含K个CNN基分类器;
训练时,首先获取若干个带网络故障标签的网络连接记录构建训练样本集;其次将训练样本集输入故障检测模型的卷积神经网络进行初步学习,得到若干个CNN基分类器;再通过自适应提升算法(AdaBoost,AB)关注CNN基分类器训练过程中错误分类的训练样本,并基于CNN基分类器构建对应的AB模型;然后基于AB模型构建对应的子决策组,进而通过多重提升算法(MultiBoost,MB)对T个子决策组的输出进行加权求和,生成对应的网络故障预测值;最后基于网络故障预测值和对应的网络故障标签计算训练损失,用以优化故障检测模型;
本实施例中,在训练样本中,样本携带的网络故障标签的作用有两个:一是判断输入样本是正确分类还是错误分类,若是错误分类的样本,则在算法下一次迭代中,将增加该样本权重,否则减小样本权重,从而优化故障检测模型;二是通过网络故障预测值和对应的网络故障标签计算训练损失(如交叉熵损失),进而通过现有成熟手段结合训练损失优化故障检测模型。而在测试样本中,样本携带标签的作用是用于计算故障检测模型的性能指标,如精确度、F1值、检测率TPR和误报率FPR。
S3:将故障检测模型输出的网络故障预测值作为网络连接记录的网络故障检测结果。
本实施例中,可将某一时段的网络连接记录序列输入故障检测模型中,通过故障检测模型判断是否发生网络故障并检测出对应的网络故障类型(即网络故障预测值),如正常记录(Normal)、拒绝服务类型(DOS)、监视和其他探测活动(Probing)、来自远程机器的非法访问(R2L)、普通用户对本地超级用户特权的非法访问(U2R)等类型。
本发明通过将网络连接记录输入卷积神经网络进行初步学习,使得能够利用卷积神经网络具有核共享、尺度不变性以及强大学习能力的优势来适应网络故障特征属性维度高、数据价值密度较低、数据量大的特点,进而能够很好的适用于网络故障检测并提高网络故障检测的精度;同时,本发明通过自适应提升算法关注CNN基分类器训练过程中错误分类的训练样本,使得能够利用自适应提升算法偏差减小能力较强的优势来降低网络故障分类的误差,从而能够进一步提高网络故障检测的精度;此外,本发明通过多重提升算法对各个子决策组的输出进行加权求和生成对应的网络故障预测值,使得能够通过多重提升算法能够有效减小方差的优势来提高分类的精确度,改善了故障数据价值密度低的问题,进而能够降低网络故障检测的泛化误差。因此,本发明能够很好的适用于网络故障检测,且能够保证网络故障检测的精度和泛化误差,从而能够提高网络故障检测的效果。
具体实施过程中,卷积神经网络(CNN)算法具有一定的旋转不变性和平移不变性的特点,其卷积操作和池化操作均通过共享卷积核,这可以降低输入数据的维度。考虑到网络记录连接的特征属性维度有41,因此本发明将采用CNN作为基分类器模型。另外考虑降低算法对内存占用和计算量的要求,本发明采用现有技术中成熟使用的LetNet5模型,并采用填充后卷积的改进方法,避免输入数据的维度在卷积过程中减少从而导致丢失信息。
如图2所示,LetNet5模型包括输入层、卷积层、采样层、全连接层和输出层;
通过如下公式表示输出层的表达函数:
y=soft max(ωP+b);
式中:ω表示全连接层权重矩阵;P表示池化特征矩阵;b表示偏置项。
从预处理数据集中采样K组平衡数据作为训练样本集输CNN模型中,训练得到对应的CNN基分类模型。具体的,从预处理后数据集
Figure BDA0003857155050000081
中采样,获得K组平衡数据集,且这些数据集构成数据集向量为
Figure BDA0003857155050000082
其中
Figure BDA0003857155050000083
将这些数据作为训练样本集输入LeNet5 CNN模型中,直到K组数据全部训练完成,结合池化特征矩阵P、全连接层权重矩阵ω和偏置项b得到输出层值Zk=soft max(ωkPk+bk),进而得到K个对应的CNN基分类模型{Z1,Z2,…,ZK}。其中数据
Figure BDA0003857155050000091
来自预处理数据集
Figure BDA0003857155050000092
基分类样本总数
Figure BDA0003857155050000093
分组的组数K≤N。
本发明通过将网络连接记录输入卷积神经网络进行初步学习,使得能够利用卷积神经网络具有核共享、尺度不变性以及强大学习能力的优势来适应网络故障特征属性维度高、数据价值密度较低、数据量大的特点,进而能够很好的适用于网络故障检测并提高网络故障检测的精度。
具体实施过程中,多重提升集成算法(MultiBoost,MB)是一种串行集成算法,其由若干个子决策组构成。多重提升集成算法中定义了一个判断子决策组迭代次数的标志变量It(t=1,2,…,∞),是表示第t个子决策组中包含It个由AB算法构成的基分类器。将获得的CNN基分类模型输入到MB模型中,即获得K个CNN基分类模型
Figure BDA0003857155050000094
输入到第t个子决策组中第q个AB算法模型中,得到第q个AB算法模型,不断经过CNN模型和对应的AB模型训练,直到T个子决策组训练完毕,根据对应的权重加权求和所有子决策组,最后获得MB集成模型。
基于CNN基分类器的多重提升集成算法分为四个步骤实现:获取训练样本集、输入数据、集成模型学习过程、输出诊断结果。如图3和图4所示,通过如下步骤训练故障检测模型:
其中,数据集
Figure BDA0003857155050000095
含有N个预处理后训练样本的数据集。
循环次数T:子决策组的个数。
循环次数q:子决策组中AB模型的个数。
循环次数K:AB模型中CNN基分类器的个数。
CNN基分类器函数:M=CNN(·)。
整数It:子决策组迭代终止标志变量。
S201:获取若干个带网络故障标签的网络连接记录构建训练样本集;然后对训练样本集进行预处理得到预处理数据集,并设置预处理数据集中各个训练样本的权值;
S202:初始化标志变量It的下标,令t=1;
S203:初始化子决策组中AB模型的个数q=1;
S204:初始化AB模型中CNN基分类器的个数k=1;
S205:根据各个训练样本的权值有放回的抽样N次,得到第t个子决策组中第q个AB模型中第k个CNN基分类器的基分类器数据集
Figure BDA0003857155050000096
并输入至卷积神经网络,输出对应的CNN基分类器
Figure BDA0003857155050000101
通过如下公式计算标志变量It:若It=t,则将预处理数据集
Figure BDA0003857155050000102
中每个训练样本的权重设置为
Figure BDA0003857155050000103
否则根据输出误差teq调整每个训练样本的权值;进而根据预处理数据集中各个训练样本的权值进行有放回的抽样;
Figure BDA0003857155050000104
S206:若k<K,则k=k+1,并返回步骤S205;否则,基于得到的K个CNN基分类器结合如下公式构建第t个子决策组中的第q个AB模型AB(tDq),并计算AB模型AB(tDq)的输出误差teq,进而基于输出误差teq调整预处理数据集中各个训练样本的权值;同时,得到对应的AB模型数据集向量(或称为平均数据集)
Figure BDA0003857155050000105
Figure BDA0003857155050000106
式中:AB(tDq)表示第t个子决策组中的第q个AB模型;
Figure BDA0003857155050000107
表示第t个子决策组中第q个AB模型中的第k个CNN基分类器;
Figure BDA0003857155050000108
表示第t个子决策组中第q个AB模型中第k个CNN基分类器的输出权重;
其中,
Figure BDA0003857155050000109
式中:
Figure BDA00038571550500001010
表示第t个子决策组中第q个AB模型中第k个CNN基分类器中未被正确分类的样本数量与所有样本数量之比;
通过如下公式计算AB模型的输出误差teq
Figure BDA00038571550500001011
式中:teq表示第t个子决策组中第q个AB模型的输出误差;weight(Xt)表示训练样本Xt的权重;AB(Xt)表示AB模型的输出。
通过如下方式调整预处理数据集中各个训练样本的权值:
1)若teq>0.5,则舍弃对应的AB模型,并基于连续泊松分布计算各个训练样本的权值;
2)若teq=0,则设置输出权重tβq=10-10,并基于连续泊松分布计算各个训练样本的权值;
3)若0<teq<0.5,则设置输出权重tβqteq/(1-teq),同时对于AB模型数据集向量tDq中的每个训练样本,错分样本的权重除以2teq,正分样本的权重除以2(1-teq),且最小权重为10-8
通过如下公式表示连续泊松分布:
Figure BDA0003857155050000111
式中:p表示概率值,即为训练样本权重;Random(1,2,…,999)表示从1至999中随机生成一个整数。
S207:若q<It,则q=q+1,并返回步骤S204;否则,基于得到的It个AB模型构建第t个子决策组,并结合如下公式计算第t个子决策组的输出
Figure BDA0003857155050000112
和权重αt;同时,得到对应的子决策组数据集向量
Figure BDA0003857155050000113
αt=log[(1-teq)/teq];
式中:αt表示第t个子决策组的权重;teq表示第t个子决策组中第q个AB模型的输出误差;
S208:若t<T,则t=t+1,并返回步骤S203进入下一个子决策组;否则,通过T个子决策组分别对训练样本进行分类,并结合如下公式计算得到权重最大的网络故障类别作为网络故障预测值;
Figure BDA0003857155050000114
tβqteq/(1-teq);
式中:MB*(tDq)表示T个子决策组均对训练样本进行分类,将权重最大的网络故障类别作为该网络连接记录的网络故障预测值;Yt表示数据集向量
Figure BDA0003857155050000115
中训练样本对应网络故障标签组成的标签向量,即网络故障真实值;αt表示第t个子决策组的权重;tDq表示输入到第t个子决策组中第q个AB模型的输入数据集向量,即为AB模型中K个CNN基分类器的数据集;tβq表示第t个子决策组中第q个AB模型对故障检测模型的输出权重。
本发明通过自适应提升算法关注CNN基分类器训练过程中错误分类的训练样本,使得能够利用自适应提升算法偏差减小能力较强的优势来降低网络故障分类的误差,从而能够进一步提高网络故障检测的精度;同时,本发明通过多重提升算法对各个子决策组的输出进行加权求和生成对应的网络故障预测值,使得能够通过多重提升算法能够有效减小方差的优势来提高分类的精确度,改善了故障数据价值密度低的问题,进而能够降低网络故障检测的泛化误差。
具体实施过程中,考虑到训练样本集的网络连接记录的数量大,加上这些海量的网络数据含有不少无效的特征属性,不相关或者冗余的特征增加了算法在空间和时间上的消耗,还可能导致故障诊断精度降低。另一方面从网络运行数据的总体统计分析情况来看,特征属性的取值各不相同,甚至有的属性取值情况相当复杂。如果直接在原始网络运行数据集上进行数据挖掘算法操作的话,过程将十分复杂,会耗费大量的人力物力,而且故障诊断结果也不理想。因此,为了减小对度量单位的依赖,减弱由于特征属性度量的差异对诊断算法产生的影响,需要对特征属性进行数值化和标准化。
通过如下步骤对训练样本集进行预处理:
S2011:训练样本集D={(X1,Y1),…,(Xi,Yi),…,(XN,YN)},i=1,2,…,N含有N条训练样本,其中Xi={xij,j=1,2,…,M}表示第i条训练样本,Y={Yi,i=1,2,…,N}表示训练样本的标签向量,M表示训练样本的原始特征属性维度;
S2012:对特征属性向量X={X1,…,Xj,…,XM},j=1,2,…,M进行数值化处理;
S2013:对数值化处理后的特征属性向量X进行归一化处理,得到归一化处理后的特征属性向量
Figure BDA0003857155050000121
进而得到数值化处理和归一化处理后的预处理数据集
Figure BDA0003857155050000122
通过如下公式对特征属性向量进行归一化处理:
Figure BDA0003857155050000123
其中,
Figure BDA0003857155050000131
式中:
Figure BDA0003857155050000132
表示归一化处理后的第j个维度的特征属性向量;Xj表示数值化处理后的第j个特征属性向量;xij表示第i条训练样本第j个维度的特征属性向量;Aj、Sj、Xjmin、Xjmax分别表示第j个特征属性Xj的平均值、方差、最小值和最大值。
本实施例中,在数值化处理和归一化处理之后对预处理数据集进行独热编码处理。独热编码即为采用分类变量进行编码,假设L种标签,首先将0至L-1的整数数值转换为二进制数据,则L种标签对应的独热编码为一串二进制数据,且除了整数对应的标记位为1,其他位均是0。具体如表4所示。
本发明通过对训练样本集进行数值化处理和归一化处理,能够减小故障检测模型对度量单位的依赖,减弱由于特征属性度量的差异对故障检测模型产生的影响,进而能够提高网络故障检测的性能,从而能够进一步提高网络故障检测的效果。
其他优选实施例中,还可通过XGBoost算法生成高价值密度数据集:
基于XGBoost算法计算预处理数据集
Figure BDA0003857155050000133
中各个特征属性
Figure BDA0003857155050000134
j=1,2,…,M的增益;
Figure BDA0003857155050000135
式中:Gj表示特征属性
Figure BDA0003857155050000136
的增益;(GjL+GjR)2/(HjL+HjR+λ)、
Figure BDA0003857155050000137
Figure BDA0003857155050000138
分别表示左子树分数、右子树分数和不分割时可以拿到的分数;GjL、HjL、GjR、HjR分别表示XGBoost损失函数泰勒二阶展开的左子树的梯度和二阶梯度、右子树的梯度和二阶梯度;λ表示希望所获取树的简易程度,其值越大,表示希望获取结构越简单的树;γ表示加入新叶子节点的复杂度代价;
设定阈值η:若Gj<η,则剔除对应的特征属性,否则,保留对应的特征属性;
重复步骤上述步骤,直至完成比较M个特征属性的增益,假设在该过程有b个特征属性的增益小于设定阈值η,则剔除该b个特征属性,且得到高价值密度数据集
Figure BDA0003857155050000141
其中,特征属性向量为
Figure BDA0003857155050000142
Figure BDA0003857155050000143
b表示被剔除特征属性的数量。
本发明通过XGBoost算法对预处理数据集中训练样本的特征属性进行重要性评估和特征筛选,使得能够对网络故障数据进行特征属性重要性评估和特征筛选,进而能够剔除不相关或冗余的特征属性来得到高价值密度数据集以训练故障检测模型,从而能够兼顾故障检测模型训练的效率和精度。
具体实施过程中,训练故障检测模型后,通过各类训练样本的精度、F1值、检测率TPR和误报率FPR评估故障检测模型的性能;
1)通过如下公式计算各类训练样本的精度:
Figure BDA0003857155050000144
式中:Acctest表示各类训练样本的精度;Na表示被正确分类的样本数量;N表示总样本数量;
2)通过如下公式计算F1值F1-score值协调了模型的召回率和准确率):
Figure BDA0003857155050000145
式中:F1表示F1值;P表示查准率;R表示查全率;
3)通过如下公式计算检测率TPR和误报率FPR:
Figure BDA0003857155050000146
式中:TP表示实际为正的样本且故障诊断模型预测为正的样本数量;FN表示实际为正的样本且故障诊断模型预测为负的样本数量;FP表示实际为负的样本且故障诊断模型预测为正的样本数量;TN表示实际为负的样本且故障诊断模型预测为负的样本数量。
Figure BDA0003857155050000147
本发明通过各类训练样本的精度、F1值、检测率和误报率能够很好的评估故障检测模型的性能,进而能够有效的获取得到性能最佳的故障检测模型,从而能够进一步提高网络故障检测的效果。
为了更好的说明本发明技术方案的优势,本实施例中公开了如下实验。
本实验使用网络安全研究人员公认的数据集KDDCup99数据集,该数据集是模拟美国空军局域网运行过程的TCP dump网络连接数据。被测数据集含有450000条连接记录,其中网络故障的特征属性描述和某一条网络连接记录样本分别如表1和表2所示。按照表1所示的数量占比率进行采样,获得10%的被测数据集作为训练样本集,获取5%的被测数据集作为测试数据集。为了验证本专利所提算法的有效性,本实验引用tensorflow模块,采用Python编程实现本专利所提算法。
表1网络故障的特征属性描述
Figure BDA0003857155050000151
表2某条网络连接记录数据样本
Figure BDA0003857155050000152
(1)特征属性预处理
为了模拟真实环境,同时检测所提算法的鲁棒性,本实验在原始数据集中加入50dB随机噪声,并对数据进行数值化、归一化处理,各特征属性的统计分析情况如图5所示,“盒图(boxplot)”发现某些特征的数值几乎全部为零,可见这些特征对于分类的结果几乎没有影响,可以去除实现数据降维,去除的特征属性如表3所示。本实验中参数设置为N=450000,M=41,b=5,则预处理后数据集
Figure BDA0003857155050000153
其中特征属性向量为
Figure BDA0003857155050000154
表3被剔除的网络故障的特征属性
Figure BDA0003857155050000155
(2)建立CNN基分类器
采用独热编码的方式分类变量进行编码,将0至4的整数数值转换为二进制向量,除了整数对应的标记位为1,其他位均是0,结果如表4所示。
表4网络故障所对应的5个分类类别编码
Figure BDA0003857155050000161
CNN基分类器输入层的参数设置:W1=36,H1=36;卷积层C1和C2的参数设置为:卷积核的大小为2×2,步长大小为1,无填充;采样层S1和S2的参数设置:步长为1,无填充;输出层参数设置为:采用Softmax函数,故障类别数为5。本实验中设置基分类模型个数为K=6,样本数为
Figure BDA0003857155050000162
则获得K组平衡数据集,且这些数据集构成数据集向量为
Figure BDA0003857155050000163
(3)基于CNN基分类器的MB串行集成模型网络故障诊断
初始化本发明中的故障检测模型(后续也称为CNN+HB模型)的参数如下:训练样本的数量
Figure BDA0003857155050000164
子决策组的个数T=5,然后计算每个子决策组包含的AB算法模型个数,每个AB模型包含基分类模型个数为K=6。则经训练后,计算本发明所提网络故障诊断模型的精度、F1值。获得Normal、DOS、Probing、R2L、U2R的平均诊断精度和F1值如表5所示。计算本发明所提故障检测模型的检测率TPR和误报率FPR分别为0.92和2.16。
表5基于CNN+HB模型的故障诊断结果
Figure BDA0003857155050000165
表5展示了CNN+HB模型的各网络类型的诊断精度,最低为90.43%,最高可达95.84%,且指标F1可达0.964,因此证明了该发明的可行性。
为了证明该模型的有效性和高精度性能,本实验将本专利所提CNN+HB模型、LSTM模型和VSM模型进行比较,比较结果如图6所示。
随着迭代次数增加,图6展示了将本专利所提CNN+HB模型、LSTM模型和VSM模型的网络故障诊断精度比较结果。从图6可得到,当训练期数为30时,CNN+HB模型、LSTM模型和VSM模型的平均诊断精度达到缓和,当训练期数为22时,三个模型的诊断精度分别为95.4%、90.7%和89.1%。此外CNN+HB将多个CNN基分类模型进行集成,集成模型CNN+HB的诊断误差更小,即提高了故障诊断精度。
最后需要说明的是,以上实施例仅用以说明本发明的技术方案而非限制技术方案,本领域的普通技术人员应当理解,那些对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,均应涵盖在本发明的权利要求范围当中。

Claims (10)

1.一种基于多重提升集成学习的网络故障检测方法,其特征在于,包括:
S1:获取待检测的网络连接记录;
S2:将网络连接记录输入经过训练的故障检测模型中,输出对应的网络故障预测值;
故障检测模型包括T个子决策组,每个子决策组中包含It个AB模型,且每个AB模型包含K个CNN基分类器;
训练时,首先获取若干个携带网络故障标签的网络连接记录构建训练样本集;其次将训练样本集输入故障检测模型的卷积神经网络进行初步学习,得到若干个CNN基分类器;再通过自适应提升算法关注CNN基分类器训练过程中错误分类的训练样本,并基于CNN基分类器构建对应的AB模型;然后基于AB模型构建对应的子决策组,进而通过多重提升算法对T个子决策组的输出进行加权求和,生成对应的网络故障预测值;最后基于网络故障预测值和对应的网络故障标签计算训练损失,用以优化故障检测模型;
S3:将故障检测模型输出的网络故障预测值作为网络连接记录的网络故障检测结果。
2.如权利要求1所述的基于多重提升集成学习的网络故障检测方法,其特征在于:步骤S2中,故障检测模型的卷积神经网络为LetNet5模型,其包括输入层、卷积层、采样层、全连接层和输出层。
3.如权利要求1所述的基于多重提升集成学习的网络故障检测方法,其特征在于:通过如下步骤训练故障检测模型:
S201:获取若干个携带网络故障标签的网络连接记录构建训练样本集;然后对训练样本集进行预处理得到预处理数据集,并设置预处理数据集中各个训练样本的权值;
S202:初始化标志变量It的下标,令t=1;
S203:初始化子决策组中AB模型的个数q=1;
S204:初始化AB模型中CNN基分类器的个数k=1;
S205:根据各个训练样本的权值有放回的抽样N次,得到第t个子决策组中第q个AB模型中第k个CNN基分类器的基分类器数据集
Figure FDA0003857155040000012
并输入至卷积神经网络,输出对应的CNN基分类器
Figure FDA0003857155040000011
S206:若k<K,则k=k+1,并返回步骤S205;否则,基于得到的K个CNN基分类器结合如下公式构建第t个子决策组中的第q个AB模型AB(tDq),并计算AB模型AB(tDq)的输出误差teq,进而基于输出误差teq调整预处理数据集中各个训练样本的权值;同时,得到对应的AB模型数据集向量
Figure FDA0003857155040000021
Figure FDA0003857155040000022
式中:AB(tDq)表示第t个子决策组中的第q个AB模型;
Figure FDA0003857155040000023
表示第t个子决策组中第q个AB模型中的第k个CNN基分类器;
Figure FDA0003857155040000024
表示第t个子决策组中第q个AB模型中第k个CNN基分类器的输出权重;
其中,
Figure FDA0003857155040000025
式中:
Figure FDA0003857155040000026
表示第t个子决策组中第q个AB模型中第k个CNN基分类器中未被正确分类的样本数量与所有样本数量之比;
S207:若q<It,则q=q+1,并返回步骤S204;否则,基于得到的It个AB模型构建第t个子决策组,并结合如下公式计算第t个子决策组的输出
Figure FDA0003857155040000027
和权重αt;同时,得到对应的子决策组数据集向量
Figure FDA00038571550400000210
αt=log[(1-teq)/teq];
式中:αt表示第t个子决策组的权重;teq表示第t个子决策组中第q个AB模型的输出误差;
S208:若t<T,则t=t+1,并返回步骤S203进入下一个子决策组;否则,通过T个子决策组分别对训练样本进行分类,并结合如下公式计算得到权重最大的网络故障类别作为网络故障预测值;
Figure FDA0003857155040000028
tβqteq/(1-teq);
式中:MB*(tDq)表示T个子决策组均对训练样本进行分类,并将权重最大的网络故障类别作为该网络连接记录的网络故障预测值;Yt表示AB模型数据集向量
Figure FDA0003857155040000029
中训练样本对应网络故障标签组成的标签向量,即网络故障真实值;αt表示第t个子决策组的权重;tDq表示输入到第t个子决策组中第q个AB模型的输入数据集向量,即为AB模型中K个CNN基分类器的数据集;tβq表示第t个子决策组中第q个AB模型对故障检测模型的输出权重。
4.如权利要求3所述的基于多重提升集成学习的网络故障检测方法,其特征在于:步骤S201中,通过如下步骤对训练样本集进行预处理:
S2011:训练样本集D={(X1,Y1),…,(Xi,Yi),…,(XN,YN)},i=1,2,…,N中含有N条训练样本,其中Xi={xij,j=1,2,…,M}表示第i条训练样本,Y={Yi,i=1,2,…,N}表示训练样本的标签向量,M表示训练样本的原始特征属性维度;
S2012:对特征属性向量X={X1,…,Xj,…,XM},j=1,2,…,M进行数值化处理;
S2013:对数值化处理后的特征属性向量X进行归一化处理,得到归一化处理后的特征属性向量
Figure FDA0003857155040000031
进而得到数值化处理和归一化处理后的预处理数据集
Figure FDA0003857155040000032
5.如权利要求4所述的基于多重提升集成学习的网络故障检测方法,其特征在于:步骤S2013中,通过如下公式对特征属性向量进行归一化处理:
Figure FDA0003857155040000033
其中,
Figure FDA0003857155040000034
式中:
Figure FDA0003857155040000035
表示归一化处理后的第j个维度的特征属性向量;Xj表示数值化处理后的第j个特征属性向量;xij表示第i条训练样本第j个维度的特征属性向量;Aj、Sj、Xjmin、Xjmax分别表示第j个特征属性Xj的平均值、方差、最小值和最大值。
6.如权利要求3所述的基于多重提升集成学习的网络故障检测方法,其特征在于:步骤S205中,通过如下公式计算标志变量It:若It=t,则将预处理数据集
Figure FDA0003857155040000036
中每个训练样本的权重设置为
Figure FDA0003857155040000041
否则根据输出误差teq调整每个训练样本的权值;进而根据预处理数据集中各个训练样本的权值进行有放回的抽样;
Figure FDA0003857155040000042
7.如权利要求3所述的基于多重提升集成学习的网络故障检测方法,其特征在于:步骤S206中,通过如下公式计算AB模型的输出误差teq
Figure FDA0003857155040000043
式中:teq表示第t个子决策组中第q个AB模型的输出误差;weight(Xt)表示训练样本Xt的权重;AB(Xt)表示AB模型的输出。
8.如权利要求7所述的基于多重提升集成学习的网络故障检测方法,其特征在于:步骤S206中,通过如下方式调整预处理数据集中各个训练样本的权值:
1)若teq>0.5,则舍弃对应的AB模型,并基于连续泊松分布计算各个训练样本的权值;
2)若teq=0,则设置输出权重tβq=10-10,并基于连续泊松分布计算各个训练样本的权值;
3)若0<teq<0.5,则设置输出权重tβqteq/(1-teq),同时对于AB模型数据集向量tDq中的每个训练样本,错分样本的权重除以2teq,正分样本的权重除以2(1-teq),且最小权重为10-8
9.如权利要求8所述的基于多重提升集成学习的网络故障检测方法,其特征在于:通过如下公式表示连续泊松分布:
Figure FDA0003857155040000044
式中:p表示概率值,即为训练样本权重;Random(1,2,…,999)表示从1至999中随机生成一个整数。
10.如权利要求1所述的基于多重提升集成学习的网络故障检测方法,其特征在于:训练故障检测模型后,通过各类训练样本的精度、F1值、检测率TPR和误报率FPR评估故障检测模型的性能;
1)通过如下公式计算各类训练样本的精度:
Figure FDA0003857155040000051
式中:Acctest表示各类训练样本的精度;Na表示被正确分类的样本数量;N表示总样本数量;
2)通过如下公式计算F1值:
Figure FDA0003857155040000052
式中:F1表示F1值;P表示查准率;R表示查全率;
3)通过如下公式计算检测率TPR和误报率FPR:
Figure FDA0003857155040000053
式中:TP表示实际为正的样本且故障诊断模型预测为正的样本数量;FN表示实际为正的样本且故障诊断模型预测为负的样本数量;FP表示实际为负的样本且故障诊断模型预测为正的样本数量;TN表示实际为负的样本且故障诊断模型预测为负的样本数量。
CN202211153019.0A 2022-09-21 2022-09-21 一种基于多重提升集成学习的网络故障检测方法 Pending CN115567367A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211153019.0A CN115567367A (zh) 2022-09-21 2022-09-21 一种基于多重提升集成学习的网络故障检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211153019.0A CN115567367A (zh) 2022-09-21 2022-09-21 一种基于多重提升集成学习的网络故障检测方法

Publications (1)

Publication Number Publication Date
CN115567367A true CN115567367A (zh) 2023-01-03

Family

ID=84741436

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211153019.0A Pending CN115567367A (zh) 2022-09-21 2022-09-21 一种基于多重提升集成学习的网络故障检测方法

Country Status (1)

Country Link
CN (1) CN115567367A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116821730A (zh) * 2023-08-30 2023-09-29 北京科锐特科技有限公司 风机故障检测方法、控制装置及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116821730A (zh) * 2023-08-30 2023-09-29 北京科锐特科技有限公司 风机故障检测方法、控制装置及存储介质
CN116821730B (zh) * 2023-08-30 2024-02-06 北京科锐特科技有限公司 风机故障检测方法、控制装置及存储介质

Similar Documents

Publication Publication Date Title
CN112784881B (zh) 网络异常流量检测方法、模型及***
CN109408389B (zh) 一种基于深度学习的代码缺陷检测方法及装置
CN111353153B (zh) 一种基于gep-cnn的电网恶意数据注入检测方法
CN105224872B (zh) 一种基于神经网络聚类的用户异常行为检测方法
CN112070128A (zh) 一种基于深度学习的变压器故障诊断方法
CN110929843A (zh) 一种基于改进深度自编码网络的异常用电行为辨识方法
CN110940523B (zh) 一种无监督域适应故障诊断方法
CN111353373A (zh) 一种相关对齐域适应故障诊断方法
CN111046961B (zh) 基于双向长短时记忆单元和胶囊网络的故障分类方法
CN109446804B (zh) 一种基于多尺度特征连接卷积神经网络的入侵检测方法
CN110751108A (zh) 一种地铁分布式振动信号相似度确定方法
CN113569243A (zh) 基于自监督变分lstm的深层半监督学习网络入侵检测方法
CN114760098A (zh) 一种基于cnn-gru的电网虚假数据注入检测方法及装置
CN114048468A (zh) 入侵检测的方法、入侵检测模型训练的方法、装置及介质
CN114120041A (zh) 一种基于双对抗变分自编码器的小样本分类方法
CN113705396A (zh) 一种电机故障诊断方法、***及设备
CN112488142A (zh) 一种雷达故障的预测方法、装置及存储介质
CN115567367A (zh) 一种基于多重提升集成学习的网络故障检测方法
CN115879018A (zh) 基于K-means算法和BP神经网络的机舱设备状态感知与故障诊断方法
CN115438743A (zh) 基于cnn基分类器改进的串行集成方法
CN114003900A (zh) 变电站二次***网络入侵检测方法、装置及***
CN117375983A (zh) 一种基于改进cnn-lstm的电网虚假数据注入辨识方法
CN115545111B (zh) 一种基于聚类自适应混合采样的网络入侵检测方法及***
CN116400168A (zh) 一种基于深度特征聚类的电网故障诊断方法及***
CN116307097A (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