«上一篇 下一篇»
  计算机工程  2022, Vol. 48 Issue (6): 146-153  DOI: 10.19678/j.issn.1000-3428.0061509
0

引用本文  

生龙, 袁丽娜, 武南南, 等. 基于GSA与DE优化混合核ELM的网络异常检测模型[J]. 计算机工程, 2022, 48(6), 146-153. DOI: 10.19678/j.issn.1000-3428.0061509.
SHENG Long, YUAN Lina, WU Nannan, et al. Network Anomaly Detection Model Based on GSA and DE Optimizing Hybrid Kernel ELM[J]. Computer Engineering, 2022, 48(6), 146-153. DOI: 10.19678/j.issn.1000-3428.0061509.

基金项目

国家重点研发计划(2018YFF0301004);四川省重大科技项目(2017GZDZX0002)

作者简介

生龙(1982—),男,副教授、博士,主研方向为人工神经网络、图像处理、机器学习、数据挖掘;
袁丽娜,硕士;
武南南,讲师、博士;
姬少培,工程师、硕士

文章历史

收稿日期:2021-04-29
修回日期:2021-07-09
基于GSA与DE优化混合核ELM的网络异常检测模型
生龙1,2 , 袁丽娜1,2 , 武南南3 , 姬少培4     
1. 河北工程大学 信息与电气工程学院, 河北 邯郸 056038;
2. 河北工程大学 河北省安防信息感知与处理重点实验室, 河北 邯郸 056038;
3. 天津大学 智能与计算学部,天津 300072;
4. 中国电子科技集团公司第三十研究所,成都 610041
摘要:为了增强网络入侵检测模型的准确率与泛化性,提出一种基于引力搜索算法(GSA)与差分进化(DE)算法优化混合核极限学习机(ELM)的网络入侵检测模型。该模型针对采用单个核函数的ELM模型存在的泛化能力弱、学习能力差的问题,结合多项式核函数和径向基函数的优点,构建混合核ELM模型(HKELM),将GSA和DE相结合优化HKELM模型参数,从而提高其在异常检测过程中的全局和局部优化能力,在此基础上利用核主成分分析算法进行入侵检测数据的数据降维和特征抽取,构建网络入侵检测模型KPCA-GSADE-HKELM。在KDD99数据集上的实验结果表明,与KDDwinner、CSVAC、CPSO-SVM、Dendron等模型进行对比,KPCA-GSADE-HKELM模型具有更高的检测精度和更快的检测速度。
关键词网络入侵检测    异常检测    引力搜索算法    差分进化算法    混合核极限学习机    检测精度    
Network Anomaly Detection Model Based on GSA and DE Optimizing Hybrid Kernel ELM
SHENG Long1,2 , YUAN Lina1,2 , WU Nannan3 , JI Shaopei4     
1. College of Information and Electronic Engineering, Hebei University of Engineering, Handan, Hebei 056038, China;
2. Hebei Key Laboratory of Security & Protection Information Sensing and Processing, Hebei University of Engineering, Handan, Hebei 056038, China;
3. College of Intelligence and Computing, Tianjin University, Tianjin 300072, China;
4. The 30th Research Institute of China Electronics Technology Group Corporation, Chengdu 610041, China
Abstract: To enhance the accuracy and generalization of the network intrusion detection model, this study proposes a network intrusion detection model based on the Gravitational Search Algorithm(GSA) and Differential Evolution(DE) algorithm to optimize the hybrid kernel Extreme Learning Machine (ELM).Aiming to improve the weak generalization and poor learning capabilities of ELM models with single kernel function, this model combines the advantages of a polynomial kernel function and radial basis function to construct the so-called Hybrid Kernel ELM(HKELM)model.Furthermore, GSA and DE are combined to optimize the parameters of HKELM, which improves its global and local optimization ability in anomaly detection.Then, the Kernel Principal Component Analysis(KPCA) algorithm is used for data dimensionality reduction and feature extraction from intrusion detection data.Finally, the proposed approach constructs a network intrusion detection model based on GSA and DE optimized hybrid kernel ELM (KPCA-GSADE-HKELM).Experimental results on the KDD99 dataset demonstrate that KPCA-GSADE-HKELM model achievesa higher detection accuracy and faster detection speed compared with KDDwinner, CSVAC, CPSO-SVM, and Dendron models.
Key words: network intrusion detection    anomaly detection    Gravitational Search Algorithm(GSA)    Differential Evolution(DE) algorithm    Hybrid Kernel Extreme Learning Machine(HKELM)    accuracy of detection    

开放科学(资源服务)标志码(OSID):

0 概述

随着网络技术的不断发展,特别是Internet的普及,网络安全问题受到学者的广泛关注。作为一种新的安全防御技术,入侵检测系统(IDS)可以主动保护网络系统免受非法外部攻击。IDS能够通过检测和响应各种恶意行为来提高系统的可靠性和安全性。文献[1-2]介绍了网络威胁的研究现状,将IDS分为异常检测系统和签名检测系统两类。异常检测系统在检测未知攻击方面表现更好,但是会产生很高的误报率。签名检测系统依靠特定的攻击特征来区分正常活动和恶意活动,但是这些系统的检测效果受到检测规则的直接影响。因此,提高入侵检测系统的检测精度和学习速度仍然是一项艰巨的任务[3]

当前在入侵检测(ID)领域已经有了大量研究。文献[4]介绍一种有效的异常检测方法,可以从网络流量数据中提取准确的和可解释的模糊规则进行分类。文献[5]将主成分分析(PCA)法用于ID。文献[6-7]介绍了K最近邻(KNN)方法在恶意攻击检测上的应用,该方法具备高精度和高检测率的特点。文献[8]介绍一种基于贝叶斯理论和决策树的新型多级混合分类器,并将其用于IDS。文献[9]提出一种具有自适应神经模糊推理特征的策略增强模糊模型,该模型以较高的检测精度和较低的误报率来应对与SOAP相关的攻击。文献[10]提出一种用于自适应入侵检测系统的实时多代理系统的方法(RTMAS-AIDS),该方法允许IDS进行未知攻击的实时检测,并且应用混合支持向量机(SVM)和极限学习机(ELM)来对正常行为和已知攻击进行分类。文献[11]提出一种基于SVM算法的入侵检测模型,取得了很好的检测效果。上述研究在检测和报告恶意攻击方面取得了较好的性能,但是在准确率及模型泛化性上仍有待提高。

现有研究旨在提供一种能够准确有效进行网络入侵检测的方法,需针对特定的攻击特征以高精度和快速的学习速度来区分正常活动和恶意活动。文献[12]将粒子群优化(PSO)算法用于SVM-KNN的参数优化,以构建具有更优准确性的分类器。文献[13]提出一种基于差分进化(DE)的加权SVM多类分类器。ELM[14]是进行入侵和攻击检测的常用方法。文献[15]提出一种具有高斯核的自适应差分进化极限学习机,用于进行网络入侵检测。PSO是一种启发式优化方法,需要确定的参数较少,具有收敛速度快和局部优化能力强的优点。文献[16-17]指出DE算法也是一种启发式优化方法,具有很强的全局优化能力与适应性强的优势。但是PSO和DE算法都有其自身的缺点,即前者很容易陷入局部最优,而后者的局部优化能力相对较弱。

本文在上述研究的基础上,将径向基核函数(RBF)与多项式核函数相结合组成混合核函数,构建混合核函数ELM模型(HKELM),同时将GSA、DE、KPCA及HKELM模型相结合,构建基于GSA与DE优化HKELM的网络入侵检测模型KPCA-GSADE-HKELM。

1 混合核函数ELM模型 1.1 ELM模型

极限学习机(ELM)最初针对单隐层前馈神经网络进行训练,具有学习速度快、泛化能力强的特点[18]

对于给定的训练样本集$ \left\{\right({x}_{i}, {y}_{i}{\left)\right\}}_{i=1}^{N} $,其中$ ({x}_{i}, {y}_{i})\in {\mathbb{R}}^{n}\times {\mathbb{R}}^{m} $$ {x}_{i}\in {\mathbb{R}}^{n} $为输入,$ {y}_{i}\in {\mathbb{R}}^{m} $为对应的期望输出,根据$ N $个训练样本学习确定模型参数$ {\omega }_{i} $$ {b}_{i} $$ {\beta }_{i} $,即:

$ {y}_{i}=\sum\limits_{i=1}^{L}{\beta }_{i}G({\omega }_{i}, {b}_{i}, x), j=\mathrm{1, 2}, \cdots , N $ (1)

可简写为:

$ \boldsymbol{H}\boldsymbol{\beta }=\boldsymbol{Y} $ (2)

其中:H为ELM的隐含层输出矩阵;$ \boldsymbol{Y}\in {\mathbb{R}}^{N\times m} $为期望输出向量;输出矩阵$ \boldsymbol{\beta }\in {\mathbb{R}}^{\tilde{N}\times m} $$ \tilde{N} $为隐含层单元个数。

模型对参数$ {\omega }_{i} $$ {b}_{i} $进行随机赋值,即可得出输出矩阵:

$ \boldsymbol{\beta }={\boldsymbol{H}}^{†}\boldsymbol{Y} $ (3)

其中:$ {\boldsymbol{H}}^{†} $H的广义逆。

1.2 HKELM模型

虽然ELM模型具有较好的泛化性能,但是将模型应用于几个未知的测试数据集时,ELM模型的预测准确性可能会相对较低。2012年,HUANG等[19]为提高模型的泛化能力,将核参数I/C引入到HHT中,这一ELM模型即核函数极限学习机(KELM)。KELM的输出函数如下:

$ f\left(x\right)=h\left(x\right)\boldsymbol{\beta }=h\left(x\right){\boldsymbol{H}}^{\mathrm{T}}(\boldsymbol{I}/C+\boldsymbol{H}{\boldsymbol{H}}^{\mathrm{T}}{)}^{-1}T $ (4)

其中:常数$ C $是惩罚参数;I是单位矩阵。

KELM核函数的定义如下:

$ {{\mathit{\Omega}} }_{\mathrm{K}\mathrm{L}\mathrm{E}\mathrm{M}}=\boldsymbol{H}{\boldsymbol{H}}^{\mathrm{T}} $ (5)
$ {{\mathit{\Omega}} }_{\mathrm{K}\mathrm{L}\mathrm{E}{\mathrm{M}}_{i.j}}=h\left({x}_{i}\right)h\left({x}_{j}\right)=K({x}_{i}, {x}_{j}) $ (6)

核函数的选择会极大地影响KELM模型的性能。因此,为KELM模型找到合适的核函数具有重要意义。多项式核函数是典型的全局核函数,其对应的KELM模型具有较强的泛化能力和较弱的学习能力[20-21]。径向基核函数RBF是典型的局部核函数,这意味着相应的KELM模型具有很强的学习能力和弱泛化能力[20-21]。多项式核函数的泛化能力优于RBF核功能,而学习能力较差。因此,为了提高KELM的通用性和学习能力,本文将两个核函数相结合组建新的混合核函数作为KELM的核函数,此时的KELM模型即为混合核函数ELM(HKELM)模型。混合核函数的计算公式如下:

$ {K}_{\mathrm{h}\mathrm{y}\mathrm{b}\mathrm{r}\mathrm{i}\mathrm{d}}(x, {x}_{i})=\omega \cdot {K}_{\mathrm{R}\mathrm{B}\mathrm{F}}+(1-\omega )\cdot {K}_{\mathrm{p}\mathrm{o}\mathrm{l}\mathrm{y}} $ (7)

其中:常数$ \omega $是混合核函数的权重系数,$ \omega \in \left[\mathrm{0, 1}\right] $$ {K}_{\mathrm{p}\mathrm{o}\mathrm{l}\mathrm{y}}(x, {x}_{i})=(x\cdot {x}_{i}{+b)}^{p} $代表多项式核函数,bp分别为常数和多项式核函数的指数参数;$ {K}_{\mathrm{R}\mathrm{B}\mathrm{F}}(x, {x}_{i})=\mathrm{e}\mathrm{x}\mathrm{p}\left(-\frac{\left|\right|x-{x}_{i}|{|}^{2}}{2{\sigma }^{2}}\right) $代表径向基核函数,$ \sigma $是径向基核函数的指数参数。

2 结合GSA的差分进化算法 2.1 引力搜索算法

引力搜索算法(Gravitational Search Algorithm,GSA)是ESMAT提出的一种群智能优化算法,其以万有引力与牛顿第二定律为基础[22]

GSA中第$ i $个粒子的质量$ {M}_{i}\left(t\right) $的计算公式如下:

$ \begin{array}{l}{M}_{i}\left(t\right)=\frac{{m}_{i}\left(t\right)}{\sum\limits_{j=1}^{N}{m}_{j}\left(t\right)}\\ {m}_{i}\left(t\right)=\frac{\mathrm{f}\mathrm{i}{\mathrm{t}}_{i}\left(t\right)-\mathrm{w}\mathrm{o}\mathrm{r}\mathrm{s}\mathrm{t}\left(t\right)}{\mathrm{b}\mathrm{e}\mathrm{s}\mathrm{t}\left(t\right)-\mathrm{w}\mathrm{o}\mathrm{r}\mathrm{s}\mathrm{t}\left(t\right)}\end{array} $ (8)

其中:$ N $为粒子的总数;$ \mathrm{f}\mathrm{i}{\mathrm{t}}_{i}\left(t\right) $为第i个粒子在t次迭代的适应度;$ \mathrm{b}\mathrm{e}\mathrm{s}\mathrm{t}\left(t\right) $$ \mathrm{w}\mathrm{o}\mathrm{r}\mathrm{s}\mathrm{t}\left(t\right) $分别为迭代时所有粒子最好和最差的适应度;$ {m}_{i}\left(t\right) $计算粒子的质量,为第$ i $个粒子相对于迭代中最好和最差适应度的比值[22],具体如下:

$ \left\{\begin{array}{l}\mathrm{b}\mathrm{e}\mathrm{s}\mathrm{t}\left(t\right)=\mathrm{m}\mathrm{a}\mathrm{x}\left\{\mathrm{f}\mathrm{i}{\mathrm{t}}_{i}\right(t\left)\right\}\\ \mathrm{w}\mathrm{o}\mathrm{r}\mathrm{s}\mathrm{t}\left(t\right)=\mathrm{m}\mathrm{i}\mathrm{n}\left\{\mathrm{f}\mathrm{i}{\mathrm{t}}_{i}\right(t\left)\right\}\end{array}\right., i=\mathrm{1, 2}, \cdots , N $ (9)
$ \left\{\begin{array}{l}\mathrm{b}\mathrm{e}\mathrm{s}\mathrm{t}\left(t\right)=\mathrm{m}\mathrm{i}\mathrm{n}\left\{\mathrm{f}\mathrm{i}{\mathrm{t}}_{i}\right(t\left)\right\}\\ \mathrm{w}\mathrm{o}\mathrm{r}\mathrm{s}\mathrm{t}\left(t\right)=\mathrm{m}\mathrm{a}\mathrm{x}\left\{\mathrm{f}\mathrm{i}{\mathrm{t}}_{i}\right(t\left)\right\}\end{array}\right., i=\mathrm{1, 2}, \cdots , N $ (10)

粒子间引力$ {F}_{ij}^{d}\left(t\right) $的大小根据万有引力定律得到:

$ {F}_{ij}^{d}\left(t\right)=G\left(t\right)\frac{{M}_{i}\left(t\right)\times {M}_{j}\left(t\right)}{{R}_{ij}\left(t\right)+\varepsilon }\left({X}_{j}^{d}\right(t)-{X}_{i}^{d}(t\left)\right) $ (11)

其中:$ {R}_{ij}\left(t\right) $为粒子间的欧氏距离;$ \varepsilon $是保证分母不为0的常量;$ {X}_{i}^{d}\left(t\right) $是第$ t $次迭代时第$ i $个粒子在第d维的位置。

随着迭代次数的增加,引力常数$ G\left(t\right) $的值逐渐减小,表示为:

$ G\left(t\right)={G}_{0}{\mathrm{e}}^{-\frac{\alpha t}{T}} $ (12)

其中:$ {G}_{0} $为初始引力;$ T $为最大迭代次数;$ \alpha $为衰减系数。

粒子受其他粒子的引力产生的合力$ {F}_{i}^{d}\left(t\right) $可表示为:

$ {F}_{i}^{d}\left(t\right)=\sum\limits_{j=1, j\ne i}^{N}{\rm{ran{d}}}_{j}{F}_{ij}^{d}\left(t\right) $ (13)

$ {\alpha }_{i}^{d}\left(t\right) $为粒子$ i $受该合力作用下产生的加速度:

$ {\alpha }_{i}^{d}\left(t\right)=\frac{{F}_{i}^{d}\left(t\right)}{{M}_{i}\left(t\right)} $ (14)

下一次迭代中粒子的速度$ {V}_{i}^{d}(t+1) $、位置$ {X}_{i}^{d}(t+1) $取决于当前迭代中粒子的速度$ {V}_{i}^{d}\left(t\right) $、位置$ {X}_{i}^{d}\left(t\right) $与加速度$ {\alpha }_{i}^{d}\left(t\right) $,更新为:

$ {V}_{i}^{d}(t+1)=\mathrm{r}\mathrm{a}\mathrm{n}{\mathrm{d}}_{i}{V}_{i}^{d}\left(t\right)+{\alpha }_{i}^{d}\left(t\right) $ (15)
$ {X}_{i}^{d}(t+1)=\mathrm{r}\mathrm{a}\mathrm{n}{\mathrm{d}}_{i}{X}_{i}^{d}\left(t\right)+{V}_{i}^{d}(t+1) $ (16)

算法的最优解为反复迭代直至满足终止条件后粒子的位置。

2.2 差分进化算法

差分进化(Differential Evolution,DE)算法是一种基于种群进化的智能优化算法[23]

假设进化代数$ T $,种群规模$ {N}_{P} $,解空间维度$ D $,第$ T $代的种群个体$ {v}_{i, T}=\left({x}_{i1, T}, {x}_{i2, T}, \cdots , {x}_{iD, T}\right) $。标准DE算法步骤如下:

步骤1    初始化种群。一般采用随机初始化种群策略。

步骤2    变异操作。变异操作是DE算法的核心内容,常用的变异策略为:

$ {V}_{i, T}={x}_{i, T}+F({x}_{r1, T}-{x}_{r2, T}) $ (17)

其中:$ {V}_{i, T} $为第$ i $个变异个体;$ {x}_{i, T} $为第$ i $个父代个体;$ {x}_{r1, T} $$ {x}_{r2, T} $是父代中2个互不相同且不同于$ {x}_{i, T} $的个体;F为变异率。

步骤3    交叉操作。交叉操作能增加种群多样性,其表达式为:

$ {U}_{ij, T+1}=\left\{\begin{array}{l}{v}_{ij, T+1}, {r}_{j}\le {C}_{r}, j={j}_{\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{d}}\\ {x}_{ij, T}, \mathrm{其}\mathrm{他}\end{array}\right. $ (18)

其中:$ {U}_{ij, T+1} $为实验个体;$ {C}_{r} $为交叉率;$ {r}_{j} $为在[0, 1]区间的随机数;$ {j}_{\mathrm{r}\mathrm{a}\mathrm{n}\mathrm{d}}\in \left[\mathrm{1, 2}, \cdots , D\right] $为随机选择的一个整数。

步骤4   选择操作。选择操作通过比较父代个体和子代个体的目标函数值来选择更优的个体,其表达式为:

$ {x}_{ij, T}=\left\{\begin{array}{l}{U}_{ij, T+1}, f\left({U}_{ij, T+1}\right)\le f\left({x}_{i, T}\right)\\ {x}_{i, T}, \mathrm{其}\mathrm{他}\end{array}\right. $ (19)

其中:$ f(\cdot ) $为适应度值。

计算公式如下:

$ f\left(x\right)=\sqrt{\frac{1}{n}\sum\limits_{i=1}^{n}({y}_{i}-{\stackrel{-}{y}}_{i}{)}^{2}} $ (20)

其中:$ {y}_{i} $$ {\widehat{y}}_{i} $分别是实际结果和预测结果。

2.3 差分进化算法

DE算法的全局优化能力很强,可以利用差分信息准确地找到搜索空间的全局最优值,然而其局部优化能力相对较弱[24]。GSA的局部优化能力较强,而其全局优化能力相对较弱。因此,本文将GSA和DE算法相结合,提出结合GSA的差分进化算法(GSADE)。

GSADE算法流程如图 1所示。

Download:
图 1 GSADE算法流程 Fig. 1 Procedure of GSADE algorithm

GSADE算法的运行步骤如下:

步骤1    初始化种群粒子个数$ N $以及粒子的初始速度与位置。初始化GSADE的参数,包括衰减系数$ \alpha $、初始引力常数$ {G}_{0} $等。设置算法最大迭代次数为$ \mathrm{i}\mathrm{t}\mathrm{e}{\mathrm{r}}_{\mathrm{m}\mathrm{a}\mathrm{x}} $,当前迭代次数为$ t $

步骤2    根据式(20)计算适应度值。

步骤3    如果迭代次数$ t $为奇数,则运行步骤4;否则跳转到步骤5。

步骤4    运行GSA算法:

1)根据式(12)计算引力常数$ G $

2)对于求解最小问题,根据式(10)计算最佳和最差适应度值$ \mathrm{b}\mathrm{e}\mathrm{s}\mathrm{t}\left(t\right) $$ \mathrm{w}\mathrm{o}\mathrm{r}\mathrm{s}\mathrm{t}\left(t\right) $

3)根据式(13)计算第$ i $个粒子受到的合力$ {F}_{i}^{d}\left(t\right) $;根据式(14)计算该粒子的加速度$ {\alpha }_{i}^{d}\left(t\right) $;根据式(8)计算该粒子的惯性质量$ {M}_{i}\left(t\right) $

4)根据式(15)、式(16)更新第$ i $个粒子的速度和位置;

5)如果$ i\le N $,则返回步骤3);否则跳转到步骤6。

步骤5    运行DE算法:

1)根据式(17)生成变异向量$ {\boldsymbol{V}}_{i, T} $

2)根据式(18)生成实验个体$ {U}_{ij, T+1} $

3)如果$ \mathrm{f}\mathrm{i}{\mathrm{t}}_{i}\left({U}_{ij, T+1}\right)\le \mathrm{f}\mathrm{i}{\mathrm{t}}_{i}\left({x}_{i, T}\right) $,则运行步骤4);否则跳转到步骤1);

4)如果$ i\le N $,则返回步骤1);否则,转到步骤6。

步骤6    根据粒子的新适应度值进行参数更新。

步骤7    如果$ t\le \mathrm{i}\mathrm{t}\mathrm{e}{\mathrm{r}}_{\mathrm{m}\mathrm{a}\mathrm{x}} $,则返回步骤3;否则,转到步骤8。

步骤8    输出更新结果作为最优参数。

3 核主成分分析

主成分分析(PCA)是一种用于特征提取和降维的经典方法[25]。KPCA由SCHOLKOPF等[26]提出,是对PCA的改进,可以有效地处理非线性问题。

使用非线性映射函数$ \phi $,KPCA将非线性训练样本$ \boldsymbol{X}={\left[{X}_{1}, {X}_{2}, \cdots , {X}_{N}\right]}^{\mathrm{T}}\in {\mathbb{R}}^{n\times d} $映射到高维特征空间$ {\mathit{\Gamma}} $

$ \phi :\left\{\begin{array}{l}{\mathbb{R}}^{n\times d}\to {\mathit{\Gamma}} \\ \boldsymbol{X}\to \phi \left(\boldsymbol{X}\right)\end{array}\right. $ (21)

通过使用简单的非线性映射函数$ \phi $,输入空间中不可分割的数据在高维特征空间$ {\mathit{\Gamma}} $中变得可分离,然后利用PCA方法提取$\mathit \Gamma $中的特征,实现了非线性训练样本的特征提取。

4 基于GSA与DE优化混合核ELM的网络入侵检测模型

本文基于上述研究,提出一种新型的网络入侵检测模型——基于GSA与DE优化混合核ELM的网络入侵检测模型(KPCA-GSADE-HKELM)。该模型的具体步骤如下:

步骤1    输入数据集及KPCA-GSADE-HKELM模型的初始参数。

步骤2    使用KPCA方法对输入数据集进行降维和特征提取。

步骤3    运用预处理的训练数据集训练HKELM模型;使用GSADE算法优化HKELM的模型参数,当迭代次数达到最大值$ \mathrm{i}\mathrm{t}\mathrm{e}{\mathrm{r}}_{\mathrm{m}\mathrm{a}\mathrm{x}} $时,优化过程停止,获得最佳参数。

步骤4    使用测试数据集评估获得的最佳HKELM模型的性能。

步骤5    输出模型检测结果的评估指标。

基于KPCA-GSADE-HKELM模型的网络入侵检测流程如图 2所示。

Download:
图 2 基于KPCA-GSADE-HKELM模型的网络入侵检测流程 Fig. 2 Network intrusion detection procedure based on KPCA-GSADE-HKELM model
5 仿真实验 5.1 实验数据

本文在实验中选择KDD99数据集进行仿真实验。KDD99数据集中共包含23种攻击类型,可以分为四大攻击类别:DoS,PRB,U2R和R2L[27]。由于利用KDD99完整的数据集在进行机器学习算法训练时很复杂,因此大多数研究人员都使用了KDD99数据集10%子集作为实验数据。表 1给出了数据集的详细信息,其中训练数据集和两个测试数据集分别表示为T0、T1和T2。训练数据集T0与测试数据集T1一起用来验证GSADE-HKELM和KPCA-GSADE-HKELM模型的有效性。此外,本文还利用测试数据集T2进行KPCA-GSADE-HKELM模型与其他研究模型的性能比较。

下载CSV 表 1 KDD99数据集详细信息 Table 1 Details of KDD99 dataset
5.2 实验结果评价指标

为了评估KPCA-GSADE-HKELM算法的性能,本文利用python进行仿真实验分析,采用精准率(Precision)、召回率(Recall)和F-score值作为每类攻击的评估指标;采用准确率(Accuracy,Acc)、平均准确率(Mean accuracy,MAcc)、平均F-score(Mean F-score,MF)和假正例率(False Normal Rate,FNR)作为数据集整体的评估指标。表 2为评估指标的详细解释。在数据集中的网络连接可以分为正常(标记为0)、攻击(标记为1,2,…,c-1)两大类,其中c表示网络连接的类别数。

下载CSV 表 2 评估指标详细解释 Table 2 Detailed explanation of evaluation indicators
5.3 实验结果分析对比

在实验中,本文利用训练数据集T0和测试数据集T1进行GSADE-HKELM与DE-HKELM、GSA-HKELM模型的性能对比,以及KPCA-GSADE-HKELM模型与GSADE-HKELM模型的性能对比;最后在数据集T2上,将KPCA-GSADE-HKELM方法与其他检测方法分别进行入侵检测。

5.3.1 DE_KELM、GSA_KELM与GSADE-HKELM模型的对比

由于在对HKELM进行训练时,通过人工经验很难快速、准确地找到最佳参数值。为此,本文引入了群智能优化算法GSADE,以自适应的方式获得最佳参数值。同时,为验证其效果,将DE-KELM、GSA-ELM与GSADE-HKELM模型进行比较。在实验中,DE-HKELM与GSADE-HKELM中DE算法的参数设置保持一致,其中种群设置大小$ {N}_{\mathrm{D}\mathrm{E}} $设置为20,最大迭代次数$ \mathrm{i}\mathrm{t}\mathrm{e}{\mathrm{r}}_{\mathrm{m}\mathrm{a}\mathrm{x}} $设置为100;式(17)中参数F设置为0.8,式(18)中交叉率$ {C}_{r} $设置为0.2;GSA-KELM与GSADE-HKELM中GSA算法的参数设置保持一致,其中种群大小$ {N}_{\mathrm{G}\mathrm{S}\mathrm{A}} $设置为20,最大迭代次数$ \mathrm{i}\mathrm{t}\mathrm{e}{\mathrm{r}}_{\mathrm{m}\mathrm{a}\mathrm{x}} $设置为100,式(11)中的常数$ \varepsilon $设置为2–40,式(12)中的初始重力常数$ {G}_{0} $设置为250,衰减系数$ \alpha $设置为15。

表 3图 3给出了由DE-HKELM、GSA-HKELM和GSADE-HKELM模型获得的每个类别详细的F-score值。从中可以看出,通过GSADE-HKELM获得的每个类别的F-score值均高于其他两种方法,尤其是在U2R类数据上。而且,由DE-HKELM获得的平均F-score值为92.23%,GSA-HKELM的平均F-score值为93.21%,GSADE-HKELM的平均F-score值为94.44%。与DE-HKELM和GSA-HKELM相比,GSADE-HKELM的平均F-score值分别提高了约2.11个百分点和1.23个百分点。

下载CSV 表 3 DE-HKELM、GSA-HKELM和GSADE-HKELM在T1上获得的每个类别数据的F-score值 Table 3 The F-score value of each category data obtained on T1 by DE-HKELM, GSA-HKELM and GSADE-HKELM  
Download:
图 3 DE-HKELM、GSA-HKELM和GSADE-HKELM的F-score值和平均F-score值 Fig. 3 F-score value and average F-score value of DE-HKELM, GSA-HKELM and GSADE-HKELM

表 4给出了DE-HKELM、GSA-HKELM和GSADE-HKELM 3种模型在数据集T1上各种总体评估指标值。GSADE-HKELM的Acc、MAcc、MF均明显高于DE-HKELM和GSA-HKELM,而GSADE-HKELM的FNR值明显低于其他两种方法。结果表明,混合优化算法GSADE在确定最佳参数以提高HKELM性能方面明显优于单DE和GSA优化HKELM模型,将GSA与DE算法结合起来进行HKELM模型的优化时充分发挥了两个算法的优势,克服了两者自身存在的缺陷。

下载CSV 表 4 DE-HKELM、GSA-HKELM和GSADE-HKELM在T1上的各评估指标 Table 4 Various evaluation indicators of DE-HKELM, GSA-HKELM and GSADE-HKELM on T1  
5.3.2 GSADE-HKELM与KPCA-GSADE-HKELM的对比

KPCA算法的引入可以减少不重要的特征对分类结果和计算效率的影响。表 5显示了GSADE-HKELM和KPCA-GSADE-HKELM在数据集T1的各种评估指标值。在表 5中,KPCA-GSADE-HKELM的Acc、MAcc、MF值分别为97.11%、96.08%和94.88%,分别高于GSADE-HKELM的97.01%、96%和94.58%。KPCA-GSADE-HKELM的FNR为4.15%,与GSADE-HKELM的4.54%相比,降低了8.59个百分点。此外,GSADE-HKELM的运行时间为0.037 391 s,KPCA-GSADE-HKELM的运行时间为0.016 379 s,与GSADEHKELM相比,KPCA-GSADE-HKELM在时间上降低了56.19%,这表明本文所提出的KPCA-GSADE-HKELM方法具有更高的计算效率,利用KPCA首先进行数据集的降维,然后通过GSADE-HKELM方法进行异常检测时具有更好的检测效果和更高的检测效率。

下载CSV 表 5 GSADE-HKELM和KPCA-GSADE-HKELM在数据集T1上的评估指标值 Table 5 Various evaluation index values of GSADE-HKELM and KPCA-GSADE-HKELM on T1
5.3.3 KPCA-GSADE-HKELM与其他模型的对比

对于本文提出的KPCA-GSADE-HKELM模型,下面在测试数据集T2上将其与KDDwinner[28]、CSVAC[29]、CPSO-SVM[30]、Dendron[3]分别进行测试,结果如表 6所示。从表 6可以看出,与其他模型相比,KPCA-GSADE-HKELM模型在DoS和U2R攻击数据上具有更高的分类精度。KPCA-GSADE-HKELM模型检测结果的评估指标Acc、MAcc和MF的值分别为98.53%、94.91%和86.74%。KPCA-GSADE-HKELM、KDDwinner、CSVAC、CPSO-SVM、Dendron模型的MF值分别为86.74%、59.70%、66.53%、73.42%、84.12%;与KDDwinner、CSVAC、CPSO-SVM和Dendron相比,KPCA-GSADE-HKELM模型检测结果的MF值分别提高了约27.04、20.21、13.32和2.62个百分点。这充分说明KPCA-GSADE-HKELM模型在KDD99数据集上具有更好的性能。

下载CSV 表 6 KPCA-GSADE-HKELM与其他模型在T2上的检测结果 Table 6 Test results of KPCA-GSADE-HKELM and other models on T2  
6 结束语

本文提出一种基于GSA与DE优化混合核ELM的网络入侵检测模型KPCA-GSADE-HKELM。该模型利用能够反映网络流量模式的KDD99数据集进行模型评估,并将两个核函数相结合构建新的混合核函数HKELM模型,以提高KELM的通用性和学习能力。实验结果表明,与KDDwinner、CSVAC、CPSO-SVM、Dendron等模型相比,KPCA-GSADE-HKELM模型具有更好的检测性能和更高的检测效率。下一步通过将特征嵌入技术与深度学习技术相结合进行网络异常入侵检测[31],并利用KDD99数据集及网络流量数据集UNSW-NB15进行实验,进一步提高网络入侵攻击的检测率。

参考文献
[1]
熊钢, 葛雨玮, 褚衍杰, 等. 基于跨域协同的网络空间威胁预警模式[J]. 网络与信息安全学报, 2020, 6(6): 88-96.
XIONG G, GE Y W, CHU Y J, et al. Model of cyberspace threat earlywarningbased on cross-domain and collaboration[J]. Chinese Journal of Network and Information Security, 2020, 6(6): 88-96. (in Chinese)
[2]
YAHALOM R, STEREN A, NAMERI Y, et al. Improving the effectiveness of intrusion detection systems for hierarchical data[J]. Knowledge-Based Systems, 2019, 168: 59-69. DOI:10.1016/j.knosys.2019.01.002
[3]
PAPAMARTZIVANOS D, GÓMEZ MÁRMOL F, KAMBOURAKIS G. Dendron: genetic trees driven rule induction for network intrusion detection systems[J]. Future Generation Computer Systems, 2018, 79: 558-574. DOI:10.1016/j.future.2017.09.056
[4]
TSANGC H, KWONG S, WANG H L. Genetic-fuzzy rule mining approach and evaluation of feature selection techniques for anomaly intrusion detection[J]. Pattern Recognition, 2007, 40(9): 2373-2391. DOI:10.1016/j.patcog.2006.12.009
[5]
SALO F, NASSIF A B, ESSEX A. Dimensionality reduction with IG-PCA and ensemble classifier for network intrusion detection[J]. Computer Networks, 2019, 148: 164-175. DOI:10.1016/j.comnet.2018.11.010
[6]
TSAI C F, LIN C Y. A triangle area based nearest neighbors approach to intrusion detection[J]. Pattern Recognition, 2010, 43(1): 222-229. DOI:10.1016/j.patcog.2009.05.017
[7]
LI Y, GUO L. An active learning based TCM-KNN algorithm for supervised network intrusion detection[J]. Computers & Security, 2007, 26(7/8): 459-467.
[8]
XIANG C, YONG P C, MENG L S. Design of multiple-level hybrid classifier for intrusion detection system using Bayesian clustering and decision trees[J]. Pattern Recognition Letters, 2008, 29(7): 918-924. DOI:10.1016/j.patrec.2008.01.008
[9]
CHAN G Y, LEE C S, HENG S H. Policy-enhanced ANFIS model to counter SOAP-related attacks[J]. Knowledge-Based Systems, 2012, 35: 64-76. DOI:10.1016/j.knosys.2012.04.013
[10]
AL-YASEEN W L, OTHMAN Z A, NAZRI M Z A. Real-time multi-agent system for an adaptive intrusion detection system[J]. Pattern Recognition Letters, 2017, 85: 56-64. DOI:10.1016/j.patrec.2016.11.018
[11]
TAO P Y, SUN Z, SUN Z X. An improved intrusion detection algorithm based on GA and SVM[J]. IEEE Access, 2018, 6: 13624-13631. DOI:10.1109/ACCESS.2018.2810198
[12]
ABUROMMAN A A, IBNE REAZ M B. A novel SVM-kNN-PSO ensemble method for intrusion detection system[J]. Applied Soft Computing, 2016, 38: 360-372. DOI:10.1016/j.asoc.2015.10.011
[13]
ABUROMMAN A A, IBNE REAZ M B. A novel weighted support vector machines multiclass classifier based on differential evolution for intrusion detection systems[J]. Information Sciences, 2017, 414: 225-246. DOI:10.1016/j.ins.2017.06.007
[14]
WANG C R, XU R F, LEE S J, et al. Network intrusion detection using equality constrained-optimization-based extreme learning machines[J]. Knowledge-Based Systems, 2018, 147: 68-80. DOI:10.1016/j.knosys.2018.02.015
[15]
KU J H, ZHENG B, YUN D W. Intrusion detection based on self-adaptive differential evolutionary extreme learning machine[C]//Proceedings of 2017 International Conference on Computer Network, Electronic and Automation. Xi'an, China: [s. n. ], 2017: 94-100.
[16]
LIU X D, CHEN Y S, YANG J L. A novel fault diagnosis method for rolling bearing based on EEMD-PE and multiclass relevance vector machine[C]//Proceedings of 2017 IEEE International Instrumentation and Measurement Technology Conference. Washington D. C., USA: IEEE Press, 2017: 1-6.
[17]
QIU X, TAN K C, XU J X. Multiple exponential recombination for differential evolution[J]. IEEE Transactions on Cybernetics, 2017, 47(4): 995-1006. DOI:10.1109/TCYB.2016.2536167
[18]
HUANG G B, ZHU Q Y, SIEW C K. Extreme learning machine: a new learning scheme of feedforward neural networks[C]//Proceedings of 2004 IEEE International Joint Conference on Neural Networks. Washington D. C., USA: IEEE Press, 2004: 985-990.
[19]
HUANG G B, ZHOU H M, DING X J, et al. Extreme learning machine for regression and multiclass classification[J]. IEEE Transactions on Systems, Man, and Cybernetics Part B, Cybernetics: a Publication of the IEEE Systems, Man, and Cybernetics Society, 2012, 42(2): 513-529. DOI:10.1109/TSMCB.2011.2168604
[20]
SMITS G F, JORDAAN E M. Improved SVM regression using mixtures of kernels[C]//Proceedings of 2002 International Joint Conference on Neural Networks. Washington D. C., USA: IEEE Press, 2002: 2785-2790.
[21]
TIAN Z D, LI S J, WANG Y H, et al. Wind power prediction method based on hybrid kernel function support vector machine[J]. Wind Engineering, 2018, 42(3): 252-264. DOI:10.1177/0309524X17737337
[22]
蒋鹏程, 汤占军, 刘萍兰. 基于引力搜索算法的局部遮阴下光伏系统最大功率点跟踪算法研究[J]. 化工自动化及仪表, 2020, 47(3): 226-230, 283.
JIANG P C, TANG Z J, LIU P L. Simulation research of photovoltaic MPPT based on GSAalgorithm[J]. Control and Instruments in Chemical Industry, 2020, 47(3): 226-230, 283. (in Chinese) DOI:10.3969/j.issn.1000-3932.2020.03.007
[23]
张涛, 朱瑞金, 扎西顿珠. 基于改进骨干差分进化算法优化LSSVM的短期光伏发电功率预测[J]. 热力发电, 2021, 50(5): 102-107.
ZHANG T, ZHU R J, ZHAXIDUNZHU. Short-term photovoltaic power prediction based on IBBDE-LSSVM[J]. Thermal Power Generation, 2021, 50(5): 102-107. (in Chinese)
[24]
SEYEDMAHMOUDIAN M, RAHMANI R, MEKHILEF S, et al. Simulation and hardware implementation of new maximum power point tracking technique for partially shaded PV system using hybrid DEPSO method[J]. IEEE Transactions on Sustainable Energy, 2015, 6(3): 850-862. DOI:10.1109/TSTE.2015.2413359
[25]
张泽龙, 钱勇, 刘华兵. 基于主成分分析与遗传优化BP神经网络的风电场短期功率预测研究[J]. 宁夏电力, 2019(6): 1-6, 34.
ZHANG Z L, QIAN Y, LIU H B. Research on short-term power forecasting of wind farm based on principal component analysis and genetic optimization of BP neural network[J]. Ningxia Electric Power, 2019(6): 1-6, 34. (in Chinese) DOI:10.3969/j.issn.1672-3643.2019.06.001
[26]
李丽敏, 程少康, 温宗周, 等. 基于改进KPCA与混合核函数LSSVR的泥石流预测[J]. 信息与控制, 2019, 48(5): 536-544.
LI L M, CHENG S K, WEN Z Z, et al. A debris flow prediction model based on the improved KPCA and mixed kernel function LSSVR[J]. Information and Control, 2019, 48(5): 536-544. (in Chinese)
[27]
LEE W K, STOLFO S J. A framework for constructing features and models for intrusion detection systems[J]. ACM Transactions on Information and System Security, 2000, 3(4): 227-261. DOI:10.1145/382912.382914
[28]
ELKAN C. Results of the KDD'99 classifier learning[J]. ACM SIGKDD Explorations Newsletter, 2000, 1(2): 63-64. DOI:10.1145/846183.846199
[29]
FENG W Y, ZHANG Q L, HU G Z, et al. Mining network data for intrusion detection through combining SVMs with ant colony networks[J]. Future Generation Computer Systems, 2014, 37: 127-140. DOI:10.1016/j.future.2013.06.027
[30]
KUANG F J, ZHANG S Y, JIN Z, et al. A novel SVM by combining kernel principal component analysis and improved chaotic particle swarm optimization for intrusion detection[J]. Soft Computing, 2015, 19(5): 1187-1199. DOI:10.1007/s00500-014-1332-7
[31]
生龙, 马建飞, 杨瑞欣, 等. 基于特征交换的CNN图像分类算法研究[J]. 计算机工程, 2020, 46(9): 268-273.
SHENG L, MA J F, YANG R X, et al. Research on CNN image classification algorithm based on feature exchange[J]. Computer Engineering, 2020, 46(9): 268-273. (in Chinese)