CN111860638A - 基于不平衡数据深度信念网络的并行入侵检测方法和*** - Google Patents

基于不平衡数据深度信念网络的并行入侵检测方法和*** Download PDF

Info

Publication number
CN111860638A
CN111860638A CN202010689950.5A CN202010689950A CN111860638A CN 111860638 A CN111860638 A CN 111860638A CN 202010689950 A CN202010689950 A CN 202010689950A CN 111860638 A CN111860638 A CN 111860638A
Authority
CN
China
Prior art keywords
dbn
wkelm
unbalanced data
model
cluster
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.)
Granted
Application number
CN202010689950.5A
Other languages
English (en)
Other versions
CN111860638B (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 CN202010689950.5A priority Critical patent/CN111860638B/zh
Publication of CN111860638A publication Critical patent/CN111860638A/zh
Priority to US17/626,684 priority patent/US11977634B2/en
Priority to PCT/CN2021/094023 priority patent/WO2022012144A1/zh
Application granted granted Critical
Publication of CN111860638B publication Critical patent/CN111860638B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • G06F18/24143Distances to neighbourhood prototypes, e.g. restricted Coulomb energy networks [RCEN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • 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/045Combinations of 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/047Probabilistic or stochastic networks
    • 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
    • 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
    • G06N3/086Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • 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
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • Probability & Statistics with Applications (AREA)
  • Medical Informatics (AREA)
  • Physiology (AREA)
  • Virology (AREA)
  • Genetics & Genomics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于不平衡数据深度信念网络的并行入侵检测方法,其读取不平衡数据集数据,对不平衡数据采用改进的NCL算法进行欠采样处理,降低多数类样本的比重,使数据集数据分布均衡;在分布式内存计算平台Spark平台上采用改进的差分进化算法对深度信念网络模型的参数进行优化,得到最优的模型参数;对数据集数据进行特征提取,然后采用加权后的核极限学***衡数据集缺乏针对性、训练时间过长的技术问题,并提高优化深度信念网络模型参数的速度。

Description

基于不平衡数据深度信念网络的并行入侵检测方法和***
技术领域
本发明属于入侵检测技术领域,更具体地,涉及一种基于不平衡数据深度信念网络的并行入侵检测方法和***。
背景技术
随着社会的发展,网络安全问题越来越受到人们的重视。入侵检测方法是一种有效的、针对网络安全问题的主动防御方法,它通过检测网络中流量等信息来判断网络中是否有异常的入侵行为。相比于防火墙,入侵检测方法的安全性更好,它不仅所需的资源较少,基本不影响***的正常运转,而且能动态的进行调整。
目前主流的入侵检测方法主要包括:一、基于不平衡数据的入侵检测方法,其入侵检测方法主要针对不平衡数据集,通过数据优化或者算法优化来解决少数类相比于多数类的检测率较低的技术问题,数据优化是从数据层面出发,通过减少多数类样本的欠采样方法和增加少数类的过采样的方法来实现数据平衡。算法优化是从算法层面出发,分类时赋予少数类较大的权重,使得分类器在将少数类错误分类为多数类时错误代价增加,从而增加少数类的检测精度;二、基于深度信念网络降维的入侵检测方法,其入侵检测方法首先利用深度信念网络模型中的多层受限玻尔兹曼机来完成数据的特征提取,将复杂难处理的高维数据进行降维处理,然后利用深度信念网络模型中的反向传播神经网络模型负责完成数据的攻击分类;三、基于极限学习机分类的入侵检测方法,其入侵检测方法利用极限学习机模型完成分类工作,相比于反向传播神经网络模型,极限学习机模型结构简单,训练时无需反复迭代,具有运行速度较快和泛化性能好的优点。
然而,上述现有入侵检测方法均具有一些不可忽略的缺陷:首先,对于基于不平衡数据的入侵检测方法而言,其主流的针对不平衡数据的入侵检测方法往往只采用数据优化和算法优化方法中的一种,不能很有效的解决数据不平衡的技术问题;第二,对于基于深度信念网络降维的入侵检测方法而言,其深度信念网络模型的分类性能与初始参数紧密相关,一般来说,深度信念网络模型初始参数由人为指定,有一定的随机性。如果参数选择不当,会导致深度信念网络模型分类准确度下降,容易陷入局部最优,因此可以通过智能优化算法来优化初始参数,但是现有的优化算法往往采用串行化的标准算法,涉及到大量的迭代运算,需要消耗大量计算资源和时间来处理,并且在处理大量数据时存在如耗时过长、迭代效率低等问题;第三,对于基于极限学习机分类的入侵检测方法而言,其只采用单一的分类器来进行分类,单分类器在分类时总有一定的偏向性,存在分类精度低等问题。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于不平衡数据深度信念网络的并行入侵检测方法和***,其目的在于,解决现有入侵检测方法对不平衡数据集缺乏针对性的技术问题,同时提高优化深度信念网络模型参数的速度,最后该发明方法能有效的提高入侵检测的检测精度和检测速度。
为实现上述目的,按照本发明的一个方面,提供了一种基于不平衡数据深度信念网络的并行入侵检测方法,包括以下步骤:
(1)获取不平衡数据集,利用领域清理规则算法对该不平衡数据集进行欠采样处理,并使用基于引力的聚类方法对欠采样处理后的不平衡数据集进行聚类处理,以得到聚类处理后的不平衡数据集;
(2)将步骤(1)获得的聚类处理后的不平衡数据输入训练好的深度信念网络DBN模型中,以提取特征,再将提取的特征输入训练好的DBN-WKELM多分类器模型中的多个DBN-WKELM基分类器中,以得到多个初步分类结果,通过自适应加权投票法计算各个DBN-WKELM基分类器的权重,并根据多个权重和多个初步分类结果获取最终的分类结果、以及该分类结果对应的入侵行为类别。
优选地,步骤(1)具体包括以下子步骤:
(1-1)获取不平衡数据集DS;
(1-2)从步骤(1-1)得到的不平衡数据集DS中获取一个样本点x以及该样本点x的k近邻数据Dk,其中k表示最近邻参数;
(1-3)获取步骤(1-2)得到的k近邻数据Dk中与样本点x的类别不同的所有样本所构成的集合Nk、以及该集合Nk中的样本数目num;
(1-4)判断步骤(1-3)获取的样本数目num是否大于或等于k-1,如果是,则转入步骤(1-5),否则转入步骤(1-6);
(1-5)判断样本点x的类别是否为多数类样本,如果是,则更新不平衡数据集DS为DS=DS-x,然后进入步骤(1-6),否则更新不平衡数据集DS为DS=DS-Nk,然后进入步骤(1-6);
(1-6)针对不平衡数据集DS中的剩余样本点,重复上述步骤(1-2)至(1-5),直到不平衡数据集DS中的所有样本点都被处理完毕为止,从而得到更新后的不平衡数据集DS;
(1-7)设置计数器i=1;
(1-8)判断i是否等于不平衡数据集DS中的样本点总数,如果是则进入步骤(1-14),否则进入步骤(1-9);
(1-9)从步骤(1-6)更新后的不平衡数据集DS中读入第i个新的样本点
Figure BDA0002588970460000031
其中
Figure BDA0002588970460000032
表示第i个样本中的第e2个特征属性值,并判断优选设置的聚类集合S是否为空,如果是则转入步骤(1-10),否则转入步骤(1-11),其中e2∈[1,n];
(1-10)将样本点di初始化为一个新的类簇Cnew={di},同时将类簇Cnew的质心μ设置为di,并将类簇Cnew加入到聚类集合S中,转入到步骤(1-13);
(1-11)计算聚类集合S中的每个类簇对di的引力,并得到引力集合G={g1,g2,…,gng},并从引力集合G中得到最大引力gmax及其对应的类簇Cmax,其中ng表示聚类集合S中类簇的总数;
(1-12)判断最大引力gmax是否小于设定的阈值r,如果是,则返回步骤(1-10),否则将样本点di合并到类簇Cmax中,并更新合并了样本点di后的类簇Cmax的质心μmax,然后转入步骤(1-13);
(1-13)设置计数器i=i+1,并返回步骤(1-8);
(1-14)遍历聚类集合S中的所有类簇,并判断是否每个类簇中所有样本点的类型都是多数类样本,如果是,则根据采样率sr随机保存该类簇中的多数类样本,然后针对剩余类簇重复遍历过程,否则针对剩余类簇重复遍历过程。
优选地,样本点di和类簇C之间的引力g是按照如下公式计算:
Figure BDA0002588970460000041
其中Cnum为类簇C中样本点的个数,μe2表示中类簇C的质心μ中的第e2个特征属性值;
更新类簇Cmax的质心μmax的公式如下:
Figure BDA0002588970460000042
其中Cmaxn为合并了样本点di后类簇Cmax中样本点的个数,dp为合并了样本点di后类簇Cmax中的第p个样本点,且有p∈[1,Cmaxn]。
优选地,DBN模型是通过步骤训练得到:
(2-1)获取DBN模型,并在分布式内存计算平台上使用改进的差分进化算法对该DBN模型进行优化,以得到优化后的DBN模型;
(2-2)对步骤(2-1)优化后的DBN模型进行训练,以得到训练好的DBN模型。
优选地,步骤(2-1)具体包括以下子步骤:
(2-1-1)获取DBN模型Wdbn={W1,W2,…,Wdep},其中dep表示DBN模型中隐含层的总数,Wdi表示DBN模型中第di个隐含层中神经元的数量,且有di∈[1,3];
(2-1-2)随机生成种群规模为nps个结构向量的初始种群,从该初始种群中随机选取其中一个结构向量作为该初始种群的全局最优解xbest,将初始种群以文件的形式写入到Hadoop分布式文件***(Hadoop Distributed File System,简称HDFS)中,并设置计数器cnt=1;
(2-1-3)判断cnt是否等于最大迭代次数T或者全局最优解xbest已收敛,如果是,则输出全局最优解,过程结束,否则转入步骤(2-4);
(2-1-4)判断cnt是否为1,如果是,则从HDFS中读取步骤(2-1-2)中写入其中的文件,将该文件划分为npa个输入分片,每个输入分片包含一个子种群,然后转入步骤(2-1-5),否则从HDFS中读取更新后的文件,将该文件划分为npa个输入分片,每个输入分片包含一个子种群,然后转入步骤(2-1-5);
(2-1-5)针对步骤(2-1-4)得到的每个子种群而言,获取该子种群中第cnt代中第j个个体
Figure BDA0002588970460000051
作为DBN模型中各隐含层的神经元数,根据相应DBN模型获取nt个分类点的分类结果,根据该分类结果计算DBN模型的分类误差CE,并将该分类误差CE作为该子种群中第cnt代中第j个个体的适应度值
Figure BDA0002588970460000052
其中j∈[1,子种群中第cnt代中个体的总数],
Figure BDA0002588970460000053
表示子种群中第cnt代中第j个个体中的第dep个元素;
(2-1-6)针对步骤(2-1-4)得到的每个子种群而言,获取该子种群第cnt代中所有个体的适应度值所构成的适应度值集合
Figure BDA0002588970460000061
Figure BDA0002588970460000062
其中sn为适应度值集合F中适应度值的总数,按照从小到大的顺序对该适应度值集合中的所有适应度值进行排序,以获取新的适应度值集合
Figure BDA0002588970460000063
将该新的适应度集合
Figure BDA0002588970460000064
中最小适应度值对应的个体作为该子种群的最优解,并将该最小适应度值作为该子种群的最佳适应度值,
(2-1-7)从所有子种群的最佳适应度值中选择最小值作为整体最佳适应度值,并将全局最优解xbest更新为该整体最佳适应度值对应的个体;
(2-1-8)针对步骤(2-1-6)得到的适应度值集合F,取适应度值最小的两个个体
Figure BDA0002588970460000065
Figure BDA0002588970460000066
组成集合
Figure BDA0002588970460000067
该适应度值集合F中剩余的个体组成集合
Figure BDA0002588970460000068
(2-1-9)根据步骤(2-1-8)中得到的集合Icnt中的第
Figure BDA0002588970460000069
个目标个体
Figure BDA00025889704600000610
生成自适应变异个体
Figure BDA00025889704600000611
其中
Figure BDA00025889704600000612
(2-1-10)对步骤(2-1-9)得到的自适应变异个体
Figure BDA00025889704600000613
和步骤(2-1-8)中得到的集合Icnt中的第
Figure BDA00025889704600000614
个目标个体
Figure BDA00025889704600000615
进行交叉操作,以生成实验个体
Figure BDA00025889704600000616
(2-1-11)获取步骤(2-1-10)得到的实验个体
Figure BDA00025889704600000617
对应的适应度值
Figure BDA00025889704600000618
以及步骤(2-1-9)得到的目标个体
Figure BDA00025889704600000619
对应的适应度值
Figure BDA00025889704600000620
使用二者中较小的适应度值代替集合Icnt中的对应个体,并将步骤(2-8)中得到的集合Ecnt中的个体加入到Icnt中,从而得到更新后的集合Icnt
(2-1-12)设置计数器cnt=cnt+1,将步骤(2-1-11)更新后的集合Icnt保存到HDFS中,并返回步骤(2-1-3);
优选地,分类误差是采用以下公式获得:
Figure BDA0002588970460000071
其中,
Figure BDA0002588970460000072
是真实结果,
Figure BDA0002588970460000073
是分类结果,nt是分类点个数;
生成自适应变异个体的计算公式如下:
Figure BDA0002588970460000074
其中,
Figure BDA0002588970460000075
Figure BDA0002588970460000076
均∈[3,sn],三者彼此不相同,且三者均不等于
Figure BDA0002588970460000077
Fc为自适应变异因子;
自适应变异因子Fc的计算公式如下:
Figure BDA0002588970460000078
其中,f是初始变异因子;
生成实验个体的计算公式如下:
Figure BDA0002588970460000079
其中,randn是随机产生于{1,2,…,D}的随机整数,rand是属于[0,1]间的均匀分布的随机实数,CR是交叉因子,D为个体基因维度,其中h∈[1,D]。
优选地,步骤(2-2)具体包括以下子步骤:
(2-2-1)将步骤(1)聚类处理后的不平衡数据集按照6:4的比例分为训练集和测试集;
(2-2-2)设置计数器cnt2=1;
(2-2-3)根据步骤(2-2-1)获得的训练集,将步骤(2)优化后的DBN模型的输入层的初始状态设置为训练集中的训练样本,并将DBN模型的输入层和第一个隐含层构建为受限玻尔兹曼机RBM网络,并初始化该RBM网络中输入层与第一隐含层之间的权重W、输入层的偏置量a、以及第一隐含层的偏置量b;
(2-2-4)判断cnt2是否等于3,如果是则过程结束,否则转入步骤(2-2-5);
(2-2-5)利用对比散度(Contrastive Divergence,简称CD)算法对RBM网络的输入值、RBM网络中输入层与第cnt2隐含层之间的权重W、输入层的偏置量a、以及第cnt2隐含层的偏置量b进行更新,以获得更新后的RBM网络;
(2-2-6)对步骤(2-2-5)更新后的RBM网络进行迭代训练,直到该RBM网络的重构误差达到最小为止,从而得到整体迭代训练后的RBM模型,将步骤(2)优化后的DBN模型的第cnt2+1隐含层加入到整体迭代训练后的RBM网络中,以构成新的RBM网络,同时将新的RBM网络中输入层与第cnt2+1隐含层之间的权重W更新为整体迭代训练后的RBM网络所输出的权重,将输入层的偏置量a、以及第cnt2+1隐含层的偏置量b分别更新为整体迭代训练后的RBM网络所输出的偏置值,并将整体迭代训练后的RBM网络的输出值作为新的的RBM网络的输入值;
(2-2-7)设置计数器cnt2=cnt2+1,并返回步骤(2-2-4)。
优选地,DBN-WKELM多分类器模型是通过以下过程训练得到的:获取训练好的DBN模型,开启4个子线程,在每个子线程中将训练好的DBN模型的输出值设置为WKELM隐含层的输入值Xin,对该输入值Xin进行加权得到成本敏感矩阵Wcs,根据该成本敏感矩阵Wcs获得WKELM隐含层的输出权重β,并基于该输出权重β得到基于DBN特征提取的DBN-WKELM基分类器,4个基于DBN特征提取的DBN-WKELM基分类器共同构成训练好的DBN-WKELM多分类器模型;
优选地,WKELM隐含层的输出权重β的公式为:
Figure BDA0002588970460000081
其中,Cr是正则化系数,Ω是对应于WKELM基分类器的核函数Fk的核矩阵,Tl是对应于输入值Xin的数据标签;
自适应加权投票法的权重计算公式如下:
Figure BDA0002588970460000091
其中,Wq是第q个DBN-WKELM基分类器在DBN-WKELM多分类器模型中的投票权重,
Figure BDA0002588970460000092
是第q个DBN-WKELM基分类器的分类准确率,
Figure BDA0002588970460000093
是第q个DBN-WKELM基分类器的分类误报率,且有q∈[1,m];
第q个DBN-WKELM基分类器的分类准确率和分类误报率的计算公式如下:
Figure BDA0002588970460000094
其中,
Figure BDA0002588970460000095
是第q个DBN-WKELM基分类器中正确分类的样本数目,
Figure BDA0002588970460000096
是第q个DBN-WKELM基分类器中总样本数目,
Figure BDA0002588970460000097
是第q个DBN-WKELM基分类器中被错误当作入侵行为的正常样本数目,
Figure BDA0002588970460000098
是第q个DBN-WKELM基分类器中的正常样本总数。
按照本发明的另一方面,提供了一种基于不平衡数据深度信念网络的并行入侵检测***,包括:
第一模块,用于获取不平衡数据集,利用领域清理规则算法对该不平衡数据集进行欠采样处理,并使用基于引力的聚类方法对欠采样处理后的不平衡数据集进行聚类处理,以得到聚类处理后的不平衡数据集;
第二模块,用于将第一模块获得的聚类处理后的不平衡数据输入训练好的深度信念网络DBN模型中,以提取特征,再将提取的特征输入训练好的DBN-WKELM多分类器模型中的多个DBN-WKELM基分类器中,以得到多个初步分类结果,通过自适应加权投票法计算各个DBN-WKELM基分类器的权重,并根据多个权重和多个初步分类结果获取最终的分类结果、以及该分类结果对应的入侵行为类别。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
(1)由于本发明采用了步骤(1-1)到步骤(1-14),其对不平衡数据集采用了改进欠采样算法来降低多数类的比例,同时本发明采用加权后的核极限学***衡数据的入侵检测方法存在的不能很有效的解决数据不平衡的技术问题;
(2)由于本发明采用了步骤(2-1-1)到步骤(2-1-12),其采用并行的改进差分进化算法来优化深度信念网络模型参数,优化算法迭代过程,提高迭代效率,降低算法消耗的时间,因此,能够解决现有基于深度信念网络降维的入侵检测方法中模型参数需要消耗大量计算资源和时间来处理,并且在处理大量数据时存在如耗时过长、迭代效率低的技术问题;
(3)由于本发明采用多个结构不同的DBN-WKELM基分类器组成DBN-WKELM多分类器,各个基分类器之间并行执行,提高了入侵检测的速度,同时其多分类器采用于自适应加权投票算法,通过增加分类准确率高和误报率低的基分类器投票权重,来增加入侵检测的分类准确率,因此,能够解决现有基于极限学习机分类的入侵检测方法中只采用单一的分类器来进行分类,单分类器分类时存在偏向性和分类精度低的技术问题。
附图说明
图1是本发明基于不平衡数据深度信念网络的并行入侵检测方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
如图1所示,本发明提供了一种基于不平衡数据深度信念网络的并行入侵检测方法,包括以下步骤:
(1)获取不平衡数据集,利用领域清理规则(Neighborhood Cleaning Rule,简称NCL)算法对该不平衡数据集进行欠采样处理,并使用基于引力的聚类方法(Gravity-basedClustering Approach,简称GCA)算法对欠采样处理后的不平衡数据集进行聚类处理,以得到聚类处理后的不平衡数据集;
在本实施方式中,不平衡数据集是KDDCUP99入侵检测数据集。
本步骤具体包括以下子步骤:
(1-1)获取不平衡数据集DS;
(1-2)从步骤(1-1)得到的不平衡数据集DS中获取一个样本点x以及该样本点x的k近邻数据Dk
具体而言,最近邻参数k的取值为5到10之间,优选为7。
一般来说,通过欧氏距离来判断两个样本是否为k近邻关系。假设样本点
Figure BDA0002588970460000111
属于n维空间Rn,其中n为任意自然数,k1和k2均∈[1,不平衡数据集D中样本点的总数],
Figure BDA0002588970460000112
表示第k1个样本点中第e1个特征属性值,其中e1∈[1,第k1个样本点中特征属性值的总数]。那么两个样本点xk1和xk2之间的欧式距离定义为:
Figure BDA0002588970460000113
(1-3)获取步骤(1-2)得到的k近邻数据Dk中与样本点x的类别不同的所有样本所构成的集合Nk、以及该集合Nk中的样本数目num;
具体而言,样本点的类别包括多数类样本和少数类样本,针对KDDCUP99入侵检测数据集来说,其中多数类样本指的是正常(Normal)行为、探测和扫描(Probe)行为和拒绝服务(Denial of service,简称DOS)行为,少数类样本指的是用户到根***(User to root,简称U2R)行为和远程到本地(Remote to local,简称R2L)行为,其中除了Normal行为以外的行为都被认为是入侵行为类型。
(1-4)判断步骤(1-3)获取的样本数目num是否大于或等于k-1,如果是,则转入步骤(1-5),否则转入步骤(1-6);
(1-5)判断样本点x的类别是否为多数类样本,如果是,则更新不平衡数据集DS为DS=DS-x,然后进入步骤(1-6),否则更新不平衡数据集DS为DS=DS-Nk,然后进入步骤(1-6);
(1-6)针对不平衡数据集DS中的剩余样本点,重复上述步骤(1-2)至(1-5),直到不平衡数据集DS中的所有样本点都被处理完毕为止,从而得到更新后的不平衡数据集DS;
(1-7)设置计数器i=1;
(1-8)判断i是否等于不平衡数据集DS中的样本点总数,如果是则进入步骤(1-14),否则进入步骤(1-9);
(1-9)从步骤(1-6)更新后的不平衡数据集DS中读入第i个新的样本点
Figure BDA0002588970460000121
其中
Figure BDA0002588970460000122
表示第i个样本中的第e2个特征属性值,并判断优选设置的聚类集合S是否为空,如果是则转入步骤(1-10),否则转入步骤(1-11),其中e2∈[1,n];
(1-10)将样本点di初始化为一个新的类簇Cnew={di},同时将类簇Cnew的质心μ设置为di,并将类簇Cnew加入到聚类集合S中,转入到步骤(1-13);
(1-11)计算聚类集合S中的每个类簇对di的引力,并得到引力集合G={g1,g2,…,gng},并从引力集合G中得到最大引力gmax及其对应的类簇Cmax,其中ng表示聚类集合S中类簇的总数;
所述样本点di和类簇C之间的引力g是按照如下公式计算:
Figure BDA0002588970460000131
其中Cnum为类簇C中样本点的个数,μe2表示中类簇C的质心μ中的第e2个特征属性值;
(1-12)判断最大引力gmax是否小于设定的阈值r,如果是,则返回步骤(1-10),否则将样本点di合并到类簇Cmax中,并更新合并了样本点di后的类簇Cmax的质心μmax,然后转入步骤(1-13);
所述更新类簇Cmax的质心μmax的公式如下:
Figure BDA0002588970460000132
其中Cmaxn为合并了样本点di后类簇Cmax中样本点的个数,dp为合并了样本点di后类簇Cmax中的第p个样本点,且有p∈[1,Cmaxn];
具体而言,针对KDDCUP99入侵检测数据集来说,阈值r的取值范围是95到143,优选为100。
(1-13)设置计数器i=i+1,并返回步骤(1-8);
(1-14)遍历聚类集合S中的所有类簇,并判断是否每个类簇中所有样本点的类型都是多数类样本,如果是,则根据采样率sr随机保存该类簇中的多数类样本,然后针对剩余类簇重复遍历过程,否则针对剩余类簇重复遍历过程。
具体而言,采样率sr的取值范围是0.6到0.9,优选为0.7。
(2)将步骤(1)获得的聚类处理后的不平衡数据输入训练好的深度信念网络(DeepBeliefNetwork,简称DBN)模型中,以提取特征,再将提取的特征输入训练好的DBN-加权后的核极限学习机(Weighted Kernel Extreme Learning Machine,简称WKELM)多分类器模型中的多个DBN-WKELM基分类器中,以得到多个初步分类结果,通过自适应加权投票法计算各个DBN-WKELM基分类器的权重,并根据多个权重和多个初步分类结果获取最终的分类结果、以及该分类结果对应的入侵行为类别;
具体而言,本步骤中的DBN模型是通过步骤训练得到:
(2-1)获取深度信念网络(Deep Belief Network,简称DBN)模型,并在分布式内存计算平台上使用改进的差分进化算法对该DBN模型进行优化,以得到优化后的DBN模型;
在本实施方式中,分布式内存计算平台是ApacheSpark平台。
本步骤具体包括以下子步骤:
(2-1-1)获取DBN模型Wdbn={W1,W2,…,Wdep},其中dep表示DBN模型中隐含层的总数,Wdi表示DBN模型中第di个隐含层中神经元的数量,且有di∈[1,3];
具体而言,DBN模型中隐含层的总数等于3;每个隐含层中神经元数的最大值xmax的取值范围是500到1500,优选为1000,隐含层神经元数的最小值xmin的取值范围是1到5,优选为1。
(2-1-2)随机生成种群规模为nps个结构向量的初始种群,从该初始种群中随机选取其中一个结构向量作为该初始种群的全局最优解xbest,将初始种群以文件的形式写入到Hadoop分布式文件***(Hadoop Distributed File System,简称HDFS)中,并设置计数器cnt=1;
具体而言,种群规模nps的取值范围是1000到2000,优选为1000。
(2-1-3)判断cnt是否等于最大迭代次数T或者全局最优解xbest已收敛,如果是,则输出全局最优解,过程结束,否则转入步骤(2-4);
具体而言,最大迭代次数T的取值范围是500到1000,优选为500。
(2-1-4)判断cnt是否为1,如果是,则从HDFS中读取步骤(2-1-2)中写入其中的文件,将该文件划分为npa个输入分片,每个输入分片包含一个子种群,然后转入步骤(2-1-5),否则从HDFS中读取更新后的文件,将该文件划分为npa个输入分片,每个输入分片包含一个子种群,然后转入步骤(2-1-5);
具体而言,将文件划分为npa个输入分片,是在Spark平台上通过Map阶段实现的,输入分片个数npa的取值范围是2到10,优选为5。
(2-1-5)针对步骤(2-1-4)得到的每个子种群而言,获取该子种群中第cnt代中第j个个体
Figure BDA0002588970460000151
作为DBN模型中各隐含层的神经元数,根据相应DBN模型获取nt个分类点的分类结果,根据该分类结果计算DBN模型的分类误差CE,并将该分类误差CE作为该子种群中第cnt代中第j个个体的适应度值
Figure BDA0002588970460000152
其中j∈[1,子种群中第cnt代中个体的总数],
Figure BDA0002588970460000153
表示子种群中第cnt代中第j个个体中的第dep个元素;
具体而言,本步骤中的分类误差是采用以下公式:
Figure BDA0002588970460000154
其中,
Figure BDA0002588970460000155
是真实结果,
Figure BDA0002588970460000156
是分类结果,nt是分类点个数;
具体而言,分类点个数nt的取值范围是30到100,优选为50。
(2-1-6)针对步骤(2-1-4)得到的每个子种群而言,获取该子种群第cnt代中所有个体的适应度值所构成的适应度值集合
Figure BDA0002588970460000157
Figure BDA0002588970460000158
其中sn为适应度值集合F中适应度值的总数,按照从小到大的顺序对该适应度值集合中的所有适应度值进行排序,以获取新的适应度值集合
Figure BDA0002588970460000159
将该新的适应度集合
Figure BDA00025889704600001510
中最小适应度值对应的个体作为该子种群的最优解,并将该最小适应度值作为该子种群的最佳适应度值,
(2-1-7)从所有子种群的最佳适应度值中选择最小值作为整体最佳适应度值,并将全局最优解xbest更新为该整体最佳适应度值对应的个体;
(2-1-8)针对步骤(2-1-6)得到的适应度值集合F,取适应度值最小的两个个体
Figure BDA0002588970460000161
Figure BDA0002588970460000162
组成集合
Figure BDA0002588970460000163
该适应度值集合F中剩余的个体组成集合
Figure BDA0002588970460000164
(2-1-9)根据步骤(2-1-8)中得到的集合Icnt中的第
Figure BDA0002588970460000165
个目标个体
Figure BDA0002588970460000166
生成自适应变异个体
Figure BDA0002588970460000167
其中
Figure BDA0002588970460000168
具体而言,生成自适应变异个体的计算公式如下:
Figure BDA0002588970460000169
其中,
Figure BDA00025889704600001610
Figure BDA00025889704600001611
均∈[3,sn],三者彼此不相同,且三者均不等于
Figure BDA00025889704600001612
Fc为自适应变异因子。
自适应变异因子Fc的计算公式如下:
Figure BDA00025889704600001613
其中,f是初始变异因子,其取值范围是0.5到0.8,优选为0.6。
(2-1-10)对步骤(2-1-9)得到的自适应变异个体
Figure BDA00025889704600001614
和步骤(2-1-8)中得到的集合Icnt中的第
Figure BDA00025889704600001615
个目标个体
Figure BDA00025889704600001616
进行交叉操作,以生成实验个体
Figure BDA00025889704600001617
具体而言,生成实验个体的计算公式如下:
Figure BDA00025889704600001618
其中,randn是随机产生于{1,2,…,D}随机整数,rand是属于[0,1]间的均匀分布的随机实数,CR是交叉因子,D为个体基因维度,其中h∈[1,D];
具体而言,交叉因子CR的取值范围是0.7到0.9,优选为0.8,个体基因维度D的取值范围是1到3,优选为1。
(2-1-11)获取步骤(2-1-10)得到的实验个体
Figure BDA0002588970460000171
对应的适应度值
Figure BDA0002588970460000172
以及步骤(2-1-9)得到的目标个体
Figure BDA0002588970460000173
对应的适应度值
Figure BDA0002588970460000174
使用二者中较小的适应度值代替集合Icnt中的对应个体,并将步骤(2-8)中得到的集合Ecnt中的个体加入到Icnt中,从而得到更新后的集合Icnt
(2-1-12)设置计数器cnt=cnt+1,将步骤(2-1-11)更新后的集合Icnt保存到HDFS中,并返回步骤(2-1-3);
(2-2)对步骤(2-1)优化后的DBN模型进行训练,以得到训练好的DBN模型;
本步骤具体包括以下子步骤:
(2-2-1)将步骤(1)聚类处理后的不平衡数据集按照6:4的比例分为训练集和测试集;
(2-2-2)设置计数器cnt2=1;
(2-2-3)根据步骤(2-2-1)获得的训练集,将步骤(2)优化后的DBN模型的输入层的初始状态设置为训练集中的训练样本,并将DBN模型的输入层和第一个隐含层构建为受限玻尔兹曼机(Restricted Boltzmann Machine,简称RBM)网络,并初始化该RBM网络中输入层与第一隐含层之间的权重W、输入层的偏置量a、以及第一隐含层的偏置量b;
具体而言,W是使用标准差为0.1的正态分布输出的随机值,a和b设为0;
(2-2-4)判断cnt2是否等于3,如果是则过程结束,否则转入步骤(2-2-5);
(2-2-5)利用对比散度(Contrastive Divergence,简称CD)算法对RBM网络的输入值、RBM网络中输入层与第cnt2隐含层之间的权重W、输入层的偏置量a、以及第cnt2隐含层的偏置量b进行更新,以获得更新后的RBM网络;
(2-2-6)对步骤(2-2-5)更新后的RBM网络进行迭代训练,直到该RBM网络的重构误差达到最小为止,从而得到整体迭代训练后的RBM模型,将步骤(2)优化后的DBN模型的第cnt2+1隐含层加入到整体迭代训练后的RBM网络中,以构成新的RBM网络,同时将新的RBM网络中输入层与第cnt2+1隐含层之间的权重W更新为整体迭代训练后的RBM网络所输出的权重,将输入层的偏置量a、以及第cnt2+1隐含层的偏置量b分别更新为整体迭代训练后的RBM网络所输出的偏置值,并将整体迭代训练后的RBM网络的输出值作为新的的RBM网络的输入值;
所述RBM网络的重构误差RE为:
Figure BDA0002588970460000181
其中,ne表示RBM网络的输入层的神经元个数,
Figure BDA0002588970460000182
表示迭代训练前RBM网络的输入层第ie个神经元中的训练样本值,
Figure BDA0002588970460000183
表示迭代训练后RBM网络的输入层第ie个神经元中的训练样本值。
(2-2-7)设置计数器cnt2=cnt2+1,并返回步骤(2-2-4);
通过以上的步骤(2-2-1)到(2-2-7),就能够实现DBN模型的训练过程。
本发明的DBN-WKELM多分类器模型由m个DBN-WKELM基分类器组成(在本实施方式中,m取值为4),各个DBN-WKELM基分类器包括输入层、输出层、3个DBN隐含层和1个WKELM隐含层,输入层和输出层的节点数分别为122和5,,其中各个DBN隐含层的节点数分别为110、70、以及30,同时4个DBN-WKELM基分类器中WKELM隐含层的节点数分别为55、65、75以及85:
本发明的DBN-WKELM多分类器模型是通过以下过程训练得到的:
获取训练好的DBN模型,开启4个子线程,在每个子线程中将训练好的DBN模型的输出值设置为WKELM隐含层的输入值Xin,对该输入值Xin进行加权得到成本敏感矩阵Wcs,根据该成本敏感矩阵Wcs获得WKELM隐含层的输出权重β,并基于该输出权重β得到基于DBN特征提取的DBN-WKELM基分类器,4个基于DBN特征提取的DBN-WKELM基分类器共同构成训练好的DBN-WKELM多分类器模型。
本步骤中,对输入值Xin进行加权得到成本敏感矩阵Wcs这一过程具体是:
对Xin中的第ix个样本点赋予权重
Figure BDA0002588970460000191
以得到成本敏感矩阵Wcs中的第ix个主对角元素
Figure BDA0002588970460000192
其中ix∈[1,Xin中样本点的总数],Wcs是一个对角矩阵,其中权重
Figure BDA0002588970460000193
等于:
Figure BDA0002588970460000194
其中
Figure BDA0002588970460000195
为第ix个样本点所属类别在训练集中的数量。
WKELM隐含层的输出权重β的公式为:
Figure BDA0002588970460000196
其中,Cr是正则化系数,Ω是对应于WKELM基分类器的核函数Fk(在本发明中,该核函数可以是多项式核函数、或高斯核函数)的核矩阵,Tl是对应于输入值Xin的数据标签。
自适应加权投票法的权重计算公式如下:
Figure BDA0002588970460000197
其中,Wq是第q个DBN-WKELM基分类器在DBN-WKELM多分类器模型中的投票权重,
Figure BDA0002588970460000198
是第q个DBN-WKELM基分类器的分类准确率,
Figure BDA0002588970460000199
是第q个DBN-WKELM基分类器的分类误报率,且有q∈[1,m];
第q个DBN-WKELM基分类器的分类准确率和分类误报率的计算公式如下:
Figure BDA0002588970460000201
其中,
Figure BDA0002588970460000202
是第q个DBN-WKELM基分类器中正确分类的样本数目,
Figure BDA0002588970460000203
是第q个DBN-WKELM基分类器中总样本数目,
Figure BDA0002588970460000204
是第q个DBN-WKELM基分类器中被错误当作入侵行为的正常样本数目,
Figure BDA0002588970460000205
是第q个DBN-WKELM基分类器中的正常样本总数。
步骤(2)中,得到各基分类器的初步分类结果V=(v1,v2,v3,v4,v5),分别对应Normal、Probe、Dos、U2R和R2L这五个行为类型,然后通过自适应加权投票法计算各基分类器的权重,最终根据各基分类器的初步分类结果V和权重得到DBN-WKELM多分类器模型的总分类结果
Figure BDA0002588970460000206
Figure BDA0002588970460000207
从该总分类结果中取最大值对应的初步分类结果中的元素相应的行为类型作为最终的行为类型。
假设针对测试集中一条数据而言,4个DBN-WKELM基分类器得到的初步分类结果分别为(0,1,0,0,0),(0,0,1,0,0),(0,1,0,0,0),(0,0,1,0,0),此时各基分类器的分类准确率为98.5%,97.8%,98.2%,97.3%,分类误报率为2.3%,2.8%,2.7%,2.0%,根据上述公式计算可得各基分类器的权重为0.252,0.249,0.250,0.249,然后用第一个DBN-WKELM基分类器得到的初步分类结果中的v1(即0)*0.252+第二个DBN-WKELM基分类器得到的初步分类结果中的v1(即0)*0.252+第三个DBN-WKELM基分类器得到的初步分类结果中的v1(即0)*0.252+第四个DBN-WKELM基分类器得到的初步分类结果中的v1(即0)*0.252=0,然后用第一个DBN-WKELM基分类器得到的初步分类结果中的v2(即1)*0.252+第二个DBN-WKELM基分类器得到的初步分类结果中的v2(即0)*0.252+第三个DBN-WKELM基分类器得到的初步分类结果中的v2(即1)*0.252+第四个DBN-WKELM基分类器得到的初步分类结果中的v2(即0)*0.252=0.502…,以此类推,最后得到五个总分类结果(0,0.502,0.498,0,0),从中取最大值(就是0.502),其对应的初步分类结果中的元素(即v2)相应的行为类型(Probe行为类型)作为最终的行为类型。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于不平衡数据深度信念网络的并行入侵检测方法,其特征在于,包括以下步骤:
(1)获取不平衡数据集,利用领域清理规则算法对该不平衡数据集进行欠采样处理,并使用基于引力的聚类方法对欠采样处理后的不平衡数据集进行聚类处理,以得到聚类处理后的不平衡数据集;
(2)将步骤(1)获得的聚类处理后的不平衡数据输入训练好的深度信念网络DBN模型中,以提取特征,再将提取的特征输入训练好的DBN-WKELM多分类器模型中的多个DBN-WKELM基分类器中,以得到多个初步分类结果,通过自适应加权投票法计算各个DBN-WKELM基分类器的权重,并根据多个权重和多个初步分类结果获取最终的分类结果、以及该分类结果对应的入侵行为类别。
2.根据权利要求1所述的并行入侵检测方法,其特征在于,步骤(1)具体包括以下子步骤:
(1-1)获取不平衡数据集DS;
(1-2)从步骤(1-1)得到的不平衡数据集DS中获取一个样本点x以及该样本点x的k近邻数据Dk,其中k表示最近邻参数;
(1-3)获取步骤(1-2)得到的k近邻数据Dk中与样本点x的类别不同的所有样本所构成的集合Nk、以及该集合Nk中的样本数目num;
(1-4)判断步骤(1-3)获取的样本数目num是否大于或等于k-1,如果是,则转入步骤(1-5),否则转入步骤(1-6);
(1-5)判断样本点x的类别是否为多数类样本,如果是,则更新不平衡数据集DS为DS=DS-x,然后进入步骤(1-6),否则更新不平衡数据集DS为DS=DS-Nk,然后进入步骤(1-6);
(1-6)针对不平衡数据集DS中的剩余样本点,重复上述步骤(1-2) 至(1-5),直到不平衡数据集DS中的所有样本点都被处理完毕为止,从而得到更新后的不平衡数据集DS;
(1-7)设置计数器i=1;
(1-8)判断i是否等于不平衡数据集DS中的样本点总数,如果是则进入步骤(1-14),否则进入步骤(1-9);
(1-9)从步骤(1-6)更新后的不平衡数据集DS中读入第i个新的样本点
Figure FDA0002588970450000021
其中
Figure FDA0002588970450000022
表示第i个样本中的第e2个特征属性值,并判断优选设置的聚类集合S是否为空,如果是则转入步骤(1-10),否则转入步骤(1-11),其中e2∈[1,n];
(1-10)将样本点di初始化为一个新的类簇Cnew={di},同时将类簇Cnew的质心μ设置为di,并将类簇Cnew加入到聚类集合S中,转入到步骤(1-13);
(1-11)计算聚类集合S中的每个类簇对di的引力,并得到引力集合G={g1,g2,…,gng},并从引力集合G中得到最大引力gmax及其对应的类簇Cmax,其中ng表示聚类集合S中类簇的总数;
(1-12)判断最大引力gmax是否小于设定的阈值r,如果是,则返回步骤(1-10),否则将样本点di合并到类簇Cmax中,并更新合并了样本点di后的类簇Cmax的质心μmax,然后转入步骤(1-13);
(1-13)设置计数器i=i+1,并返回步骤(1-8);
(1-14)遍历聚类集合S中的所有类簇,并判断是否每个类簇中所有样本点的类型都是多数类样本,如果是,则根据采样率sr随机保存该类簇中的多数类样本,然后针对剩余类簇重复遍历过程,否则针对剩余类簇重复遍历过程。
3.根据权利要求1或2所述的并行入侵检测方法,其特征在于,
样本点di和类簇C之间的引力g是按照如下公式计算:
Figure FDA0002588970450000031
其中Cnum为类簇C中样本点的个数,μe2表示中类簇C的质心μ中的第e2个特征属性值;
更新类簇Cmax的质心μmax的公式如下:
Figure FDA0002588970450000032
其中Cmaxn为合并了样本点di后类簇Cmax中样本点的个数,dp为合并了样本点di后类簇Cmax中的第p个样本点,且有p∈[1,Cmaxn]。
4.根据权利要求1所述的并行入侵检测方法,其特征在于,DBN模型是通过步骤训练得到:
(2-1)获取DBN模型,并在分布式内存计算平台上使用改进的差分进化算法对该DBN模型进行优化,以得到优化后的DBN模型;
(2-2)对步骤(2-1)优化后的DBN模型进行训练,以得到训练好的DBN模型。
5.根据权利要求4所述的并行入侵检测方法,其特征在于,步骤(2-1)具体包括以下子步骤:
(2-1-1)获取DBN模型Wdbn={W1,W2,…,Wdep},其中dep表示DBN模型中隐含层的总数,Wdi表示DBN模型中第di个隐含层中神经元的数量,且有di∈[1,3];
(2-1-2)随机生成种群规模为nps个结构向量的初始种群,从该初始种群中随机选取其中一个结构向量作为该初始种群的全局最优解xbest,将初始种群以文件的形式写入到Hadoop分布式文件***(Hadoop Distributed File System,简称HDFS)中,并设置计数器cnt=1;
(2-1-3)判断cnt是否等于最大迭代次数T或者全局最优解xbest已收敛,如果是,则输出全局最优解,过程结束,否则转入步骤(2-4);
(2-1-4)判断cnt是否为1,如果是,则从HDFS中读取步骤(2-1-2)中写入其中的文件,将该文件划分为npa个输入分片,每个输入分片包含一个子种群,然后转入步骤(2-1-5),否则从HDFS中读取更新后的文件,将该文件划分为npa个输入分片,每个输入分片包含一个子种群,然后转入步骤(2-1-5);
(2-1-5)针对步骤(2-1-4)得到的每个子种群而言,获取该子种群中第cnt代中第j个个体
Figure FDA0002588970450000041
作为DBN模型中各隐含层的神经元数,根据相应DBN模型获取nt个分类点的分类结果,根据该分类结果计算DBN模型的分类误差CE,并将该分类误差CE作为该子种群中第cnt代中第j个个体的适应度值
Figure FDA0002588970450000042
其中j∈[1,子种群中第cnt代中个体的总数],
Figure FDA0002588970450000043
表示子种群中第cnt代中第j个个体中的第dep个元素;
(2-1-6)针对步骤(2-1-4)得到的每个子种群而言,获取该子种群第cnt代中所有个体的适应度值所构成的适应度值集合
Figure FDA0002588970450000044
Figure FDA0002588970450000045
其中sn为适应度值集合F中适应度值的总数,按照从小到大的顺序对该适应度值集合中的所有适应度值进行排序,以获取新的适应度值集合
Figure FDA0002588970450000046
将该新的适应度集合
Figure FDA0002588970450000047
中最小适应度值对应的个体作为该子种群的最优解,并将该最小适应度值作为该子种群的最佳适应度值,
(2-1-7)从所有子种群的最佳适应度值中选择最小值作为整体最佳适应度值,并将全局最优解xbest更新为该整体最佳适应度值对应的个体;
(2-1-8)针对步骤(2-1-6)得到的适应度值集合F,取适应度值最小的两个个体
Figure FDA0002588970450000048
Figure FDA0002588970450000049
组成集合
Figure FDA00025889704500000410
该适应度值集合F中剩余的个体组成集合
Figure FDA00025889704500000411
(2-1-9)根据步骤(2-1-8)中得到的集合Icnt中的第
Figure FDA0002588970450000051
个目标个体
Figure FDA0002588970450000052
生成自适应变异个体
Figure FDA0002588970450000053
其中
Figure FDA0002588970450000054
(2-1-10)对步骤(2-1-9)得到的自适应变异个体
Figure FDA0002588970450000055
和步骤(2-1-8)中得到的集合Icnt中的第
Figure FDA0002588970450000056
个目标个体
Figure FDA0002588970450000057
进行交叉操作,以生成实验个体
Figure FDA0002588970450000058
(2-1-11)获取步骤(2-1-10)得到的实验个体
Figure FDA0002588970450000059
对应的适应度值
Figure FDA00025889704500000510
以及步骤(2-1-9)得到的目标个体
Figure FDA00025889704500000511
对应的适应度值
Figure FDA00025889704500000512
使用二者中较小的适应度值代替集合Icnt中的对应个体,并将步骤(2-8)中得到的集合Ecnt中的个体加入到Icnt中,从而得到更新后的集合Icnt
(2-1-12)设置计数器cnt=cnt+1,将步骤(2-1-11)更新后的集合Icnt保存到HDFS中,并返回步骤(2-1-3)。
6.根据权利要求5所述的并行入侵检测方法,其特征在于,
分类误差是采用以下公式获得:
Figure FDA00025889704500000513
其中,
Figure FDA00025889704500000514
是真实结果,
Figure FDA00025889704500000515
是分类结果,nt是分类点个数;
生成自适应变异个体的计算公式如下:
Figure FDA00025889704500000516
其中,
Figure FDA00025889704500000517
Figure FDA00025889704500000518
均∈[3,sn],三者彼此不相同,且三者均不等于
Figure FDA00025889704500000519
Fc为自适应变异因子;
自适应变异因子Fc的计算公式如下:
Figure FDA00025889704500000520
其中,f是初始变异因子;
生成实验个体的计算公式如下:
Figure FDA0002588970450000061
其中,randn是随机产生于{1,2,…,D}的随机整数,rand是属于[0,1]间的均匀分布的随机实数,CR是交叉因子,D为个体基因维度,其中h∈[1,D]。
7.根据权利要求4所述的并行入侵检测方法,其特征在于,步骤(2-2)具体包括以下子步骤:
(2-2-1)将步骤(1)聚类处理后的不平衡数据集按照6:4的比例分为训练集和测试集;
(2-2-2)设置计数器cnt2=1;
(2-2-3)根据步骤(2-2-1)获得的训练集,将步骤(2)优化后的DBN模型的输入层的初始状态设置为训练集中的训练样本,并将DBN模型的输入层和第一个隐含层构建为受限玻尔兹曼机RBM网络,并初始化该RBM网络中输入层与第一隐含层之间的权重W、输入层的偏置量a、以及第一隐含层的偏置量b;
(2-2-4)判断cnt2是否等于3,如果是则过程结束,否则转入步骤(2-2-5);
(2-2-5)利用对比散度(Contrastive Divergence,简称CD)算法对RBM网络的输入值、RBM网络中输入层与第cnt2隐含层之间的权重W、输入层的偏置量a、以及第cnt2隐含层的偏置量b进行更新,以获得更新后的RBM网络;
(2-2-6)对步骤(2-2-5)更新后的RBM网络进行迭代训练,直到该RBM网络的重构误差达到最小为止,从而得到整体迭代训练后的RBM模型,将步骤(2)优化后的DBN模型的第cnt2+1隐含层加入到整体迭代训练后的RBM网络中,以构成新的RBM网络,同时将新的RBM网络中输入层与第cnt2+1隐含层之间的权重W更新为整体迭代训练后的RBM网络所输出的权重,将输入层的偏置量a、以及第cnt2+1隐含层的偏置量b分别更新为整体迭代训练后的RBM网络所输出的偏置值,并将整体迭代训练后的RBM网络的输出值作为新的的RBM网络的输入值;
(2-2-7)设置计数器cnt2=cnt2+1,并返回步骤(2-2-4)。
8.根据权利要求1所述的并行入侵检测方法,其特征在于,DBN-WKELM多分类器模型是通过以下过程训练得到的:获取训练好的DBN模型,开启4个子线程,在每个子线程中将训练好的DBN模型的输出值设置为WKELM隐含层的输入值Xin,对该输入值Xin进行加权得到成本敏感矩阵Wcs,根据该成本敏感矩阵Wcs获得WKELM隐含层的输出权重β,并基于该输出权重β得到基于DBN特征提取的DBN-WKELM基分类器,4个基于DBN特征提取的DBN-WKELM基分类器共同构成训练好的DBN-WKELM多分类器模型。
9.根据权利要求8所述的并行入侵检测方法,其特征在于,WKELM隐含层的输出权重β的公式为:
Figure FDA0002588970450000071
其中,Cr是正则化系数,Ω是对应于WKELM基分类器的核函数Fk的核矩阵,Tl是对应于输入值Xin的数据标签;
自适应加权投票法的权重计算公式如下:
Figure FDA0002588970450000072
其中,Wq是第q个DBN-WKELM基分类器在DBN-WKELM多分类器模型中的投票权重,
Figure FDA0002588970450000073
是第q个DBN-WKELM基分类器的分类准确率,
Figure FDA0002588970450000074
是第q个DBN-WKELM基分类器的分类误报率,且有q∈[1,m];
第q个DBN-WKELM基分类器的分类准确率和分类误报率的计算公式如下:
Figure FDA0002588970450000081
其中,
Figure FDA0002588970450000082
是第q个DBN-WKELM基分类器中正确分类的样本数目,
Figure FDA0002588970450000083
是第q个DBN-WKELM基分类器中总样本数目,
Figure FDA0002588970450000084
是第q个DBN-WKELM基分类器中被错误当作入侵行为的正常样本数目,
Figure FDA0002588970450000085
是第q个DBN-WKELM基分类器中的正常样本总数。
10.一种基于不平衡数据深度信念网络的并行入侵检测***,其特征在于,包括:
第一模块,用于获取不平衡数据集,利用领域清理规则算法对该不平衡数据集进行欠采样处理,并使用基于引力的聚类方法对欠采样处理后的不平衡数据集进行聚类处理,以得到聚类处理后的不平衡数据集;
第二模块,用于将第一模块获得的聚类处理后的不平衡数据输入训练好的深度信念网络DBN模型中,以提取特征,再将提取的特征输入训练好的DBN-WKELM多分类器模型中的多个DBN-WKELM基分类器中,以得到多个初步分类结果,通过自适应加权投票法计算各个DBN-WKELM基分类器的权重,并根据多个权重和多个初步分类结果获取最终的分类结果、以及该分类结果对应的入侵行为类别。
CN202010689950.5A 2020-07-17 2020-07-17 基于不平衡数据深度信念网络的并行入侵检测方法和*** Active CN111860638B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202010689950.5A CN111860638B (zh) 2020-07-17 2020-07-17 基于不平衡数据深度信念网络的并行入侵检测方法和***
US17/626,684 US11977634B2 (en) 2020-07-17 2021-05-17 Method and system for detecting intrusion in parallel based on unbalanced data Deep Belief Network
PCT/CN2021/094023 WO2022012144A1 (zh) 2020-07-17 2021-05-17 基于不平衡数据深度信念网络的并行入侵检测方法和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010689950.5A CN111860638B (zh) 2020-07-17 2020-07-17 基于不平衡数据深度信念网络的并行入侵检测方法和***

Publications (2)

Publication Number Publication Date
CN111860638A true CN111860638A (zh) 2020-10-30
CN111860638B CN111860638B (zh) 2022-06-28

Family

ID=72984602

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010689950.5A Active CN111860638B (zh) 2020-07-17 2020-07-17 基于不平衡数据深度信念网络的并行入侵检测方法和***

Country Status (3)

Country Link
US (1) US11977634B2 (zh)
CN (1) CN111860638B (zh)
WO (1) WO2022012144A1 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112364942A (zh) * 2020-12-09 2021-02-12 润联软件***(深圳)有限公司 信贷数据样本均衡方法、装置、计算机设备及存储介质
CN113141357A (zh) * 2021-04-19 2021-07-20 湖南大学 一种用于优化网络入侵检测性能的特征选择方法和***
CN113139598A (zh) * 2021-04-22 2021-07-20 湖南大学 一种基于改进智能优化算法的入侵检测方法和***
WO2022012144A1 (zh) * 2020-07-17 2022-01-20 湖南大学 基于不平衡数据深度信念网络的并行入侵检测方法和***
CN114037091A (zh) * 2021-11-11 2022-02-11 哈尔滨工业大学 一种基于专家联合评价的网络安全信息共享***、方法、电子设备及存储介质
CN115204324A (zh) * 2022-09-16 2022-10-18 西安热工研究院有限公司 基于ifoa-dbn-elm的设备耗电异常检测方法和装置
CN115545111A (zh) * 2022-10-13 2022-12-30 重庆工商大学 一种基于聚类自适应混合采样的网络入侵检测方法及***
CN116015932A (zh) * 2022-12-30 2023-04-25 湖南大学 入侵检测网络模型生成方法以及数据流量入侵检测方法
US11741252B1 (en) * 2022-07-07 2023-08-29 Sas Institute, Inc. Parallel and incremental processing techniques for data protection

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114638555B (zh) * 2022-05-18 2022-09-16 国网江西综合能源服务有限公司 基于多层正则化极限学习机的用电行为检测方法及***
CN115102909B (zh) * 2022-06-15 2023-06-27 大连大学 一种基于ihho-fcm算法的网络流量分类方法
CN115086070B (zh) * 2022-07-20 2022-11-15 山东省计算中心(国家超级计算济南中心) 工业互联网入侵检测方法及***
CN115277151A (zh) * 2022-07-21 2022-11-01 国网山西省电力公司信息通信分公司 一种基于鲸鱼提升算法的网络入侵检测方法
CN115473672B (zh) * 2022-08-03 2024-03-29 广西电网有限责任公司电力科学研究院 一种基于在线交互式web动态防御的防漏洞探测方法
CN116668085B (zh) * 2023-05-05 2024-02-27 山东省计算中心(国家超级计算济南中心) 基于lightGBM的流量多进程入侵检测方法及***
CN116846688B (zh) * 2023-08-30 2023-11-21 南京理工大学 基于cnn的可解释流量入侵检测方法
CN117459250A (zh) * 2023-09-22 2024-01-26 广州大学 一种基于海鸥优化极限学习机的网络入侵检测方法、***、介质及设备
CN117272116B (zh) * 2023-10-13 2024-05-17 西安工程大学 一种基于loras平衡数据集的变压器故障诊断方法
CN117579397B (zh) * 2024-01-16 2024-03-26 杭州海康威视数字技术股份有限公司 基于小样本集成学习的物联网隐私泄露检测方法及装置
CN117892102B (zh) * 2024-03-14 2024-05-24 山东省计算中心(国家超级计算济南中心) 基于主动学习的入侵行为检测方法、***、设备及介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050289089A1 (en) * 2004-06-28 2005-12-29 Naoki Abe Methods for multi-class cost-sensitive learning
CN103716204A (zh) * 2013-12-20 2014-04-09 中国科学院信息工程研究所 一种基于维纳过程的异常入侵检测集成学习方法及装置
CN103927874A (zh) * 2014-04-29 2014-07-16 东南大学 基于欠抽样面向不平衡数据集的交通事件自动检测方法
CN108234500A (zh) * 2018-01-08 2018-06-29 重庆邮电大学 一种基于深度学习的无线传感网入侵检测方法
CN110300095A (zh) * 2019-05-13 2019-10-01 江苏大学 一种基于改进学习率的深度学习网络入侵检测方法
DE102018129871A1 (de) * 2018-11-27 2020-05-28 Valeo Schalter Und Sensoren Gmbh Trainieren eins tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten zur Anwendung in einem Fahrunterstützungssystem

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10650508B2 (en) * 2014-12-03 2020-05-12 Kla-Tencor Corporation Automatic defect classification without sampling and feature selection
US9569700B1 (en) * 2014-12-17 2017-02-14 Amazon Technologies, Inc. Identification of item attributes using artificial intelligence
CN106650806B (zh) * 2016-12-16 2019-07-26 北京大学深圳研究生院 一种用于行人检测的协同式深度网络模型方法
WO2019071384A1 (en) * 2017-10-09 2019-04-18 Bl Technologies, Inc. INTELLIGENT SYSTEMS AND METHODS FOR THE TREATMENT AND EVALUATION OF SANITATION DIAGNOSIS, DETECTION AND CONTROL OF ANOMALY IN WASTEWATER TREATMENT FACILITIES OR IN DRINKING WATER FACILITIES
CN107895171A (zh) 2017-10-31 2018-04-10 天津大学 一种基于k均值与深度置信网络的入侵检测方法
US11444957B2 (en) * 2018-07-31 2022-09-13 Fortinet, Inc. Automated feature extraction and artificial intelligence (AI) based detection and classification of malware
US11816562B2 (en) * 2019-04-04 2023-11-14 Adobe Inc. Digital experience enhancement using an ensemble deep learning model
US11893111B2 (en) * 2019-11-26 2024-02-06 Harman International Industries, Incorporated Defending machine learning systems from adversarial attacks
CN111860638B (zh) 2020-07-17 2022-06-28 湖南大学 基于不平衡数据深度信念网络的并行入侵检测方法和***

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050289089A1 (en) * 2004-06-28 2005-12-29 Naoki Abe Methods for multi-class cost-sensitive learning
CN103716204A (zh) * 2013-12-20 2014-04-09 中国科学院信息工程研究所 一种基于维纳过程的异常入侵检测集成学习方法及装置
CN103927874A (zh) * 2014-04-29 2014-07-16 东南大学 基于欠抽样面向不平衡数据集的交通事件自动检测方法
CN108234500A (zh) * 2018-01-08 2018-06-29 重庆邮电大学 一种基于深度学习的无线传感网入侵检测方法
DE102018129871A1 (de) * 2018-11-27 2020-05-28 Valeo Schalter Und Sensoren Gmbh Trainieren eins tiefen konvolutionellen neuronalen Netzwerks zum Verarbeiten von Sensordaten zur Anwendung in einem Fahrunterstützungssystem
CN110300095A (zh) * 2019-05-13 2019-10-01 江苏大学 一种基于改进学习率的深度学习网络入侵检测方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
杨飚等: "加权随机森林算法研究", 《微型机与应用》, 31 March 2016 (2016-03-31), pages 28 - 30 *
汪洋等: "基于深度序列加权核极限学习的入侵检测算法", 《计算机应用研究》, 31 March 2020 (2020-03-31), pages 829 - 832 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11977634B2 (en) 2020-07-17 2024-05-07 Hunan University Method and system for detecting intrusion in parallel based on unbalanced data Deep Belief Network
WO2022012144A1 (zh) * 2020-07-17 2022-01-20 湖南大学 基于不平衡数据深度信念网络的并行入侵检测方法和***
CN112364942A (zh) * 2020-12-09 2021-02-12 润联软件***(深圳)有限公司 信贷数据样本均衡方法、装置、计算机设备及存储介质
CN112364942B (zh) * 2020-12-09 2021-05-28 润联软件***(深圳)有限公司 信贷数据样本均衡方法、装置、计算机设备及存储介质
CN113141357A (zh) * 2021-04-19 2021-07-20 湖南大学 一种用于优化网络入侵检测性能的特征选择方法和***
CN113139598B (zh) * 2021-04-22 2022-04-22 湖南大学 一种基于改进智能优化算法的入侵检测方法和***
CN113139598A (zh) * 2021-04-22 2021-07-20 湖南大学 一种基于改进智能优化算法的入侵检测方法和***
CN114037091A (zh) * 2021-11-11 2022-02-11 哈尔滨工业大学 一种基于专家联合评价的网络安全信息共享***、方法、电子设备及存储介质
CN114037091B (zh) * 2021-11-11 2024-05-28 哈尔滨工业大学 一种基于专家联合评价的网络安全信息共享***、方法、电子设备及存储介质
US11741252B1 (en) * 2022-07-07 2023-08-29 Sas Institute, Inc. Parallel and incremental processing techniques for data protection
CN115204324A (zh) * 2022-09-16 2022-10-18 西安热工研究院有限公司 基于ifoa-dbn-elm的设备耗电异常检测方法和装置
CN115545111A (zh) * 2022-10-13 2022-12-30 重庆工商大学 一种基于聚类自适应混合采样的网络入侵检测方法及***
CN115545111B (zh) * 2022-10-13 2023-05-30 重庆工商大学 一种基于聚类自适应混合采样的网络入侵检测方法及***
CN116015932A (zh) * 2022-12-30 2023-04-25 湖南大学 入侵检测网络模型生成方法以及数据流量入侵检测方法

Also Published As

Publication number Publication date
CN111860638B (zh) 2022-06-28
US20220382864A1 (en) 2022-12-01
US11977634B2 (en) 2024-05-07
WO2022012144A1 (zh) 2022-01-20

Similar Documents

Publication Publication Date Title
CN111860638B (zh) 基于不平衡数据深度信念网络的并行入侵检测方法和***
Zhao et al. A weighted hybrid ensemble method for classifying imbalanced data
Din et al. Exploiting evolving micro-clusters for data stream classification with emerging class detection
CN112613552B (zh) 一种结合情感类别注意力损失的卷积神经网络情感图像分类方法
CN108108762B (zh) 一种用于冠心病数据的核极限学习机及随机森林分类方法
CN105760888B (zh) 一种基于属性聚类的邻域粗糙集集成学习方法
CN112087447B (zh) 面向稀有攻击的网络入侵检测方法
CN111080442A (zh) 信用评分模型的构建方法、装置、设备及存储介质
CN110084610A (zh) 一种基于孪生神经网络的网络交易欺诈检测***
CN108363810A (zh) 一种文本分类方法及装置
CN115048988B (zh) 基于高斯混合模型的不平衡数据集分类融合方法
CN112001788B (zh) 一种基于rf-dbscan算法的***违约欺诈识别方法
CN110276679A (zh) 一种面向深度学习的网络个人信贷欺诈行为检测方法
CN112926645B (zh) 一种基于边缘计算的窃电检测方法
CN110298434A (zh) 一种基于模糊划分和模糊加权的集成深度信念网络
Shi et al. A hybrid imbalanced classification model based on data density
Bhowmik et al. Dbnex: Deep belief network and explainable ai based financial fraud detection
Li et al. Intrusion detection method based on imbalanced learning classification
CN111178897B (zh) 在不平衡数据上快速特征学习的代价敏感的动态聚类方法
Zhang et al. Ensemble classification for skewed data streams based on neural network
CN114265954B (zh) 基于位置与结构信息的图表示学习方法
CN114997378A (zh) 归纳式图神经网络剪枝方法、***、设备及存储介质
Cao et al. Detection and fine-grained classification of malicious code using convolutional neural networks and swarm intelligence algorithms
Li et al. Study on the Prediction of Imbalanced Bank Customer Churn Based on Generative Adversarial Network
Feng et al. A novel parallel object-tracking behavior algorithm based on dynamics for data clustering

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