谭璨 梁祖红
摘要:为了解决基于传统机器学习入侵检测算法准确率较低和泛化能力较弱的现象,提出了一种基于BiGRU结合Batch Normalization机制、DropOut算法的网络入侵检测方法。该方法采用BiGRU网络提取数据特征,利用Batch Normalization机制和DropOut算法的优点对数据进行归一化,并对神经元进行随机失活,增强模型泛化能力,最后使用softmax对结果进行分类。在公开数据集NSL-KDD上的结果显示,与RNN及CNN入侵检测方法相比,在二分类检测与五分类检测两个实验中准确率和召回率更高。
关键词:入侵检测;双向门控循环神经网络;深度学习;数据特征
中图分类号:TP393 文献标识码:A
文章编号:1009-3044(2021)26-0146-05
开放科学(资源服务)标识码(OSID):
Intrusion Detection Model Based on Bigru
TAN Can, LIANG Zu-hong
(Computer College of Guangdong University of Technology, Guangzhou 510006,China)
Abstract: In order to solve the problem of low accuracy and weak generalization of traditional intrusion detection algorithm based on machine learning, a network intrusion detection method based on bigru, batch normalization mechanism and dropout algorithm is proposed. This method uses bigru network to extract data features, uses the advantages of batch normalization mechanism and dropout algorithm to normalize the data, and randomly inactivates the neurons to enhance the generalization ability of the model. Finally, softmax is used to classify the results. The results on the public data set nsl-kdd show that, compared with RNN and CNN intrusion detection methods, the accuracy and recall rate are higher in the two classification detection and five classification detection experiments.
Key words:intrusion detection;BiGRU;deep learning;characteristics of data
随着互联网技术高速发展以及互联网与人类生活融合的不断加深,网络在给人们带来各种便利的同时,也使得人们所面临的网络安全问题也越来越多样。如何实时有效地检测出各种网络攻击,是目前必须面对的问题。入侵检测系统(IDS)作为检测异常流量的重要方式,它理所当然地成为安全领域的重点研究对象。
关于入侵检测这一热点话题,国内外研究者对其都做了许多研究。研究人员总结了现有的传统入侵检测方法的优势与局限性,同时对机器学习以及深度学习在入侵检测领域的研究趋势进行了总结[1]。越来越多研究人员将机器学习算法应用于入侵检测领域中。如朴素贝叶斯,决策树,随机森林[2-3],SVM[4-5]等进行入侵检测研究。Sarker I H[6] 提出了一种基于入侵检测树(intrustree)机器学习的安全模型,该模型首先考虑了安全特征的重要性排序,然后根据选择的重要特征构建了一个基于树的广义入侵检测模型。它不仅能有效地预测未知测试用例,而且能通过降低特征维数来降低模型的计算复杂度。以上研究的核心都是基于传统机器学习方法,虽然样本分类能力都有一定提高,但是因为传统机器学习算法对复杂函数学习能力较弱,因此,依然存在准确率较低及泛化能力有限的问题。
本文设计了一种基于BiGRU的入侵检测模型,首先通过BiGRU对数据特征流进行过滤与保留,使用Batch Normalization(BN)算法和DropOut算法对网络层中的数据进行归一化以及对神经元进行随机失活,以缓解模型训练中梯度消失和梯度爆炸现象,加快神经网络收敛同时增强模型泛化能力。然后使用NSL-KDD数据集训练与评估模型性能。最后将该基于BiGRU的入侵检测模型与CNN,RNN以及多种机器学习算法进行对比。实验结果表明,该方法准确率更高,泛化能力更好。
1 相关工作
网络入侵检测的本质就是发现未经许可的、恶意的、有风险的网络行为,機器学习算法曾被许多研究者认为适用于入侵检测领域,同时也在入侵检测中被广泛应用。如Landress A D[7]等人提出了一种降低无监督机器学习入侵检测误报率的混合方法,使该方法采用简单的K-means算法进行数据聚类,采用J48决策树算法进行特征选择,利用KDD-cup99数据集进行自组织映射,有效地减少了误报。Al-Yaseen W L[8]等人提出一种多等级混合入侵的检测模型,采用支持向量机与极端学习机融合,从而提高对已知和未知攻击的检测准确率,还提出了一种改进的K-means算法来构建高质量的训练数据集,该数据集有助于提高分类器的性能,从而可以降低模型的误报率以及提高其准确率。但上述工作在识别复杂的分类上不够灵活,缺乏约束,容易过拟合,泛化能力有限。