CN115643189A - 一种基于群体智能算法和孤立森林的网络异常检测方法 - Google Patents

一种基于群体智能算法和孤立森林的网络异常检测方法 Download PDF

Info

Publication number
CN115643189A
CN115643189A CN202211233988.7A CN202211233988A CN115643189A CN 115643189 A CN115643189 A CN 115643189A CN 202211233988 A CN202211233988 A CN 202211233988A CN 115643189 A CN115643189 A CN 115643189A
Authority
CN
China
Prior art keywords
algorithm
population
space
value
individual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211233988.7A
Other languages
English (en)
Inventor
张琛
许广德
冯强中
周源
王颜颜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ustc Sinovate Software Co ltd
Original Assignee
Ustc Sinovate Software Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ustc Sinovate Software Co ltd filed Critical Ustc Sinovate Software Co ltd
Priority to CN202211233988.7A priority Critical patent/CN115643189A/zh
Publication of CN115643189A publication Critical patent/CN115643189A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开一种基于文化框架下的群体智能优化算法和孤立森林的网络异常检测方法,包括:将数据集随机划分为训练集与测试集,根据训练集构建面向网络故障检测的孤立森林模型;对人工鱼群算法和捕食者算法进行融合优化,生成一种新的文化框架下的群体智能优化算法;使用群体智能优化算法优化孤立森林模型,从中寻找检测能力好的隔离树参与集成;在测试集上进行网络异常检测的验证。为了弥补孤立森林算法的不足之处,对训练集中已产生的隔离树集合中,通过文化框架下的人工鱼群算法与捕食者算法进行寻找最优子集,使得孤立森林算法既提高网络异常识别精度,又减少隔离树的数量,进而提高运行速度。

Description

一种基于群体智能算法和孤立森林的网络异常检测方法
技术领域
本发明涉及网络异常检测技术领域,具体涉及一种基于群体智能算法和孤立森林的网络异常检测方法。
背景技术
现有的网络故障诊断技术根据正常数据来构建模型,再将与模型不符合的数据划分为异常,具有计算复杂,性能差等不足之处。而孤立森林则是利用异常数据占比少且偏离群体的特点,将其与正常数据快速分割,所以算法本身具有较低的线性时间复杂度和内存需求低等优点。尽管孤立森林在异常检测算法中有一定的优越性,但仍存在一些需要改进的问题:孤立森林的高检测精度依赖大规模隔离树的集成,训练大量隔离树会造成算法效率的降低和更多的内存消耗;在孤立森林中每棵隔离树的检测能力不同,但是它们所具有的投票权重是一样的,所以一些检测能力不足的树可能会对最终检测结果产生负作用。
鉴于上述缺陷,本发明创作者经过长时间的研究和实践终于获得了本发明。
发明内容
本发明的目的是为了提高传统群体智能优化的收敛速度,弥补易陷入局部最优的不足之处,将人工鱼群与捕食者算法进行融合,提高传统孤立森林算法的检测精度,进而提高网络异常检测率,该发明提供一种文化框架下的群体智能算法和孤立森林的网络异常检测方法。
为实现上述目的,本发明提供了一种基于群体智能算法和孤立森林的网络异常检测方法,包括如下步骤:
S1:训练模型
将数据集随机划分为训练集与测试集,根据训练集构建面向网络故障检测的孤立森林模型;
S2:群体智能优化算法
基于文化算法对人工鱼群算法和捕食者算法进行融合优化,得到一种新的群体智能优化算法:
文化算法包括种群空间和信仰空间,将种群空间中的种群个体按照捕食者算法机制演化,将信仰空间中的种群个体按照人工鱼群算法机制演化;
种群空间与信仰空间之间通过接受函数与影响函数组成的通讯协议关联在一起;
种群空间贡献精英个体给信仰空间,所述精英个体是指种群空间中捕食者算法进化过程中产生的最优解;
信仰空间经演化后,将较优个体送入种群空间替换其中较差个体,所述较优个体为信仰空间中人工鱼群算法进化过程中产生的识别准确率高的个体,所述较差个体是种群空间中捕食者算法进化过程中产生的识别准确率较低的个体;
S3:模型优化
使用群体智能优化算法优化孤立森林模型,将异常识别率作为适应度函数:
群体智能优化算法从孤立森林模型中寻找准确率高的隔离树参与集成,剔除准确率低的隔离树;最后使用测试集对算法进行效果测试。
进一步的,所述S1具体包括如下步骤:
S11:先采集网络异常检测的数据集,将数据集划分为训练集与测试集;从训练集中随机选择n个样本数据点作为子采样集,并构造一棵隔离树,将子采样集放入隔离树的根节点;
随机选取子采样集中的一个特征w,然后随机选择一个切割值p,切割值p的取值范围在所选特征w的上下介值之间;
样本数据则被切割值p划分为左右两部分,若di(w)>p,数据di(w)被划分在右子树,反之则被划分在左子树;
递归构造新的子节点,直到子节点中只有一个数据项无法继续切割,该隔离树已经达到初始定义好的限定高度;
S12:构建n棵上述的隔离树,形成孤立森林模型;
S13:选定测试集中的测试数据x,将其代入孤立森林模型中的每一棵隔离树;
x表示测试数据,计算其落在每棵隔离树的路径长度h(x),并计算所有h(x)的平均值E(h(x));
根据如下公式求得测试数据x的路径长度c(α),
Figure BDA0003882873140000021
其中H(i)=Ln(i)+γ为谐波数,γ为欧拉常数,α为叶子节点数,c(α)为当α确定时h(x)的平均值;
根据如下公式计算测试数据x的异常分数s(x,α),
Figure BDA0003882873140000022
根据异常分数s(x,α)的值的大小,区分异常点和正常点,将测试集中的异常数据和正常数据分割开。
进一步的,所述S2中的文化算法对捕食者算法与人工鱼群算法融合优化具体包括如下步骤:
通过接收操作选取当前种群空间中的较优个体来更新信仰空间,每运行AcceptStep代时,用种群空间中当前的全局最优值来替换信仰空间中的最差个体,AcceptStep的计算公式如下所示;
Figure BDA0003882873140000031
其中:AcceptStep为接收操作次数,fix取整函数,MAXIt为种群预先设定的种群最大演化代数,It为种群演化当前代数,BaseNum和DevNum为自由设定常数;
当满足It%AcceptStep=0时,用种群空间中当前的全局最优值来替换信仰空间中的最差个体;
通过影响操作将经演化后信仰空间中的较优个体送入种群空间替换种群空间中的较差个体,
Figure BDA0003882873140000032
其中:AffecttStep为影响操作次数,fix取整函数,MAXIt为种群预先设定的种群最大演化代数,It为种群演化当前代数,BaseNum和DevNum为自由设定常数;当满足It%AffecttStep=0时,用信仰空间中当前的全局最优值来替换种群空间中的最差个体。
进一步的,所述S2中的人工鱼群算法包括如下步骤:
S201:初始化设置,包括种群规模、每条人工鱼的初始位置、人工鱼的视野、步长、拥挤度因子、重复次数;
S202:公告板赋值:计算初始鱼群各个体的适应值,取最优人工鱼状态及其适应值赋予给公告牌;
S203:行为选择:对每个个体进行评价,对其要执行的行为进行选择,包括觅食、聚群、追尾和随机行为;
S204:执行人工鱼的行为,更新生成新鱼群;
S205:公告牌更新:评价所有个体,若某个体的适应值优于公告牌,则将公告牌更新为该适应值;
S206:当公告牌上的适应值达到算法全局最优解或者达到迭代次数上限时算法结束,否则执行步骤S203。
进一步的,所述S2中的捕食者算法包括如下步骤:
S211:初始化阶段,求猎食者在搜索范围内随机初始化位置xi
S212:猎食者搜索阶段,求猎食者的下一次迭代位置x(t+1)。
进一步的,所述S211中的初始化位置xi通过如下公式计算,xi=rand(1,d).*(ub-lb)+lb,0<i≤N;其中xi是猎食者的初始位置,lb是问题变量的最小值,ub是问题变量的最大值,d是问题变量的数量,所述问题变量是指解空间向量;
为扩大解的搜索范围,引入反向竞争的思想:设x∈[lb,ub]为一个实数,则其所对应的全局反向数被定义为:
Figure BDA0003882873140000041
通过上述操作得到2N个初始解。
进一步的,所述S212包括如下步骤:
S2121:求出猎食者的下一次迭代位置x(t+1),xij(t+1)=xij(t)+0.5[(2CZPpos(j)-xij(t))+(2(1-C)Zμ(j)-xij(t))],其中x(t)是当前猎食者位置,Ppos是猎物的位置,μ是猎食者位置与猎物位置的平均值,Z为自适应参数,C为平衡参数;
S2122:求出猎物的位置
Figure BDA0003882873140000042
其中kbest=round(C×2N),N为搜索代理的数量Z,kbest为选择猎物搜索代理的位置;
S2123:求猎物的更新位置xij(t+1),xij(t+1)=Tpos(j)+Rij(t)(Tpos(j)-xij(t));其中,x(t)是当前猎物位置,x(t+1)是猎物的下一次迭代位置,Tpos是全局最优位置;Rij是[0,1]范围内的随机数为了选择猎食者和猎物;
S2124:综合所述S2121、S2122、S2123得到猎物和猎食者的下一次迭代位置xi(t+1)的公式:
Figure BDA0003882873140000043
进一步的,所述S2121中的自适应参数Z通过如下公式计算:
Figure BDA0003882873140000044
其中
Figure BDA0003882873140000045
Figure BDA0003882873140000046
是[0,1]内的随机向量,P是
Figure BDA0003882873140000047
的索引值,R2是[0,1]内的随机数,IDX是满足条件P==0的向量
Figure BDA0003882873140000048
的索引值。
进一步的,所述S2121中的平衡参数C通过如下公式计算,
Figure BDA0003882873140000049
其中,it是当前迭代次数,MaxIt是最大迭代次数;
位置平均值μ通过如下公式计算,
Figure BDA00038828731400000410
进一步的,所述S2122中每个猎食者与位置平均值μ的距离Dedu(i)通过如下公式计算,
Figure BDA0003882873140000051
其中μ为位置平均值。
与现有技术比较本发明的有益效果在于:
1、提出文化框架下的人工鱼群与捕食者算法,提高传统群体智能优化算法收敛速度,具备并行处理的能力,寻优速度较快,具备全局寻优的能力,能够快速跳出局部极值点;
2、人工鱼群算法具有强大的全局搜索能力,捕食者算法局部寻优能力强,为了克服单一算法的不足,文化算法通过将它们分别组成信仰空间和群体空间,组成一种新的多群体智能协同算法;种群空间中的种群个体按照捕食者算法机制演化,信仰空间中的种群个体按照人工鱼群算法的机制演化,两个空间之间相互独立又相互联系,通过接受函数与影响函数组成的通讯协议关联在一起,下层种群空间定期贡献精英个体给上层信仰空间,上层信仰空间经演化后,将部分较优个体送入种群空间替换其中较差个体,于是形成“双演化双促进”的协同机制,从而提高了种群的多样性及算法的效率;
3、使用文化框架下的人工鱼群与捕食者算法优化孤立森林,提高网络设备故障诊断精度。
附图说明
图1为本发明基于文化框架下的人工鱼群与捕食者算法融合原理示意图;
图2为本发明基于文化框架下的群体智能算法优化孤立森林的原理示意图;
图3为本发明基于文化框架下的群体智能算法优化孤立森林的流程示意图;
图4为本发明原孤立森林ROC曲线示意图;
图5为本发明经群体智能优化算法优化后的孤立森林ROC曲线示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明提供的一种基于群体智能算法和孤立森林的网络异常检测方法,包括:读取数据集,并将数据集转化为适合构造孤立森林的格式,并随机划分为训练集与测试集;根据训练集构建面向网络故障检测的孤立森林模型;对人工群体算法和捕食者算法进行融合优化,生成一种文化框架下的群体智能优化算法;使用文化框架下的群体智能优化算法优化孤立森林模型,从中寻找检测能力好的隔离树参与集成,提高网络异常检测的准确率,同时通过删除检测能力差的隔离树,提高了孤立森林的运行速率。
在该实施例中,一种基于文化框架的群体智能算法和孤立森林的网络异常检测方法,如图3所示,包括步骤如下:
S1:训练模型
采用KDD99作为网络异常检测的数据集,读取传入的数据集,并将数据集转化为适合构造孤立森林的格式,并以7:3的比例将数据集划分为训练集与测试集。孤立森林模型选择所有的隔离树参加集成,孤立森林中的基分类器就是隔离树,在隔离树构建过程中,先随机选取数据集D={d1,d2,…,dn}中的一个特征w,然后随机选择一个切割值p,切割值的取值范围在所选特征的上下界之间,数据则被切割值划分为左右两部分,若di(w)>p,数据di(w)被划分在右子树,反之则划分在左子树,如此递归,直到将每个数据与其他数据完全分割或者达到设定树的最大高度则停止划分。由于异常值远比正常值要少且在某个或多个维度上的值与正常值存在明显差异,异常值往往更靠近树的根节点,将一个异常值与其余数据分割开比将一个正常值与其他数据分割开要容易的多,借此可将异常值与正常值分隔开。
从根节点遍历隔离树直到外部节点处终止,其中所经历的边长为路径长度,记为h(x)。实例x的路径长度如公式(1)所示:
Figure BDA0003882873140000061
其中,H(i)=Ln(i)+γ为谐波数,α为叶子节点数,c(α)为当α确定时h(x)的平均值,用来标准化h(x)。任何异常检测的方法都需要异常分数,实例x的异常分数是根据遍历x在所有隔离树中的路径长度来确定的,异常分数如公式(2)所示:
Figure BDA0003882873140000062
其中E(h(x))是h(x)在隔离树集合上的平均值,当:
E(h(x))→c(n),s→0.5,样本可能没有明显的异常点;
E(h(x))→0,s→1,可以被认为是异常点;
E(h(x))→n-1,n≥1,s→0,可以被认为是正常点。
S2:算法融合
对人工鱼群体算法和捕食者算法进行融合优化,提高传统群体智能优化算法收敛速率慢,易陷入局部最优的缺点。
构建人工鱼群算法包括以下步骤:
初始化设置,包括种群规模N、每条人工鱼的初始位置、人工鱼的视野Visual、步长Breakstep、拥挤度因子δ、重复次数Try-number。
公告板赋值:计算初始鱼群各个体的适应值,取最优人工鱼状态及其适应值赋予给公告牌。
行为选择:对每个个体进行评价,对其要执行的行为进行选择,包括觅食、聚群、追尾和随机行为;按照人工鱼群算法的行为选择准则,进行追尾行为和聚群行为,缺省行为方式为觅食行为,如果进行了追尾行为和聚群行为后,当代最优值还没有变化的话,进行随机行为,同时步长加一。
执行人工鱼的行为,更新生成新鱼群。
觅食行为:模仿的是鱼群在水域中的捕捉食物的行为,这个函数将视觉设定为人工鱼得到水域中某个地方存在的食物含量,并且以此来选择游动方向的手段,是向食物靠近的一种活动;
该行为首先设定一个人工鱼的当前状态Xi,并在该条人工鱼的视野范围内,随机选择另一个状态Xj,若Xj状态下的目标函数返回值优于当前状态Xi的值,则向Xj状态移进一步,若相反,Xj状态下的目标函数返回值劣于当前状态Xi的值,那么就重新随机选取一个状态,重复上步骤。如果该条人工鱼在这种状态下重新选择状态的次数达到了预设的最大重新选择的值时,还无法达到更新条件,那么将使得人工鱼随机挑选一个状态然后移动一步。可由公式(3)模拟实现觅食行为:
Xj=Xi+Visual*Rand();
Figure BDA0003882873140000071
聚群行为:为了群体捕食和规避天敌,人工鱼通常会选择与其他人工鱼聚集在一起,形成大鱼群或小鱼群。在这些人工鱼群中,人工鱼会观察当前鱼群中包含所有人工鱼的数量,与此同时算得当前所处的鱼群的中心位置,并且将目标函数值在当前鱼群的中心位置所取得的值与目标函数在现在人工鱼自身所处方位所取得的值进行比较,若目标函数在当前鱼群的中心方位所取的值与目标函数在人工鱼自身当前方位所取的值相比较优,并且中心位置的拥挤度未达到阈值,则从目前自身的方位向中心方位移动一步,若非如此则就会转而执行Prey觅食行为。可由公式(4)模拟实现聚群行为:
Figure BDA0003882873140000072
追尾行为:这个人工鱼的行为代表着,若此鱼群中的某条人工鱼在这片水域中活动的过程里发现了食物,则这条人工鱼附近的其他人工鱼将会得知这些人工鱼发现了食物的方位,然后会向发现了食物的人工鱼的方位靠近,然后更远位置的人工鱼也会由此导致向这个方位靠近;
人工鱼会搜索附近人工鱼的最佳的方位,如果目标函数在那个最佳方位的条件下所取得的值与目标函数在当下人工鱼所处方位条件下所取得的值相比较优,同时最佳方位的拥挤度未达到阈值,则说明此方位符合优化要求,这时人工鱼会向最优方位移动一步,若非如此算法就会转而执行Prey()觅食行为。可由公式(5)模拟实现追尾行为:
Figure BDA0003882873140000081
公告牌更新:评价所有个体,若某个体的适应值优于公告牌,则将公告牌更新为该适应值;根据当前人工鱼群中每条鱼的位置,来对每个个体在当前环境中的综合状态进行评价,并且将每个个体由此所获得的综合评价与公告牌中记录的最优评价进行对比,如果在此次迭代中存在比公告牌中所记录的最优评价还要符合目标的个体,那么就将公告牌中记录的最优记录改变为该个体所代表的值。
当公告牌上适应值达到算法全局最优解或者达到迭代次数上限时算法结束,否则转步骤S203。
捕食者算法包括以下步骤:
猎食者种群在搜索范围内随机初始化位置xi
xi=rand(1,d)*(ub-lb)+lb,0<i≤N (6)
其中xi是捕食者的位置,lb是问题变量的最小值(下界),ub是问题变量的最大值(上界),d是问题变量的数量(维度)。为了扩大解的搜索范围,引入反向竞争的思想:设x∈[lb,ub]为一个实数,则它所对应的全局反向数被定义为:
Figure BDA0003882873140000082
通过上述操作得到2N个初始解。
对于捕食者采用如下公式进行搜索:
xij(t+1)=xij(t)+0.5[(2CZPpos(j)-xij(t))+(2(1-C)Zμ(j)-xij(t))](8)
其中,x(t)是当前猎食者位置,x(t+1)是猎食者的下一次迭代位置,Ppos是猎物的位置,μ是所有位置的平均值,Z由下式计算
Figure BDA0003882873140000083
其中,
Figure BDA0003882873140000084
Figure BDA0003882873140000085
是[0,1]内的随机向量,P是
Figure BDA0003882873140000086
的索引值,R2是[0,1]内的随机数,IDX是满足条件P==0的向量
Figure BDA0003882873140000087
的索引值,C是探索和开发之间的平衡参数,其值在迭代过程中从1减小到0.02,计算如下:
Figure BDA0003882873140000091
其中,it是当前迭代次数,MaxIt是最大迭代次数。计算猎物的位置Ppos,以便首先根据式(11)计算所有位置的平均值(μ),然后计算每个搜索个体与该平均位置的距离。
Figure BDA0003882873140000092
根据式(12)计算欧几里得距离:
Figure BDA0003882873140000093
根据狩猎场景,当猎食者捕获猎物时,猎物会死亡,而下一次,猎食者会移动到新的猎物位置。因此,引入一种新的递减机制,如式(13)所示:
kbest=round(C×2N) (13)
其中N是搜索代理的数量,由于采用了反向竞争理论,公式(13)中为2N。将猎物的位置计算为式(14):
Figure BDA0003882873140000094
在算法开始时,kbest的值等于2N。最后一个距离搜索个体的平均位置(μ)最远的搜索个体被选择为猎物,并被猎食者捕获。假设最佳安全位置是最佳全局位置,因为这将使猎物有更好的生存机会,猎食者可能会选择另一个猎物。式(15)用于更新猎物位置:
xij(t+1)=Tpos(j)+Rij(t)(Tpos(j)-xij(t)) (15)
其中,x(t)是当前猎物位置,x(t+1)是猎物的下一次迭代位置;Tpos是全局最优位置;Rij是[0,1]范围内的随机数为了选择猎食者和猎物,结合式(8)和(9)、(15)提出了式(16):
Figure BDA0003882873140000095
其中,r4是[0,1]范围内的随机数,α是一个调节参数。
在文化算法框架下的人工鱼群算法与捕食者算法进行融合优化:
群体智能优化算法作为一种模拟社会动物群体行为的智能算法,每种算法都有自身特点和优势,同时,每种算法也都有自身缺陷和不足,单独使用群智能算法较难得到理想的结果,所以通过充分利用不同算法的优势,取长补短,研究它们之间的混合算法,构成一种优势互补的综合算法。人工鱼群算法具有强大的全局搜索能力,捕食者算法局部寻优能力强,为了克服单一算法的不足,文化算法通过将它们分别组成信仰空间和群体空间,组成一种新的多群体智能优化算法。
如图1所示,种群空间中的种群个体按照捕食者算法机制演化,信仰空间中的种群个体按照人工鱼群算法的机制演化,信仰空间的作用是是引导种群优化,两个空间之间相互独立又相互联系,通过接受函数与影响函数组成的通讯协议关联在一起,下层种群空间定期贡献精英个体给上层信仰空间,上层信仰空间经演化后,将部分较优个体送入种群空间替换其中较差个体,于是形成“双演化双促进”的协同机制。
其中接受函数的作用是将个体经验传递到信仰空间,主要是在当前种群空间中选取优势个体,为信仰空间的进化提供基础,通过接受操作选取当前种群中较优个体来更新信仰空间,每运行AcceptStep代时,用种群空间中当前的全局最优值来替换信仰空间中的最差个体,AcceptStep的计算公式如下所示:
Figure BDA0003882873140000101
其中为fix取整函数,MAXIt为种群预先设定的种群最大演化代数,It为种群演化当前代数,BaseNum和DevNum为自由设定常数;当满足It%AcceptStep=0时,用种群空间中当前的全局最优值来替换信仰空间中的最差个体。
影响函数的作用是对群体空间中个体的行为规则进行修改,以使个体空间得到更高的进化效率,从而提高了种群的多样性及算法的效率;通过影响操作将经演化后信仰空间中的较优个体送入种群空间替换种群空间中的较差个体:
Figure BDA0003882873140000102
其中为fix取整函数,MAXIt为种群预先设定的种群最大演化代数,It为种群演化当前代数,BaseNum和DevNum为自由设定常数;当满足It%AffecttStep=0时,用信仰空间中当前的全局最优值来替换种群空间中的最差个体。
S3:使用改进后的群体智能优化算法优化传统的孤立森林模型,使用检测率作为适应度函数,群体智能优化算法所对应的最优解即为差异度大、检测率高的隔离树,从中寻找差异度大、检测率高的隔离树参与集成,提高网络异常检测的准确率,同时通过删除检测率低的隔离树,提高了孤立森林的运行速率。
如图2所示,首先,通过Boostrap随机抽样方法从训练集中抽取100个含有2048个样本的训练子集,在每个训练子集上分别训练隔离树,得到100棵隔离树。然后,使用文化框架下的人工鱼群与捕食者算法对传统的孤立森林算法进行优化,寻找出较优的隔离树参与集成。使用异常识别检测率作为适应度函数,该方法通过剔除较差的隔离树,提高传统孤立森林模型的泛化性能,进而提高故障检测率。
在验证技术效果方面,采用KDD99作为网络异常检测的数据集,KDD99是一个用来从正常连接中检测非正常连接的数据。在实验中,使用了原始孤立森林算法、LOF算法与基于群体智能优化算法的孤立森林算法三种网络异常检测方法来对数据集进行测试,LOF算法是基于密度分析,通过局部的数据密度来检测异常。因为本文研究的异常检测是一个二分类问题,所以使用AUC值与ROC曲线来评估算法优劣。其中,ROC曲线的x轴为recall,y轴为precision。在混淆矩阵中,TP为正确识别的正例数据,TN为正确识别的负例数据,FP为错误识别的正例数据,FN为错误识别的负例数据。
精确度(Precision)指一种比例,这种比例代表着预测为真并且实际也为真的样本在预测为真的样本中的占比,可由下列公式(19)求得:
Figure BDA0003882873140000111
召回率(Recall)是指在这批样本中,有多少符合要求的样本被找了出来的比例,可由下列公式(20)求得:
Figure BDA0003882873140000112
AUC曲线的x轴为FPR,可由公式(21)求得,y轴为TPR,可由公式(22)求得,FPR代表将负例数据错分为正例数据的概率,TPR代表将正例数据分对的概率。可由公式(23)求得AUC,其为ROC曲线下的面积。
Figure BDA0003882873140000113
Figure BDA0003882873140000114
Figure BDA0003882873140000115
其中M为正样本数,N为负样本数。
使用LOF算法、原始的孤立森林算法,基于群体智能优化算法的孤立森林对KDD99数据集进行验证,其结果见表1。
表1算法性能对比
算法 精确度 AUC 建模时长 预测时长
LOF算法 88% 0.67 46min 1min
原孤立森林算法 95% 0.80 2min 4s
改进的孤立森林算法 96% 0.85 11min 2s
由表1可知,改进后的孤立森林算法的性能相较于LOF算法、原孤立森林算法更优,其中精确度更高,AUC的数值更大说明检测方法真实性越高,收敛速度更快。
图4为原孤立森林ROC曲线示意图,图5为经群体智能优化算法优化后的孤立森林ROC曲线示意图;由图4、图5可知,经群体智能优化算法优化后的孤立森林ROC曲线下的面积大于原孤立森林ROC曲线下的面积,面积越大说明分类效果越好,因此优化后的孤立森林算法更优,检测方法真实性越高,收敛速度更快。
使用改进后的群体智能优化算法优化传统的孤立森林模型,从中寻找质量高的隔离树参与集成,提高网络异常检测的准确率,同时通过删除部分质量差的隔离树,提高了孤立森林的运行速率。
以上所述仅为本发明的较佳实施例,对本发明而言仅仅是说明性的,而非限制性的。本专业技术人员理解,在本发明权利要求所限定的精神和范围内可对其进行许多改变,修改,甚至等效,但都将落入本发明的保护范围内。

Claims (10)

1.一种基于群体智能算法和孤立森林的网络异常检测方法,其特征在于,包括如下步骤:
S1:训练模型
将数据集随机划分为训练集与测试集,根据训练集构建面向网络故障检测的孤立森林模型;
S2:群体智能优化算法
基于文化算法对人工鱼群算法和捕食者算法进行融合优化,得到一种新的群体智能优化算法:
文化算法包括种群空间和信仰空间,将种群空间中的种群个体按照捕食者算法机制演化,将信仰空间中的种群个体按照人工鱼群算法机制演化;
种群空间与信仰空间之间通过接受函数与影响函数组成的通讯协议关联在一起;
种群空间贡献精英个体给信仰空间,所述精英个体是指种群空间中捕食者算法进化过程中产生的最优解;
信仰空间经演化后,将较优个体送入种群空间替换其中较差个体,所述较优个体为信仰空间中人工鱼群算法进化过程中产生的识别准确率高的个体,所述较差个体是种群空间中捕食者算法进化过程中产生的识别准确率较低的个体;
S3:模型优化
使用群体智能优化算法优化孤立森林模型,将异常识别率作为适应度函数:
群体智能优化算法从孤立森林模型中寻找准确率高的隔离树参与集成,剔除准确率低的隔离树;最后在测试集上测试算法效果。
2.如权利要求1所述的基于群体智能算法和孤立森林的网络异常检测方法,其特征在于,所述S1具体包括如下步骤:
S11:先采集网络异常检测的数据集,将数据集划分为训练集与测试集;从训练集中随机选择n个样本数据点作为子采样集,并构造一棵隔离树,将子采样集放入隔离树的根节点;
随机选取子采样集中的一个特征w,然后随机选择一个切割值p,切割值p的取值范围在所选特征w的上下介值之间;
样本数据则被切割值p划分为左右两部分,若di(w)>p,数据di(w)被划分在右子树,反之则被划分在左子树;
递归构造新的子节点,直到子节点中只有一个数据项无法继续切割,该隔离树已经达到初始定义好的限定高度;
S12:构建n棵上述的隔离树,形成孤立森林模型;
S13:选定测试集中的测试数据x,将其代入孤立森林模型中的每一棵隔离树;
x表示测试数据,计算其落在每棵隔离树的路径长度h(x),并计算所有h(x)的平均值E(h(x));
根据如下公式求得测试数据x的路径长度c(α),
Figure FDA0003882873130000021
其中H(i)=Ln(i)+γ为谐波数,γ为欧拉常数,α为叶子节点数,c(α)为当α确定时h(x)的平均值;
根据如下公式计算测试数据x的异常分数s(x,α):
Figure FDA0003882873130000022
根据异常分数s(x,α)的值的大小,区分异常点和正常点,将测试集中的异常数据和正常数据分割开。
3.如权利要求1所述的基于群体智能算法和孤立森林的网络异常检测方法,其特征在于,所述S2中的文化算法对捕食者算法与人工鱼群算法融合优化具体包括如下步骤:
通过接收操作选取当前种群空间中的较优个体来更新信仰空间,每运行AcceptStep代时,用种群空间中当前的全局最优值来替换信仰空间中的最差个体,AcceptStep的计算公式如下所示;
Figure FDA0003882873130000023
其中:AcceptStep为接收操作次数,fix取整函数,MAXIt为种群预先设定的种群最大演化代数,It为种群演化当前代数,BaseNum和DevNum为自由设定常数;
当满足It%AcceptStep=0时,用种群空间中当前的全局最优值来替换信仰空间中的最差个体;
通过影响操作将经演化后信仰空间中的较优个体送入种群空间替换种群空间中的较差个体,
Figure FDA0003882873130000024
其中:AffecttStep为影响操作次数,fix取整函数,MAXIt为种群预先设定的种群最大演化代数,It为种群演化当前代数,BaseNum和DevNum为自由设定常数;当满足It%AffecttStep=0时,用信仰空间中的全局最优值来替换种群空间中的最差个体。
4.如权利要求3所述的基于群体智能算法和孤立森林的网络异常检测方法,其特征在于,所述人工鱼群算法包括如下步骤:
S201:初始化设置,包括种群规模、每条人工鱼的初始位置、人工鱼的视野、步长、拥挤度因子、重复次数;
S202:公告板赋值:计算初始鱼群各个体的适应值,取最优人工鱼状态及其适应值赋予给公告牌;
S203:行为选择:对每个个体进行评价,对其要执行的行为进行选择,包括觅食、聚群、追尾和随机行为;
S204:执行人工鱼的行为,更新生成新鱼群;
S205:公告牌更新:评价所有个体,若某个体的适应值优于公告牌,则将公告牌更新为该适应值;
S206:当公告牌上的适应值达到算法全局最优解或者达到迭代次数上限时算法结束,否则执行步骤S203。
5.如权利要求3所述的基于群体智能算法和孤立森林的网络异常检测方法,其特征在于,所述捕食者算法包括如下步骤:
S211:初始化阶段,求猎食者在搜索范围内随机初始化位置xi
S212:猎食者搜索阶段,求猎食者的下一次迭代位置x(t+1)。
6.如权利要求5所述的基于群体智能算法和孤立森林的网络异常检测方法,其特征在于,所述S211中的初始化位置xi通过如下公式计算,xi=rand(1,d).*(ub-lb)+lb,0<i≤N;
其中xi是猎食者的初始位置,lb是问题变量的最小值,ub是问题变量的最大值,d是问题变量的数量,所述问题变量是指解空间向量;
为扩大解的搜索范围,引入反向竞争的思想:设x∈[lb,ub]为一个实数,则其所对应的全局反向数被定义为:
Figure FDA0003882873130000031
N+1≤i≤2N,通过上述操作得到2N个初始解。
7.如权利要求5所述的基于群体智能算法和孤立森林的网络异常检测方法,其特征在于,所述S212包括如下步骤:
S2121:求出猎食者的下一次迭代位置x(t+1),xij(t+1)=xij(t)+0.5[(2CZPpos(j)-xij(t))+(2(1-C)Zμ(j)-xij(t))],其中x(t)是当前猎食者位置,Ppos是猎物的位置,μ是猎食者位置与猎物位置的平均值,Z为自适应参数,C为平衡参数;
S2122:求出猎物的位置
Figure FDA0003882873130000032
其中kbest=round(C×2N),N为搜索代理的数量,kbest为选择猎物搜索代理的位置;
S2123:求猎物的更新位置xij(t+1),xij(t+1)=Tpos(j)+Rij(t)(Tpos(j)-xij(t));其中,x(t)是当前猎物位置,x(t+1)是猎物的下一次迭代位置,Tpos是全局最优位置;Rij是[0,1]范围内的随机数;
S2124:综合所述S2121、S2122、S2123得到猎物和猎食者的下一次迭代位置xi(t+1)的公式:
Figure FDA0003882873130000041
8.如权利要求7所述的基于群体智能算法和孤立森林的网络异常检测方法,其特征在于,所述S2121中的自适应参数Z通过如下公式计算:
Figure FDA0003882873130000042
其中
Figure FDA0003882873130000043
Figure FDA0003882873130000044
是[0,1]内的随机向量,P是
Figure FDA0003882873130000045
的索引值,R2是[0,1]内的随机数,IDX是满足条件P==0的向量
Figure FDA0003882873130000046
的索引值。
9.如权利要7所述的基于群体智能算法和孤立森林的网络异常检测方法,其特征在于,所述S2121中的平衡参数C通过如下公式计算,
Figure FDA0003882873130000047
其中,it是当前迭代次数,MaxIt是最大迭代次数;位置平均值μ通过如下公式计算,
Figure FDA0003882873130000048
10.如权利要求9所述的基于群体智能算法和孤立森林的网络异常检测方法,其特征在于,所述S2122中每个猎食者与位置平均值μ的距离Dedu(i)通过如下公式计算,
Figure FDA0003882873130000049
Figure FDA00038828731300000410
其中μ为位置平均值。
CN202211233988.7A 2022-10-10 2022-10-10 一种基于群体智能算法和孤立森林的网络异常检测方法 Pending CN115643189A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211233988.7A CN115643189A (zh) 2022-10-10 2022-10-10 一种基于群体智能算法和孤立森林的网络异常检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211233988.7A CN115643189A (zh) 2022-10-10 2022-10-10 一种基于群体智能算法和孤立森林的网络异常检测方法

Publications (1)

Publication Number Publication Date
CN115643189A true CN115643189A (zh) 2023-01-24

Family

ID=84941652

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211233988.7A Pending CN115643189A (zh) 2022-10-10 2022-10-10 一种基于群体智能算法和孤立森林的网络异常检测方法

Country Status (1)

Country Link
CN (1) CN115643189A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117057821A (zh) * 2023-08-22 2023-11-14 江苏省家禽科学研究所 一种肉鸡质量溯源的管理系统
CN117313555A (zh) * 2023-11-28 2023-12-29 南京信息工程大学 一种基于分布式存储自适应oats-ajsa改进gru湿度预测方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117057821A (zh) * 2023-08-22 2023-11-14 江苏省家禽科学研究所 一种肉鸡质量溯源的管理系统
CN117313555A (zh) * 2023-11-28 2023-12-29 南京信息工程大学 一种基于分布式存储自适应oats-ajsa改进gru湿度预测方法
CN117313555B (zh) * 2023-11-28 2024-03-08 南京信息工程大学 基于自适应oats-ajsa改进gru湿度预测方法

Similar Documents

Publication Publication Date Title
CN115643189A (zh) 一种基于群体智能算法和孤立森林的网络异常检测方法
CN109617888B (zh) 一种基于神经网络的异常流量检测方法及系统
Zhang et al. WOCDA: A whale optimization based community detection algorithm
CN112581262A (zh) 一种基于鲸鱼算法优化lvq神经网络的欺诈行为检测方法
CN109816087B (zh) 基于人工鱼群与蛙群混合算法的粗糙集属性约简的强对流天气判别方法
CN107169983B (zh) 基于交叉变异人工鱼群算法的多阈值图像分割方法
CN113269252A (zh) 一种基于改进麻雀搜索算法优化elm的电力电子电路故障诊断方法
CN109284860A (zh) 一种基于正交反向樽海鞘优化算法的预测方法
Rahman et al. Recognition of local birds of Bangladesh using MobileNet and Inception-v3
Zhang et al. Evolving neural network classifiers and feature subset using artificial fish swarm
Hendrawan et al. Machine vision optimization using nature-inspired algorithms to model sunagoke moss water status
CN113963410A (zh) 一种基于改进遗传算法的人脸识别优化方法
CN108491923B (zh) 基于改进狼群算法优化贝叶斯网络的害虫图像识别方法
CN109711460A (zh) 初始聚类中心的获取方法及装置
CN113673695B (zh) 基于新型特征自动构造的人群行为规则自动提取方法
Li et al. Weed identification based on shape features and ant colony optimization algorithm
Li et al. A novel RBF neural network design based on immune algorithm system
CN105426910B (zh) 一种基于改进abc算法与de变异策略的自适应聚类方法
Ananthi et al. Bug recognition using hybrid fuzzy logic algorithm and support vector machine classification
Zhang et al. A genetic ant colony classifier system
Ahmed et al. Swarm-based analysis for community detection in complex networks
Ghanbarzadeh Bonab An Improved Symbiotic Organisms Search for Community Detection in Social Networks
Run-Yang et al. BPNN anomaly data detection algorithm based on gray wolf algorithm to optimize K-means clustering
Yagnik et al. Optimizing Activity Recognition in Video Using Evolutionary Computation.
Ugweje et al. An Intelligence Artificial Fish Swarm Optimization Technique

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination