1. 引言
随着互联网的迅速发展,网络安全问题日益凸显,网络攻击的复杂性和频率也在逐年增加。为了有效应对网络威胁,入侵检测系统(intrusion detection system, ids)成为保护信息系统安全的重要工具之一。入侵检测系统通过分析网络流量、系统日志等数据,检测并识别潜在的攻击行为,能够为网络安全防御提供及时预警。然而,现实中的网络攻击数据往往存在样本不平衡的问题,即正常流量远多于攻击流量。这种不平衡的数据分布使得传统的机器学习算法在检测网络攻击时表现不佳,容易偏向于预测为正常流量,从而降低了模型对攻击行为的检测准确率。
为了解决这一问题,数据采样方法如smote (synthetic minority over-sampling technique)被广泛应用于处理不平衡数据,通过生成少数类的合成样本来平衡数据分布,改善分类器的性能。与此同时,模型优化也是提升检测精度的重要途径之一,随机森林(random forest)作为一种强大的集成学习算法,因其在分类任务中具有较高的鲁棒性和泛化能力,成为网络入侵检测中的常用模型。通过对随机森林模型进行参数优化,可以进一步提高其在不平衡数据集上的表现。
本研究基于ids2017数据集,针对网络攻击检测中的不平衡数据问题,结合smote技术和随机森林模型,进行模型优化和性能评估。通过引入smote解决数据不平衡问题,并利用随机搜索(randomized search)对随机森林模型的超参数进行优化,提升模型在攻击检测中的准确性和泛化能力。实验结果表明,该方法能够有效提高模型对网络攻击的识别率,特别是在少数类攻击行为的检测方面表现出色。
2. 相关工作
2.1. 入侵检测系统(ids)研究
随着互联网技术的快速发展,网络安全问题日益成为公众关注的焦点。网络入侵检测系统(ids)作为防范网络攻击的有效手段,其研究与应用也在不断深化。近年来,国内学者在基于信息熵、深度学习等技术的入侵检测系统设计方面取得了一系列进展。例如,张婷婷(2024)提出了一种基于信息熵的网络入侵检测系统设计方法,通过实验证明该系统在提高检测效率与降低误报率方面表现出色[1]。谭书香(2024)则探讨了基于深度学习的疾控中心网络入侵检测系统,详细介绍了搭建深度学习识别网络风险系统的方法,并分析了入侵检测效果[2]。张杭生等人(2024)则从博弈论的角度出发,综述了基于博弈论的入侵检测与响应优化问题,讨论了现有凯发娱乐官网的解决方案的局限性及未来研究方向[3]。徐影与曲丹秋[4]提出了一种基于决策树分类算法的计算机网络入侵检测系统设计方法,该方法不仅提高了检测精度,还显著增强了系统的实时检测能力,为网络安全防护提供了有效支持。
国外研究者同样在网络入侵检测系统研究中取得了显著进展。例如,alsaffar等人提出了一种基于混合特征选择和堆叠集成学习的ids模型,以提高应对冗余、不完整和无关特征时的系统性能[5];bhatt与indra基于生成对抗网络提出了一种新型ids检测方法,提升了系统对新型网络威胁的响应能力[6]。国外的这些研究成果表明,随着智能化技术的发展,ids的研究方向正逐步向更为自动化、智能化的特征提取与处理方法演进,为未来网络安全防护的创新提供了新思路。此外,yao等人[7]的研究展示了使用超声成像数据预测癌症治疗效果的深度学习方法,其多模态特征处理策略在其他领域也具有启发性,尤其是在网络入侵检测中提升了对复杂数据的处理能力。
在算法优化方面,alshinwan等人[8]提出了一种基于改进草原权数优化与差分进化的算法,并将其应用于工程设计问题和网络入侵检测系统中,实验表明该方法显著增强了系统在复杂场景下的准确性与鲁棒性。对于物联网安全中的入侵检测,hizal等人[9]开发了一种基于深度学习的系统,用于检测ddos攻击。其研究表明深度学习模型在高并发环境下具备良好的入侵识别能力,提升了网络安全防护效果。
在入侵检测系统的数据融合方面,dinca等人[10]研究了多模态数据的决策融合系统,这种技术在识别复杂入侵行为时表现优异,进一步提高了系统的检测准确性与可靠性。在机器学习的医疗应用上,jauk等人[11]验证了一种基于机器学习的术后谵妄预测模型。该研究为入侵检测系统中的异常行为预测提供了参考,尤其是在大规模数据集上的鲁棒性表现尤为突出。
alkharisi等人[12]探讨了纳米材料对混凝土辐射屏蔽性能的预测模型。尽管该研究聚焦于建筑材料,其模型中的混合效应预测方法对入侵检测领域中的多重威胁评估具有一定借鉴意义。simpson等人[13]开发了一种基于机器学习的方法,用于预测脊柱手术后持续性阿片类药物使用的高风险患者。类似的高风险人群识别策略在网络入侵检测中具有潜在应用,尤其是在识别持续性或重复性入侵行为方面。
最后,aqil等人[14]提出了一种利用红外光谱技术进行早期真菌感染检测的快速识别方法。这种基于光谱数据的识别方法为入侵检测系统中异常流量的早期检测提供了新的思路。
2.2. 随机森林在ids中的应用
入侵检测系统(ids)作为保护网络安全的关键工具,利用机器学习算法来提高检测效率和准确率,已成为近年来研究的热点。在众多机器学习算法中,随机森林凭借其高效的特征选择能力和良好的分类性能,被广泛应用于入侵检测领域。
随机森林算法是一种基于集成学习的模型,通过构建多个决策树并将其组合为一个强学习器来进行分类决策。其主要优点在于能处理高维数据并且具有良好的抗噪性和鲁棒性。
随机森林算法在入侵检测领域的应用逐渐扩展,特别是在气象网络中,赵忠凯等人[15]研究了随机森林在气象网络入侵检测中的表现。他们的研究表明,随机森林通过特征选择和数据预处理技术,能够有效提升气象网络在检测异常流量和潜在攻击中的表现。该研究采用了数据归一化和样本不平衡重采样等技术,显著提高了入侵检测的准确性与鲁棒性。研究结果不仅为气象网络的安全防护提供了重要的凯发娱乐官网的技术支持,也为其他类似领域的网络安全检测工作提供了借鉴。
随机森林算法在机器学习中广泛应用于各种分类任务,尤其是在网络入侵检测系统(ids)中,因其强大的特征选择能力和良好的分类性能而成为研究热点。catarina等人[16]研究了随机森林分类的可视化方法,为理解和解释随机森林模型的决策过程提供了重要的支持。通过对随机森林的可视化,研究者能够深入了解每一棵决策树的分裂点以及特征的重要性,从而优化模型的特征选择和性能。该研究表明,随机森林不仅在分类准确性方面表现优异,还通过可视化技术提升了模型的透明度与可解释性,这对于网络入侵检测系统中的应用具有重要意义。
图1展示了随机森林模型的基本结构。随机森林由多个决策树组成,每棵树通过随机抽样的方式构建,并独立地对输入数据进行分类或回归。在最终预测阶段,所有决策树的输出将通过投票或平均的方式汇聚,形成随机森林的最终结果。该结构的优势在于通过集成学习的方法显著提高了模型的鲁棒性和准确性,尤其是在处理复杂数据集时。
figure 1. simple structure diagram of random forest model
图1. 随机森林模型结构简图
3. 方法论
3.1. 数据集以及标签化处理
研究采用了ids2017数据集,该数据集广泛应用于网络流量分析和攻击检测领域,包含多种网络攻击类型如拒绝服务攻击(dos)、暴力破解、渗透攻击以及网络攻击等。首先,通过加载多个不同时间段和攻击类型的csv文件,合并为统一的dataframe进行数据分析。针对原始数据集中的标签不一致性,进行了统一处理,例如将各种web攻击统一为“web attack”,将不同的dos攻击归类为“dos”,以简化标签类别。
3.2. 数据预处理特征工程
在数据预处理过程中,首先删除了无用的特征,接着处理了缺失值和异常值,将inf和nan值替换为零。为提高计算效率,本研究对数据集进行了随机抽样,保留10%的数据作为实验集。随后,通过标签编码(label encoding)将攻击类型转换为数值标签,并进行了特征选择和标准化处理,确保各特征之间的尺度一致性。
特征标准化的公式为:
(1)
其中x是原始特征值。μ是特征的均值(mean),表示数据的中心位置。σ是特征的标准差(standard deviation),表示数据的离散程度。
通过上述公式,将特征值进行标准化,使其均值为0,标准差为1。这种处理使得所有特征在同一尺度下进行比较,避免了由于特征值范围差异导致的模型性能下降。标准化不仅使特征值在同一尺度下进行比较,避免特征值范围的差异对模型造成负面影响,还能够加速模型的收敛速度,提高模型的稳定性。
3.3. 样本不平衡处理:smote技术
figure 2. schematic diagram of the smote principle of operation
图2. smote工作原理的示意图
图2展示了smote (合成少数类过采样技术)的工作原理。在左侧的“imbalanced dataset”中,多数类数据点(绿色圆点)和少数类数据点(红色三角形)分布不均。中间部分表示smote过程,其中生成了新的合成少数类数据点(蓝色三角形),以扩充少数类样本的数量。右侧展示了经过smote处理后的“smote dataset”,此时数据集中的类分布更加平衡。这一过程有助于提高模型对少数类攻击的检测能力。
图3详细描述了smote算法的实施过程。在开始时,检查数据集是否存在类别不平衡。如果检测到类别不平衡,则随机选择少数类样本并找到其最近邻样本。然后,通过插值生成合成样本,最终将这些合成样本添加到原始数据集中,形成平衡后的数据集。该流程框图帮助理解smote算法的工作原理及其各个步骤之间的关系。
ids数据集中存在较为严重的类别不平衡问题,尤其是少数类攻击样本较少。为了解决这一问题,本研究采用了smote技术,通过在特征空间中生成少数类合成样本,扩充少数类样本数量,平衡类别分布。这一过程通过采样来增强模型对少数类攻击的检测能力。并且引入了onehotencoder对分类特征进行编码。通过将分类变量转换为二进制特征,避免了分类数据之间的无序排序问题,使模型能够正确处理分类变量。
figure 3. smote algorithm flow chart
图3. smote算法流程图
3.4. 模型训练与超参数优化
在模型训练中,使用了随机森林分类器(random forest classifier),它通过构建多棵决策树来提升模型的准确性和鲁棒性。为提高模型的性能,本研究使用了随机搜索(randomized search)对随机森林的超参数进行调优,优化的参数包括树的数量(n estimators)、最大深度(max depth)、最小样本分裂数(min samples split)以及最小叶子节点样本数(min samples leaf)。通过交叉验证(cross-validation),选取最优的超参数组合,以获得最佳分类效果。
相比于传统的gridsearchcv方法,randomizedsearchcv通过在给定参数空间中随机采样,显著减少了搜索时间,尤其适用于大规模数据集。此外,设置n jobs = −1实现并行化处理,进一步提升了训练效率。
3.5. 模型评估
在模型评估过程中,本研究使用混淆矩阵、分类报告、准确率等指标来全面评估模型性能,特别是针对少数类的检测准确率。通过与未经过采样处理的模型结果进行对比,验证了smote和超参数调优对模型整体性能的提升作用。最终,实验结果表明,使用smote技术优化后的模型在处理不平衡数据集方面表现更加优越。
对randomizedsearchcv优化后的模型进行重新训练,并使用accuracy score、confusion matrix和classification report等评估指标对模型性能进行了全面评估。这些指标不仅考虑了整体的准确率,还详细分析了模型在不同类别上的精度、召回率和f1值。
4. 实验结果
本研究提出了基于smote (合成少数类过采样技术)和随机森林的网络攻击检测优化模型,以解决网络攻击数据集中类别不平衡的问题,并对模型进行了实验验证。
4.1. 数据集
figure 4. network attack type distribution map
图4. 网络攻击类型分布图
本研究采用了ids2017数据集,该数据集包含多种类型的网络流量和攻击行为。首先,通过读取数据集中的多个csv文件,将其合并为一个data frame进行分析。数据集中包括如dos攻击、暴力破解、渗透攻击等多种类别的网络攻击。实验首先通过数据预处理和特征工程,提取并标准化了网络流量特征。针对不平衡的类别分布,使用smote技术对少数类样本进行扩充,保证了模型的训练集具有更均衡的样本分布。然后使用随机森林模型对网络攻击进行分类,并通过随机搜索优化了模型的超参数。
图4展示了不同网络攻击类型在数据集中的实例数量分布。横轴表示实例数量,纵轴列出了各个攻击类型,从图中可以明显看出,“benign”类别的实例数量远高于其他攻击类型,表明正常流量占主导地位。同时,其他攻击类型如“dos”和“portscan”也表现出相对较高的实例数量,而“web attack”和“bot”则显示出显著较低的实例数量。
4.2. 结果分析
figure 5. confusion matrix
图5. 混淆矩阵
figure 6. classification report
图6. 分类报告
本次实验使用了七个类别的网络攻击数据集,模型的最终评估结果如图5所示。混淆矩阵展示了模型在各类别上的预测表现,显示了每个真实标签与预测标签的匹配情况。大部分的正常流量和攻击流量被准确分类,如正常流量和dos攻击都具有较高的准确率,而对于样本较少的类别如brute force攻击和bot攻击,尽管召回率较高,但精度略低,尤其是brute force攻击的精度仅为0.18。见图6,分类报告进一步展示了各类别的precision、recall和f1-score值。大多数类别的f1-score接近1.0,表明模型在这些类别上具有优异的分类效果。综合来看,模型的总体准确率为99.55%,表现出较高的检测能力。
4.3. 算法对比结果分析
见表1,展示了改良后的随机森林方法、神经网络及原始随机森林模型在网络攻击检测任务中的性能对比。改良后的随机森林方法在准确率、f1值、召回率和精度方面均优于其他模型,尤其在处理不平衡数据时表现更为出色,证明其优化策略能够显著提升检测效果。
table 1. performance comparison of different models in network attack detection
表1. 不同模型在网络攻击检测中的性能对比
模型 |
准确率 |
f1 |
召回率 |
精度 |
本方法 |
0.99 |
0.89 |
0.97 |
0.88 |
神经网络 |
0.98 |
0.76 |
0.95 |
0.71 |
随机森林 |
0.86 |
0.82 |
0.86 |
0.86 |
改良后的随机森林方法在准确率、f1值、召回率和精度方面均优于神经网络,表现出更高的检测效果,特别是在精度和f1值上具有显著优势。这表明随机森林方法在处理不平衡数据时能够更有效地平衡检测准确性和鲁棒性。
5. 结论
本研究针对网络攻击检测中数据类别不平衡的问题,提出了一种基于smote和随机森林的改进方法。通过对ids2017数据集进行预处理、特征工程和样本平衡处理,解决了少数类样本不足的问题。通过smote技术生成合成少数类样本,并使用随机搜索优化随机森林的超参数,显著提升了模型在少数类攻击检测上的性能。实验结果表明,改进后的模型在检测少数类网络攻击时表现优异,整体准确率、精度、召回率和f1分数均有所提升,验证了本方法在处理不平衡数据集中的有效性。未来可以进一步优化模型,以应对更复杂的网络攻击场景。
notes
*通讯作者。