英语原文共 9 页,剩余内容已隐藏,支付完成后下载完整资料
一种基于遗传算法和支持向量机的入侵混合方法检测系统
B.M.Aslahi-Shahri·R.Rahmani·M.Chizari·A.Maralani·
M.Eslami·M.J.Golkar·A.Ebrahimi
摘要:本文提出了支持向量机与遗传算法(GA)的混合方法,并对其在入侵检测中的实现进行了说明。该混合算法将特征数从45个减少到10个。利用遗传算法将特征分为三个优先级:第一优先级为最高优先级,第三优先级为最低优先级。特征分布的方式是将4个特征置于第一优先级,4个特征置于第二优先级,2个特征置于第三优先级。结果表明,本文提出的混合算法能够达到0.973的准确值,而误报值为0.017。
- 引言
互联网的普及是因为它的发展速度非常快,特别是当用户期望一个安全的通信网络时,特别是当敏感或机密数据涉及时,它就成为一种通信工具。目前,入侵检测系统(IDS)的研究非常集中,它与网络服务应用程序的安全性有着密切的联系[1-5]。应该指出的是,很难区分攻击和典型的网络访问。为了解决这个问题,已经扩展了几种机器学习方法,包括模糊逻辑[6]、k-nearest[7]、支持向量机(SVM)[8]、人工神经网络(ANN)[9]、人工免疫系统(AIM)[10]和遗传算法(GA)[11]。人工智能技术被证明能够解决不同工程和科学领域的非线性和非凸问题[12-18]。通常,一个IDS处理的数据负载相当大,其中充满了过载和明显的特性,这会导致重新培训和更多的预测时间。
IDS是防御系统的一个组成部分,用于识别计算机系统中发生的异常活动。此外,IDS基本上是一种安全软件,它能够在有人或某物试图利用恶意活动或违反安全策略危害信息系统时检测并自动警告管理员。误报和漏报是IDS中的两种报警类型[19]。误报是指被错误地指示为攻击的正常行为或实例。另一方面,漏报表示与误报相反的情况,在这种情况下,真实攻击被检测为正常行为或实例。这两个警报的组合被测量为假警报率,并用于评估性能期间特定IDS模型的有效性。图1表示IDS网络体系结构的环境。
图1 IDS网络体系结构的环境
当发现可能的入侵或可疑模式时,ID将发出警报。当整个网络体系结构与安全机制不相关时,系统就被称为受损系统。系统可以监视任何试图修改文件、恶意活动和未经授权的访问。IDS通过检查系统的弱点、文件的完整性以及基于过去攻击的分析模式来监控系统活动来运行。还有对互联网的自动监控,以寻找可能导致未来攻击的最新威胁。通常,ID可以分为两类:基于签名和异常检测。在基于签名的系统中,对攻击模式或入侵者行为进行建模,并在检测到匹配时发出系统警报[20]。相反,异常检测系统考虑网络或系统的行为规范,并创建正常活动的基线轮廓。然后,任何不符合系统行为规范的活动都将被视为入侵。异常检测系统能够检测到以前已知的攻击,因此,这些系统的效率高于基于签名的系统的效率[21]。
防火墙可以使用网络网关服务器中的一组相关程序保护专用网络的资源不受其他网络用户的影响。程序的安全策略要么传递到防火墙。由于保护私有数据资源不受外部访问的影响,也为了控制外部资源不受自身用户的影响,承包商将允许其工人通过安装防火墙与更广泛的互联网联系[22]。近年来,网络上未经授权的活动迅速增长,这种情况突显了入侵检测(ID)作为防御措施的重要性。这种重要性源于这样一个事实,即通过防火墙技术完全防止入侵已经变得不可能了。
- 相关工作
Aneetha等[23]采用安全通信,需要对通过大规模网络设备生成的在线数据进行智能分析。现在,使用IDS被认为是一种有效的解决方案,可以为网络提供安全性以抵御外部威胁。IDS是一种控制或保护措施,用于检测对网络资源的误用、滥用和未经授权的访问。IDS主要作为一种精密的设备来监控网络流量,并根据各种标准显示恶意流量和异常情况。
特征约简方法可以分为两类:过滤方法和包装方法[24]。后者是一种特征去除方法,用于评估产生的误差概率,以确定关键特征。另一方面,过滤方法分析了独立于分类器的单个特征,并确定了应该保留的特征。一般来说,与过滤方法相比,包装方法表现出更好的性能。为了提高性能,可以使用混合特征选择方法,结合包装器和过滤方法。混合方法的缺点是性能不够理想。然而,由于人工智能应用的频率越来越高,不同的机器学习方法已被整合到入侵检测系统的特征约简研究中。Chebrolu等人[25]研究了两种特征选择算法的开发,包括贝叶斯网络(BN)和分类回归树(CRC)。另一方面,Tsang等人[6]采用遗传模糊方法研究了IDS特征重要性的测量。
最近的证据表明[26]基于包装的特征选择算法表明,由于使用定制的单倍突变爬山作为搜索策略构建轻量级ID,因此需要进一步评估子集。通过选择合适的特征策略,验证了传统的包装过滤方法的有效性。这项工作后来通过逐步特征去除(GRF)方法得到了改进[27]。GRF决定了kdd cup数据集41个特性的重要性,并逐渐删除不太重要的特性。该算法选择19个特征,即2、4、8、10、14、15、19、25、27、29、31、32、33、34、35、36、37、38和40。利用这19个特征,SVM在十倍交叉验证中获得98.62%的准确率。作者还研究了使用GFR方法和其他三种特征约简算法的优点。在特征去除方法中,选择了10个重要特征。同样,唯一特征法选择其他10个重要特征。此外,通过选择两种算法选择的普通特征,在混合方法中获得10个决定性特征。
检测的准确度和稳定性都是测量IDS[28,29]的关键指标,分别指每类攻击的准确度和每类检测的稳定性。当基于异常的IDS处于识别特定攻击的中间时,需要考虑太多的属性。因此,需要处理的网络流量很大,数据分布极不均匀。因此,识别异常行为与正常行为可能是困难的。
机器学习是人工智能(AI)的一种形式,它可以使计算机在不需要显式编程的情况下学习。机器学习的重点是提高计算机程序的自学能力,这些程序会随着对最新数据的介绍而改变。在过程方面,机器学习与数据挖掘有相似之处,因为两个系统都通过数据来识别模式。机器学习的目的是学习和发现,并随着时间的推移适应不同的环境,从而提高其在特定任务上的性能。在ID领域,机器学习算法首先通过参考输入进行培训,以“学习”攻击模式,然后针对过去未发现的输入攻击部署实际检测过程。除了能够智能识别新的攻击模式外,这些算法还能够清理具有无关和冗余功能的庞大数据集,以仅包含少量重要功能,从而优化检测过程[30,31]。
Li等提出了一个将支持向量机算法应用于IDS混合方案的实例[27]。提出了支持向量机和GFR相结合的检测方法,检测率达到98.63%。在他们提出的技术中,首先,使用GRF方法提取各种网络访问的19个关键特征。然后,应用支持向量机算法对就诊是否正常进行决策的情况进行分类。
在另一项提高精确度和检测率的尝试中,Hashemi等人[32]利用遗传算法作为一种著名的人工智能方法。结果表明,该算法的检测率为95.73%,误报率仅为4.27%,说明了遗传算法在该领域的应用能力。
考虑到文献中使用的遗传算法和支持向量机算法的能力,为了获得更好的性能和提高检测精度,研究了遗传算法和支持向量机混合分类方法在特征选择方面的性能。
- 提出的方法
本文旨在提出一种基于遗传算法和支持向量机函数的异常检测技术,以提高入侵检测的有效性。在建议的解决方案中,我们使用由遗传算法和支持向量机组成的混合模型,而不是主要算法(支持向量机)。使用由遗传算法和支持向量机组成的混合模型是近年来的一种尝试,目前许多研究者正致力于将遗传算法和支持向量机相结合,以提高支持向量机的分类性能。
图2 三种数据集分类的简单支持向量机模型
3.1、SVM和GA概述
支持向量机(SVM)是解决分类和回归问题的一种非常流行的机器学习方法。基本支持向量机利用一组输入数据来预测每个给定的输入,两个可能的类中的哪一个构成输出或二元线性分类器。提供一组培训示例,每个示例都标记为属于两个类别之一。SVM模型将这些示例表示为空间中的点,并绘制出这样的图,即不同的类别通过尽可能宽的明显间隙保持分离,如图2所示。然后将新的例子绘制到同一个空间中,并设想它们属于一个类别,这取决于它们落在间隙的哪一边。利用核技巧,支持向量机也能有效地进行非线性分类。在检测攻击时,SVM预测新数据是属于攻击组还是属于正常数据组[33]。
支持向量机对于数据的分类和重组很有用,但在给定一组训练数据的情况下,仅支持向量机不能有效地识别新的数据。此外,对于重组和分类,SVM需要大量的数据。为了优化这类数据,生成或生成模式或特征,SVM需要一个特殊的系统或算法来克服这类问题。本文提出利用遗传算法来改进支持向量机机制,并试图利用遗传算法来解决这一问题。
图3 基本遗传算法的简单流程图
实际上,遗传算法是一种基于自然遗传学进化思想的自适应探索性搜索算法。遗传算法以高质量的个体生成初级个体的种群。另一方面,这些个体中的每一个都代表了问题的解决方案[34]。遗传算法的一个简单的基本流程图如图3所示。由于遗传算法是一种并行算法,可以在多个子集问题中求解,因此它适用于入侵检测系统。换句话说,遗传算法可以同时在问题子集中搜索并找到解决方案。此外,遗传算法不需要数学推导,只需要一组适当的解就可以解决这个问题。遗传算法也可以在一个最优的单一解中提出该解。对于入侵检测,遗传算法可以从以前的数据或攻击中识别出新的数据或攻击,特别适用于基于人类行为的入侵检测。
3.2、混合机学习
正如研究人员所讨论的,混合学习方法将是实现最佳准确度和检测率的合适候选方法[35,36]。为了更清楚地说明,将至少两种学习方法组合在一起称为混合学习。为了支持这一观点,应该注意的是,最终的输出是通过使用第一种技术的中间结果作为第二种技术的输入而获得的。因此,各种分类器也可以用来产生混合学习方法,如遗传算法和分类技术的结合。
3.3、特征选择方法GA–SVM
SVM和GA的结合被称为GA–SVM特征选择算法[37]。分类和回归问题将由支持向量机来解决。从分类的角度出发,利用支持向量机将低维非线性问题转化为高维线性问题。因此,非线性分类问题需要通过求解线性分类问题来解决。此外,遗传算法是达尔文进化论中基于t检验生存的全局优化算法。为了选择一个最佳特征子集,上述两种方法的集成是有用的[38]。首先,遗传算法负责生成原始特征集中的特征子集。其次,利用竞争机制将分类性能较好的部分特征子集遗传到下一代。此外,通过应用交叉和变化,将生成新的特性子集,并将其添加到下一代中。因此,在条件结束之前,应重复此过程,并找到最佳特征子集。
图4 拟议混合模型示意图
如图4所示,描述了所提出方法的结构和核心元素。基于适合度值,遗传算法通过搜索从支持向量机分类结果中得到的最优检测模型(在本研究中,检测率被视为适合度值)来构造原始染色体。图4中的学习模块块封装了由选择、交叉和变异组成的遗传算法步骤,这些步骤作为学习机器来帮助策略优化特征数量并执行特征减少。用核函数作为遗传算法的适应度函数。通过对核函数的染色体进行解码,得到一组特征和参数,并导入到支持向量机分类器中。为了估计染色体所建议的检测模型的可行性,将采用支持向量机。由于避免了过拟合问题,提出了N向交叉验证方法,并通过N次检验结果的平均得到了一个拟合值。
我们对内核函数性能的了解多少取决于它的应用程序,而这些应用程序是基于机器学习中的无免费午餐定理的。此外,样本空间的结构由内核函数中的参数表示。在这种情况下,机器学习方法通过一组最佳参数来选择最大的检测性能。核心函数学习样本空间的结构,并在一个学习步骤中将样本空间的信息封装在一组参数中。此外,在学习步骤中还应选择最佳的特征集。本文的目的是采用遗传算法技术,在核函数的最优参数的基础上,获得一组特征,通过对遗传过程的模拟,遗传算法通过重复、评估和选择过程的迭代进行,生成具有一组特征和参数的检测模型。最后,利用该方法建立了由一组核函数的特征和参数组成的最优检测模型。最后,该模型将用于新样本的分类。为了评估所建议方法的可靠性,我们使用kdd cup 1999数据进行了一些实验,这些数据是一个广受欢迎的数据集,并已被研究人员广泛使用[39–42]。接下来的部分将介绍实验结果及其研究。
- 实验结果与分析
由于可用的45个特性太多,无法应用于ID,因此,执行特性缩减的必要性被深深地感受到。利用遗传算法,根据特征对入侵检测精度的影响,对特征的数量和类型进行了检测和优化。为了进行特征选择和约简,采用遗传算法对精英特征的数量和类型进行优化,表1给出了遗传算法实现优化的参数。
表1 遗传算法在特征数目和类型优化中的实验参数
此外,还绘制了遗传算法的演化图,如图5所示。
图5 遗传算法的进化图
最后,利用遗传算法选择了10个关键特征进行识别,并结合支持向量机和遗传算法去除了不太重要的特征,确定了45个特征的重要顺序。特征约简过程后选择的10个特征如表2所示。
表2 基于遗传算法的特征约简后45个特征中的10个特征选择
所选功能提供最高精度和最佳结果。如图5所示,这10个特征已被放在优先位置,第一优先是最重要的,第三优先是最重要的。第一优先级包括协议类型、服务、标志和错误的片段。这四个特性显示了所有10个特性的最佳结果(图6)。
图6 使用遗传算法选择的10个特征
表3 不同优先级集的所有特征的结果
考虑到这10个特征,我们已经能够实现并获得0.981的真阳性,并且我们只获得了0.019的一小部分假阳性。如表3所示,第一优先级显示了一个突出的结果,但只包含四个特性。这四个选择的特征单独显
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[19752],资料为PDF文档或Word文档,PDF文档可免费转换为Word
课题毕业论文、文献综述、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。