基于深度强化学习的网络攻击检测方法

文档序号:34023186发布日期:2023-05-05 04:21阅读:131来源:国知局
基于深度强化学习的网络攻击检测方法

本发明涉及一种基于深度强化学习的网络攻击检测方法,属于信息安全。


背景技术:

1、目前关于网络攻击检测方法的研究已经数不胜数,但多数的研究方法并没有重视对原始数据的特征处理,一味的强调检测算法的改进。本着“数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已”的原则,本发明针对原始数据的特征处理问题展开研究。特征选择(feature selection)方法是针对原始数据和特征,通过剔除不相关、冗余、异常特征以及意义渺小的特征,提炼出最优特征子集,进一步提高模型训练精度,减少运行时间与资源消耗,属于一种搜索寻优的问题。目前传统的特征选择方法主要分为三大类,如filter过滤法、wrapper包装法、embedded嵌入法,具体来说包括皮尔逊(pearson)相关系数、卡方校验、距离测量、方差选择等方法,主要以数学特征为基础,结合搜索技术、统计学等多学科实现。虽然取得了可观的研究成果,但也存在着相应的缺点,比如计算过程相对复杂,数据特征会由于维度的增加呈指数级趋势增长;不能适应数据的发展变化,属于静态方法。因此,在数据特征动态发展变化的时代,应灵活选取最优特征集,此外,一经确定的最优特征集也不应该是一尘不变的,而是应该着眼于现实情况提出不同的方法来对此进行优化与更新。

2、目前正处于大数据时代,面对海量数据、高维数据,传统的特征选择方法已很难满足现实需求。而随着数据挖掘、机器学习等技术的发展,对特征的选取标准已不单单停留在通过数学方式计算各个数据特征之间的相关性。与此同时,面对动态变化的网络环境,越来越多的具备新型特征的入侵攻击开始出现,攻击者可以从新型特征入手,设计攻击手段来绕过目前已有的防御检测措施,从而造成严重的信息泄露。例如车载网络、卫星通信网络等拓扑结构动态变化的网络,再加上大规模的训练数据,可能会出现最优特征集的搜索过程异常缓慢,完全跟不上环境变化的速度。此外,若不考虑新型特征,就算根据已有特征得到了最优特征集,那么攻击者依然可以利用新型特征设计入侵攻击,进而获取敏感数据。

3、综上所述,传统的特征选择方法已不能很好的选取最优特征集,进而不能很好的提供抵御。后来有学者提出了基于简单机器学习的特征选择算法、基于传统深度学习模型的特征选择以及相关的几种改进算法来解决海量高维特征、新型特征的带来的安全问题,但是也存在一定的缺陷,比如nugroho等人在《areview of intrusion detection systemin iot with machine learning approach:current andfuture research.》中分析整理了近5年在物联网设备中研究入侵检测时,各种机器学习算法的表现情况,其中,支持向量机(svm)与人工神经网络(ann)对入侵分类过程的投入最多,产出也不错,可以获得较好的准确率等;kilincer等人在《machine learning methods for cyber security intrusiondetection:datasets and comparative study.》中针对多种入侵检测开源数据集展开研究,使用k-最近邻(knn)与决策树(dt)算法进行分类,取得了更加成功的研究成果,该研究被认为有助于在人工智能的基础上使用机器学习方法来帮助研究入侵检测机制;而hosseini等人在《new hybrid method for attack detection using combination ofevolutionary algorithms,svm,and ann.》中,为了提高训练效果与性能,先后结合了svm与ann、ann与决策树(dt),最终成功对特征进行降维,并优化了训练时间。虽然以上方法速度较快,但它们不能提取深层次的网络数据信息,也不能识别新的网络攻击,无法应用于环境高度变化的网络;而akhtar等人在《deep learning-based framework for thedetection of cyberattack using feature engineering》中采用卷积神经网络(cnn)分类模型对dos攻击进行检测,研究充分提取了数据特征,取得了较高的准确率;mehedi等人在《deep transfer learning based intrusion detection system for electricvehicular networks》中提出一个基于深度迁移学习的lenet模型,与主流机器学习、深度学习和基准深度迁移学习模型相比,大大提高了入侵检测的精度,并伴有较好的安全性能。使用深度学习可以利用多层的神经网络提取原始数据的深刻特征,并通过连续的迭代训练来识别网络攻击。这样一定程度上虽然可以有效处理海量数据特征,但其本质仍属于静态模型,对未知的新型特征的处理仍然存在缺陷。


技术实现思路

1、为了有效解决针对海量特征、新型未知特征的选择难题,本发明提出了一种基于深度强化学习的网络攻击检测方法,主要应用于入侵攻击的检测领域,其中的灵活性就体现在对新型特征的处理方式。该方案首先提出特征选取与异常检测相结合的方法,将异常检测的结果作为智能体agent的反馈,根据反馈设计奖励机制,智能体agent为每一特征设置了对应的奖励,这样一来,模型收敛后就可以根据训练的经验直接选取出最优特征集,此时我们将此最优特征集设定为通用最优特征子集(固定该集合长度为max)。然后,本发明针对新型特征进行了相关的处理,能够防止攻击者通过新型特征达到敏感信息泄露的目的。当出现新型特征时,先将其假定为最优特征子集的一员(考虑到特征之间的相关性,将新型特征作为首个特征),然后重复步骤一选出max-1个特征组成最优特征子集。如此一来,相较于通用最优特征子集,若检测指标得到了明显提升,就将该最优特征子集设定为“某新型特征”或“以该新型特征为核心的新型入侵攻击”的专属最优特征子集;反之则认定该新型特征并不具备大的研究意义,可暂时性的忽略,后续检测仍采用通用特征子集。最后,由于算法结合了深度学习的感知能力与强化学习的决策能力,所以本发明选取的最优特征子集较为灵活,可以决定是否有意义针对新型特征设计专属特征子集,因此可以适用于动态变化的网络环境,检测新型的入侵攻击。

2、本发明的技术方案:

3、一种基于深度强化学习的网络攻击检测方法,步骤如下:

4、(1)特征选择智能体环境状态模型的构造;

5、环境状态模型即智能体所需要的环境,包括奖励函数的定义与交互反馈规则的设计,具体内容如下:

6、(1.1)首先使用ut来代表第t时刻智能体获得的折扣未来累积奖励,然后考虑具体的应用背景;

7、折扣未来累积奖励ut:智能体能感知环境的状态并根据环境提供的反馈信号rt,通过学习选择动作,最大化折扣未来积累奖励;由于环境的随机性,导致智能体所处状态、采取动作的随机性都会随着步数的增加而不断增大,因此为了降低不确定性和随机性,通过引入折扣因子γ来减小步骤之间的强关联性,将折扣未来累积奖励ut作为折扣未来累积奖励,其表达式为:

8、

9、其中,rt是第t时刻智能体接受的反馈,γ∈[0,1]是折扣系数,用于提升即时奖励而不是延迟奖励;

10、当γ接近0时,表示更重视当下的回报;当γ接近1时,表示更重视未来的回报;由于此处的应用背景为入侵检测,其网络流量之间是离散的、相互独立的,属于类别型数据的离散值问题,因此此处的γ应该尽可能的接近0,使得网络流量之间的连续性减弱;

11、(1.2)在定义好奖励函数后,设计智能体agent与环境的交互反馈规则,即奖励机制;

12、设计一种双奖励机制,考虑的评估指标包括检测结果的准确率accuracy、精确率precision、召回率recall以及模型的运行时间time,并设计如下的奖励公式:

13、

14、其中,ω表示衡量对应评估指标的权重矩阵,用来衡量各评估指标的重要性、设置偏好程度以及优先级等;r表示奖励矩阵,每个评估指标对应一个奖励分量;r_a表示准确率的反馈,r_p表示精确率的反馈,r_r表示召回率的反馈,r_t表示运行时间的反馈;需要注意的是,公式中没有考虑误警率以及漏警率指标,这是因为它们和精确率以及召回率是线性相关的,但若想单独研究,也可以加入到公式中,设置相应的权重即可。

15、在每一次迭代时,把新选择的特征添加到已选择的特征集,如果智能体使用新特征集训练出来的指标有所降低,那么就把新特征的reward设置为-100(保证后续训练智能体能够充分避开此特征);如果各项指标有所提升,首先记录提升过后的各项检测指标对应的反馈,即准确率r_a、精确率r_p、召回率r_r、运行时间r_t,然后根据各项指标对应的权值计算新的reward;比如accuracy提升到了90%,就令r_a=0.9。需要注意的是,此处可根据现实情况进行灵活处理,如果十分关注检测结果的准确性,那么可将其它指标对应的权重设置为趋于0的数,甚至是0;如果同时关注多个检测指标,那么就根据需求设置合理的权值。

16、这样的好处是:不同的场景针对三项指标的重要程度、优先级不同,可以应用于更广泛的场景,根据实际需求选择评估标准,提高泛化性;也可以针对某项指标进行单独研究,比如找出准确率最高的特征子集。

17、(2)特征选择智能体价值函数的构造;

18、价值函数是奖励的期望,主要用于评价不同状态的好坏,指导智能体动作的选择,还用价值函数来评估智能体在某时间t状态s的好坏程度,具体内容如下:

19、(2.1)首先计算价值函数q(s,a),用于评估当前智能体从状态s开始,执行动作a且服从策略ε的期望返回,公式如下:

20、qπ(s,a)=eπ[ut|st=s,at=a]

21、其中,st表示第t时刻智能体所处状态,at表示第t时刻智能体执行的动作,eπ智能体的训练策略;

22、在获取到当前状态s对应的所有可能动作a的价值,结合训练策略,智能体需要选择最优动作,即基于策略π,在所有的q(s,a)中取最大值,这便是动作at的决策过程,公式如下:

23、

24、其中,q*(st,at)是第t个时间步所有动作的最大价值;

25、(2.2)经过价值函数的构造,智能体根据既定的策略,对当前状态所有可能的动作进行有规律的选取;因此,对策略进行定义,具体内容如下:

26、由于在强化学习中,存在两个非常重要的概念——开发和探索,前者表示智能体本着“最大化动作价值”的原则,从已知的动作中选择最优动作;而后者表示智能体选择其它未知的动作。然后,在某一个状态下,智能体只能执行一个动作,二者无法同时进行,而策略就是用来权衡开发与探索。

27、选用贪心策略,其表示在智能体做决策时,存在∈(0<∈<1)的概率随机选择未知的一个动作,剩下的1-∈的概率选择已有动作中价值最大的动作;当智能体选取某特征并最终将其加入到最优特征集后,需要将其从动作空间中移除或重置其q值,也就是说,将选取该特征的动作对应的q值尽可能大的降低,保证该特征在后续的训练中尽可能不会被选择。

28、本发明的有益效果:传统特征选择方法虽然也有一定的效果,但由于其采用大量的数学计算方法,不仅会消耗大量的算力,而且也无法针对新型特征做出有效地处理,特别是针对新型特征构造的入侵攻击,更会带来一系列安全威胁。因此,本发明提出一种基于深度强化学习的网络攻击检测方法。

29、深度强化学习其实就是结合深度学习的海量数据处理能力与强化学习的灵活决策能力。主要针对强化学习展开构建,首先定义了智能体所处环境,设计了交互规则与奖励机制,其次定义了价值函数与训练策略,为智能体规定了选择动作的唯一标准,最后,通过反复迭代训练,智能体就会选择奖励高的特征,同时避开奖励低的特征,最终生成最优特征子集。

30、在面对新型特征时,可直接将其加入到最优特征集中,将新的最优特征集作为训练数据再次训练模型,然后根据各项检测指标决定是否有必要针对新型特征/新型入侵攻击设定专属最优特征子集。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1