CN107465664B - 基于并行多人工蜂群算法和支持向量机的入侵检测方法 - Google Patents
基于并行多人工蜂群算法和支持向量机的入侵检测方法 Download PDFInfo
- Publication number
- CN107465664B CN107465664B CN201710552034.5A CN201710552034A CN107465664B CN 107465664 B CN107465664 B CN 107465664B CN 201710552034 A CN201710552034 A CN 201710552034A CN 107465664 B CN107465664 B CN 107465664B
- Authority
- CN
- China
- Prior art keywords
- bee
- honey source
- bee colony
- model
- honey
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1466—Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Evolutionary Computation (AREA)
- Computer Hardware Design (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于并行多人工蜂群算法和支持向量机的入侵检测方法,首先对原始的人工蜂群算法进行了重新设计,包括:蜜源编码方案的设计、种群的初始化设计、适应度评价函数的构造、蜜源的邻域搜索方法和招募观察蜂概率的计算,克服了算法易早熟、解的多样性差、易陷入局部最优、后期收敛速度慢等问题。其次,设计了多蜂群间的信息交流与协作机制,利用并行执行技术,给出了双环形多蜂群并行协同优化模型,用于对特征和支持向量机模型参数进行同步优化。然后,基于该协同优化模型,给出了基于并行多人工蜂群算法和支持向量机的入侵检测方法和模型。
Description
技术领域
本发明涉及网络安全技术领域,具体涉及一种基于并行多人工蜂群算法和支持向量机的入侵检测方法。
背景技术
网络入侵检测系统(network intrusion detection system,NIDS)是一种主动防御系统,能够弥补传统被动防火墙的不足,是网络安全的重要组成部分,它通过实时监视与分析网络数据包来检测与识别非法入侵计算机系统的行为,因此成为近年来的研究热点。
根据检测方法的不同,入侵检测技术可以分为两类:误用检测和异常检测。早期的检测技术研究主要集中在误用检测,经典的检测方法为模式匹配,它通过实时获取网络数据包,并将其与已知的入侵规则库进行匹配来探测入侵行为,具有较高的稳定性与较低的误报率。但是不能发现未知的攻击行为,并且需要不断更新入侵规则库,严重依赖规则库的完备性。异常检测则建立起系统的正常行为模型,对偏离正常行为的网络连接视为攻击行为,因此可以发现未知的入侵攻击。但是异常检测普遍存在检测率低、误报率高的现象。
为了改善检测系统的性能,许多智能算法、机器学习和数据挖掘算法被应用到了入侵检测中。张玲等借鉴生物免疫学原理,提出了一种基于人工免疫的检测模型,将误用检测和异常检测进行了结合。Qian等利用BP神经网络自学能力强,对未知数据集能够得到较优解的特点,提出了一种基于神经网络的入侵检测方法。入侵检测本质上是一种分类问题,汪波等针对支持向量机(Support Vector Machine,SVM)对高维非线性、小样本具有较高的分类能力,并且泛化能力强的特点,利用多目标数学规划模型和SVM构建了多分类入侵检测模型。以上几种方法一定程度上优化了检测系统的性能,但是有待进一步提升。
Hany等利用机器学习中的集成学习技术构建了检测模型,使得分类准确率可以提高到99%以上,但是这种方法依赖于分类器的个数,一般至少需要上百个分类器才能达到比较不错的效果,严重消耗计算机的计算资源,并且这种方法涉及到遗传算法和机器学习中的Adaboost技术,使得算法的整体复杂性增加。考虑到入侵检测中,实际的网络连接数据通常具有小样本、高维性、非线性,这些高维数据中含有许多冗余的特征,不仅增加了检测系统的计算复杂度,并且影响检测率的提高,因此对网络数据进行特征选择对于检测性能的提升至关重要。为此,众多学者将各种属性约减方法应用到了入侵检测系统中。Ahmad运用粒子群算法的寻优能力进行特征选择,提出了一种基于神经网络分类器的检测方法,虽然神经网络具有良好的非线性逼近能力,但是容易陷入局部最优和过拟合,泛化能力差。Gu和Li等利用粗糙集理论进行属性约减,消除冗余特征,降低了SVM分类器的计算开销。Aslahi-Shahri等利用遗传算法进行特征选择,提出了基于遗传算法和SVM分类器的检测模型。武小年等采用Fisher分和信息增益计算特征评测值,经过一次特征筛选后再对两者的交叉特征子集进行特征选择,提出了基于SVM的两级特征选择方法。Horng等通过评价每次移除一个特征前后的检测率的方式进行特征选择,提出了基于SVM的检测模型。但是,SVM的性能与模型参数的选择密切相关,在检测系统建模过程中,SVM参数和特征选择均需优化,并且两者的优化过程相互依赖,优化其中一个时就按照经验随机地确定另一个,无论哪个先优化都难以得到最优检测结果。以上几种方法忽略了两者的依赖性,限制了检测性能的进一步提高。
人工蜂群算法(Artificial Bee Colony,ABC)作为一种新的智能算法,是由Karaboga于2005年首次提出。之后Karaboga将ABC算法成功地应用于多变量的函数优化和约束优化中,取得了不错的效果。由于ABC算法原理和参数选择简单,收敛速度快,性能较好,此后,大量学者又将ABC算法及其改进算法应用于组合优化中的旅行商、工作车间调度、非线性约束条件下的工程结构设计优化、双边装配线平衡等问题,均取得了优于其他智能算法的结果。Bae等首次将ABC算法应用于入侵检测中,随后Rufai等用改进的蜂群算法进行特征选择,用SVM分类,提出了一种新的入侵检测方法,均取得了优于其他检测方法的结果,但是同样忽略了SVM参数和特征选择两个优化过程的相互依赖性,检测性能仍有很大的提升空间。
发明内容
本发明提供一种基于并行多人工蜂群算法和支持向量机的入侵检测方法,能够对网络数据特征和SVM模型参数进行同步优化,以提高检测率,降低虚警率。
为解决上述问题,本发明是通过以下技术方案实现的:
基于并行多人工蜂群算法和支持向量机的入侵检测方法,具体包括如下步骤:
步骤A.采集网络连接数据,用来对检测系统进行训练;
步骤B.将采集的训练数据集分成学习集和验证集;
步骤C.对学习集和验证集进行预处理;
步骤D.设置多蜂群协同优化模型中每个蜂群算法初始参数,对蜜蜂种群进行初始化,产生初始蜂群,即产生初始网络连接特征和SVM模型参数;
步骤E.多蜂群协同优化模型在学习集和验证集上进行不断迭代,对网络连接特征和模型参数进行同步优化,最终输出最优的蜜源位置向量,即约减的网络连接特征和SVM模型参数;
步骤F.按照输出的最优蜜源位置向量对SVM的参数进行设置,得到最终的网络入侵检测模型,至此,训练阶段结束;
步骤G.在检测阶段,对网络数据流进行实时采集,并采用同步骤C的预处理方式对采集到的数据进行预处理;
步骤H.按照训练阶段输出的最优网络连接数据特征向量,对采集到的待检测数据进行特征提取;
步骤I.将特征提取后的数据输入训练得到的SVM入侵检测分类模型,如果检测到入侵攻击,则通知网络管理员进行相应的处理。
上述步骤C具体包括如下子步骤:
步骤C1.采集到的训练集数据特征中包含有数值型和字符型特征,SVM只能处理数值型特征,对连接特征中包含的字符型特征进行数值化处理;
步骤C2.将数据特征中的每个特征进行归一化处理,避免取值范围较小的特征被取值范围较大的特征所淹没,使得每个特征都能平等地对分类结果产生影响。
上述步骤D具体包括如下子步骤:
步骤D1.设置每个蜂群算法的参数:个体数量NP,最大迭代次数MCN,每个蜜源的尝试开发次数阈值limit;
步骤D2.按照算法的蜜源编码方式和初始化策略,对优化模型中的每个蜂群算法产生初始蜜源,即初始的网络连接特征和SVM模型参数向量。
上述步骤E具体包括如下子步骤:
步骤E1.设置每个蜂群算法雇佣蜂阶段和观察蜂阶段局部搜索迭代控制变量i和j的初始值,雇佣蜂阶段开始;
步骤E2.对当前迭代蜜源进行邻域搜索;
步骤E3.如果对所有的蜜源都进行了邻域搜索,雇佣蜂阶段结束,进入观察蜂阶段。否则,转向步骤E2继续对蜜源进行邻域搜索。
步骤E4.算法进入观察蜂阶段,计算每个雇佣蜂被观察蜂选择跟随的选择概率Pi;
步骤E5.根据计算的每个选择概率Pi,按照轮盘赌机制选择一个蜜源;
步骤E6.对被选中的蜜源进行邻域搜索,邻域搜索步骤与步骤E2的领域搜索相同;
步骤E7.算法进入观察蜂阶段,如果任一蜜源的尝试开发次数达到设定的阈值后解的质量仍然没有提高,则随机生成一个蜜源替换该蜜源;
步骤E8.记忆当前最优解,判断是否达到设定的最大迭代次数,如果达到最大迭代次数,则输出全局最优解,否则转向步骤D继续进行下一次的迭代优化。
上述步骤E2具体包括如下子步骤:
步骤E21.对蜜源进行邻域搜索,在该蜜源附近产生新的蜜源;
步骤E22.从上述新蜜源中提取出数据特征向量和模型参数向量;
步骤E23.按照数据特征向量从原始数据集中提取数据,产生新的数据集,将模型参数向量的值设置到SVM中,得到SVM分类模型;
步骤E24.将特征提取后的数据集输入到SVM模型中做交叉验证,计算当前蜜源的适应度值;
步骤E25.根据计算的适应度值判断解的质量是否提高,如果新蜜源优于当前蜜源,则转向步骤E26,否则转向步骤E27;
步骤E26.用新的解代替当前解,并将当前解的邻域尝试开发次数limit置0,邻域搜索过程结束;
步骤E27.当前解的邻域尝试开发次数limit加1,邻域搜索过程结束。
与现有技术相比,本发明具有如下特点:
1.部落内部首领蜂群和部员蜂群具有不同的招募概率计算方法,首领蜂群保证了适应度值过高和过低的雇佣蜂个体都有较大的概率被观察蜂跟随,不同于部员蜂群中适应度值越高被选择的概率越大的策略,重新设计时充分利用了较差蜜源的潜在价值,扩展了解的多样性;
2.在信息交流阶段1,由于两个蜂群不同的概率计算方法,首领和部员蜂群定期交换蜜源的通信协作机制,使得部落内部每个蜂群在保持均衡进化的同时解的多样性都能够得到扩展,避免了算法早熟,克服了经典ABC算法容易陷入局部最优的缺陷,使部落朝着趋于最优的方向进化;
3.在信息交流阶段2,部落之间的通信使得首领蜂群能够对全局最优蜜源进行开发,加速了算法收敛,首领蜂群与部落间的交流协作一起,兼顾了解的多样性与收敛速度,克服了经典ABC算法后期收敛速度慢的问题,使进化从阶段1的部落趋于最优朝着群体全局最优方向发展。
附图说明
图1为本发明双环形多蜂群并行协同进化模型。
图2为本发明每个蜂群邻域搜索流程图。
图3为本发明特征选择与SVM模型参数同步优化流程图。
图4为本发明基于多蜂群协同进化模型和SVM的入侵检测模型。
具体实施方式
下面结合本发明具体实施例中的附图,对本发明的技术方案进行详细地描述。
本发明首先对原始的人工蜂群算法进行了重新设计,包括:蜜源编码方案的设计、种群的初始化设计、适应度评价函数的构造、蜜源的邻域搜索方法和招募观察蜂概率的计算,克服了算法易早熟、解的多样性差、易陷入局部最优、后期收敛速度慢等问题。其次,设计了多蜂群间的信息交流与协作机制,利用并行执行技术,给出了双环形多蜂群并行协同优化模型,用于对特征和支持向量机模型参数进行同步优化。最后,基于该协同优化模型,给出了基于并行多人工蜂群算法和支持向量机的入侵检测方法。
本发明中基于多人工蜂群算法的特征和SVM模型参数同步优化模型,可以分成六个部分:
第Ⅰ部分——蜜源编码方案的设计
基于SVM的网络异常检测系统中,SVM参数如惩罚因子C和RBF核函数参数γ的选取好坏直接影响检测模型的质量。通常,对网络数据进行特征选取时需要先确定好SVM模型参数,而对模型参数进行优化时又需要先确定对检测入侵有用的连接特征。特征选择时预先按照经验设定SVM模型参数的做法不能保证所选特征的好坏,优化SVM模型参数时固定好数据特征同样不能保证检测模型的质量。两者的优化过程具有相互依赖性,因此,提出了一种对特征和模型参数同步优化的蜜源编码方案,用式(1)表示。
其中F=(f1,f2,…,fn)表示n维网络连接数据特征组成的向量,fi为0表示第i个特征未被选择,为1表示该特征被选择;M=(C,γ)表示SVM模型参数惩罚因子C和RBF核参数γ组成的向量,ubC和lbC分别为C的上、下限,ubγ和lbγ分别为γ的上、下限。
第Ⅱ部分——种群的初始化
蜜源的编码由两部分组成,代表数据特征的向量F=(f1,f2,…,fn)采用二进制01串的离散编码方式,代表SVM模型参数的向量M=(C,γ)为连续的实数编码方式。因此,根据式(2)对每个蜜源位置向量的两部分分别进行初始化。
其中r为初始化特征控制因子,可以用r控制某一特征位被置1的概率,值越大代表初始蜜源中被选择的特征个数越多,本发明中令r=0.5。
第Ⅲ部分——适应度评价函数的构造
在基于ABC算法和SVM分类器的入侵检测系统中,蜜源的质量体现在用该蜜源进行建模后检测模型的好坏。而SVM中的交叉验证(Cross Validation,CV)是用来检验分类器性能的一种统计分析方法,它将原始数据分为训练集和验证集两部分,首先用训练集数据训练SVM分类器,然后用验证集数据测试训练得到的模型,以此来评价分类器的性能。因此可以用交叉验证准确率来评价蜂群搜索过程中蜜源的好坏。K折交叉验证(K-fold CV)将原始数据均分成K组,每一组做一次验证集,其余的K-1组作为训练集,用这K个模型在验证集上分类准确率的平均数作为最终的评价指标。该方法能够避免欠学习和过学习,最终得到的结果也相对具有说服性。
因此,本文选用K折交叉验证准确率的平均值作为蜜源xi的适应度评价函数,用式(3)表示。
第Ⅳ部分——蜜源的邻域搜索方法
生物在进化过程中基因片段的某个基因可能会由于某种原因发生突变,蜜源中二进制特征向量F与基因片段有很大的相似性。受生物中基因突变思想的启发,对蜜源中的特征向量F采用特征位突变的方式进行邻域搜索。模型参数M的邻域搜索根据式(4)的mik′策略进行。因此,雇佣蜂和被招募的观察蜂可根据式(4)对蜜源i进行贪婪邻域搜索。
其中fij′表示第i个蜜源中F向量的第j维突变后的值,mik′表示第i个蜜源中M向量的第k维邻域搜索后的值,mod2表示模2运算,k和l为随机选择的数,N为蜜源的数量。
第V部分——招募观察蜂概率的计算
经典的ABC算法中招募观察蜂的概率按照式(5)计算,这种概率计算方法使得适应度值fitxi越大的雇佣蜂个体被选择的概率越大,大部分观察蜂被该个体招募,导致整个种群快速向某个适应度值过高的个体方向进化,使种群个体的多样性变差,极易早熟,丧失了良好的进化能力。因此,本发明对经典算法的概率计算方法进行了改进,根据式(6)计算轮盘赌机制中招募观察蜂的概率Pi,式中表示N个蜜源适应度值的平均值。
这样,适应度值过高和过低的雇佣蜂个体都有较大的概率被观察蜂选择开采,扩展了解的多样性,有利于种群跳出局部最优,避免了早熟,使算法保持良好的全局寻优能力。
第VI部分——蜂群间的信息交流与协作机制
单个蜜蜂个体的行为简单,但是个体间的信息交流与协作机制使得单个种群表现出复杂的群体智能行为。按照同样的思路,单个种群在寻优方面存在开发能力不足等缺陷,可以通过多种群间的信息交流与协作,运用多线程并行技术,使整个群体克服单个种群固有的不足,表现出更为强大的优化能力。鉴于此,本发明提出了一种双环形多蜂群并行协同进化模型,并将其用于网络异常检测中特征与模型参数的同步优化,表现出了良好的性能。双环形多蜂群并行协同进化模型如图1所示。
该模型由6个蜂群组成,均分在两个环上,每个蜂群内部的执行流程如图2和3所示。为了便于描述该模型,进行如下定义:
定义1将两个环上位于同一角度的两个蜂群(蜂群1和蜂群2)合称为部落;
定义2将内环上的蜂群1称作各自部落的首领;
定义3将外环上的蜂群2称作各自部落的部员。
在每个部落中,首领蜂群采用第I到V部分重新设计的ABC算法,部员蜂群除了轮盘赌机制中招募观察蜂概率计算采用式(5)外,其他策略与首领蜂群一致。多线程并行技术保证了每个蜂群能够单独并行进化,整个群体要想取得卓越的优化性能,关键在于各个蜂群间的信息交流与协作机制,该模型各种群间的交流协作分为两个阶段:
阶段1:在该阶段蜂群的信息交流与协作只发生在每个部落内部的两个蜂群之间,部落之间相互独立,互不干扰。首领蜂群与部员蜂群每隔一定的迭代次数进行一次蜜源互换,然后首领蜂群和部员蜂群按照交换后的蜜源独立进化,如此循环进行,直到满足进入阶段2的条件。
阶段2:当整个群体执行指定次数的迭代后算法进入第2阶段,在该阶段部落内部两个蜂群间的通信停止,蜂群间的信息交流发生在不同部落中的首领蜂群之间。每隔一定的迭代次数,每个首领蜂群将自己的所有蜜源向量提交到蜜源交换区域,在蜜源交换区域中对所有首领蜂群提交的蜜源向量按照适应度评价值进行排序,选出前N(N为每个蜂群在初始化时指定的蜜源数量)个最优的蜜源分配给每个首领蜂群,首领蜂群对接收的N个蜜源进行迭代寻优,如此循环,直到满足停止条件,整个进化过程结束,从蜜源交换区域中得到最终的最优蜜源。
图4为本发明基于多蜂群协同进化模型和SVM的入侵检测模型。参照图4,本发明提出的基于并行多人工蜂群算法和支持向量机的入侵检测方法,包括如下两个阶段,具体步骤为:
阶段I、训练阶段。它包括步骤:
步骤1,训练数据集采用网络入侵检测标准数据集KDD CUP99,该数据集数据格式如表1所示,将训练集分为学习集和验证集;
表1数据连接格式
步骤2,将连接数据中的字符型特征转换成数值型,表2、3、4分别为协议类型(有3种类型)、服务类型(有70种状态)和连接状态(有11种状态)的数值化编码表。数值格式表1中最后一列代表此条网络连接是正常数据或入侵数据,令1代表正常数据,0代表入侵数据;
表2协议类型数值化表
表3服务类型数值化表
表4连接状态数值化表
步骤3,根据式(7)将每个数据特征归一化到[0,1]之间,然后再转换成SVM所要求的输入格式;
式中xi和yi分别表示归一化前后特征i的值,max(xi)和min(xi)分别表示归一化前特征i的最大值与最小值。
步骤4,图1为本发明双环形多蜂并行协同进化模型,将处理好的数据输入到该模型中对数据特征和SVM模型参数进行同步优化,以消除冗余特征,构建高质量的检测模型;
步骤41,为优化模型中的6个蜂群设置全局优化控制参数:个体数量NP=20,最大迭代次数MCN=150,每个蜜源的尝试开发次数阈值limit=25;
步骤42,按照算法的蜜源编码方式(公式1)和初始化策略(公式2),对优化模型中的每个蜂群算法产生初始蜜源,即初始的网络连接特征和SVM模型参数向量;
步骤43,图2和3为本发明多蜂群协同优化模型中每个蜂群内部特征选择与SVM模型参数同步优化执行流程,每个蜂群按照图2和3的执行流程运行算法,整个优化模型按照以上设计的蜂群间的信息交流与协作机制进行协同优化,其中蜂群间的信息交流周期设定为图2和3的一个迭代周期。
步骤5,按照优化模型输出的最优蜜源位置向量对SVM的参数进行设置,得到最终的网络入侵检测模型;
至此,训练阶段结束;
阶段II、检测阶段,它包括步骤:
步骤6,采用以上相同的预处理方式,对测试集数据进行预处理;
步骤7,按照训练阶段优化模型最终输出的最优蜜源中的特征子向量,对预处理后的测试数据进行特征提取,提取优化后保留的响应特征;
步骤8,将特征提取后的数据输入训练得到的SVM入侵检测分类模型中,如果检测到入侵攻击,则通知网络管理员进行相应的处理;
这样,检测阶段完成,整个算法结束。
需要说明的是,尽管以上本发明所述的实施例是说明性的,但这并非是对本发明的限制,因此本发明并不局限于上述具体实施方式中。在不脱离本发明原理的情况下,凡是本领域技术人员在本发明的启示下获得的其它实施方式,均视为在本发明的保护之内。
Claims (3)
1.基于并行多人工蜂群算法和支持向量机的入侵检测方法,包括训练阶段和检测阶段;其特征是,
所述训练阶段包括如下步骤:
步骤A.采集网络连接数据,用来对检测系统进行训练;
步骤B.将采集的训练数据集分成学习集和验证集;
步骤C.对学习集和验证集进行预处理;
步骤D.设置双环形多蜂群协同优化模型中每个蜂群算法初始参数,对蜜蜂种群进行初始化,产生初始蜂群,即产生初始网络连接特征和SVM模型参数;
所述双环形多蜂群协同优化模型由6个蜂群组成,均分在两个环上;将两个环上位于同一角度的第一蜂群和第二蜂群合称为部落,将内环上的第一蜂群称作各自部落的首领,将外环上的第二蜂群称作各自部落的部员;该双环形多蜂群协同优化模型各种群间的交流协作分为两个阶段:
阶段1:在该阶段蜂群的信息交流与协作只发生在每个部落内部的两个蜂群之间,部落之间相互独立,互不干扰;首领蜂群与部员蜂群每隔一定的迭代次数进行一次蜜源互换,然后首领蜂群和部员蜂群按照交换后的蜜源独立进化,如此循环进行,直到满足进入阶段2的条件;
阶段2:当整个群体执行指定次数的迭代后算法进入第2阶段,在该阶段部落内部两个蜂群间的通信停止,蜂群间的信息交流发生在不同部落中的首领蜂群之间;每隔一定的迭代次数,每个首领蜂群将自己的所有蜜源向量提交到蜜源交换区域,在蜜源交换区域中对所有首领蜂群提交的蜜源向量按照适应度评价值进行排序,选出前N个最优的蜜源分配给每个首领蜂群,首领蜂群对接收的N个蜜源进行迭代寻优,如此循环,直到满足停止条件,整个进化过程结束,从蜜源交换区域中得到最终的最优蜜源;其中N为每个蜂群在初始化时指定的蜜源数量;
步骤E.双环形多蜂群协同优化模型在学习集和验证集上进行不断迭代,对网络连接特征和SVM模型参数进行同步优化,最终输出最优的蜜源位置向量,即最优的网络连接特征向量和SVM模型参数向量;
步骤E1.设置每个蜂群算法雇佣蜂阶段和观察蜂阶段局部搜索迭代控制变量i和j的初始值,雇佣蜂阶段开始;
步骤E2.对当前迭代蜜源进行邻域搜索;
步骤E3.如果对所有的蜜源都进行了邻域搜索,雇佣蜂阶段结束,转向步骤E4进入观察蜂阶段;否则,转向步骤E2继续对蜜源进行邻域搜索;
步骤E4.进入观察蜂阶段,计算每个雇佣蜂被观察蜂选择跟随的选择概率Pi;
步骤E5.根据计算的每个选择概率Pi,按照轮盘赌机制选择一个蜜源;
步骤E6.对被选中的蜜源进行邻域搜索;
步骤E7.进入观察蜂阶段,如果任一蜜源的尝试开发次数达到设定的阈值后解的质量仍然没有提高,则随机生成一个蜜源替换该蜜源;
步骤E8.记忆当前最优解,判断是否达到设定的最大迭代次数,如果达到最大迭代次数,则输出全局最优解,否则转向步骤D继续进行下一次的迭代优化;
步骤F.按照步骤E输出的最优的SVM模型参数向量对SVM的参数进行设置,得到最终的网络入侵检测模型;
所述检测阶段包括如下步骤:
步骤G.对网络数据流进行实时采集,并采用与步骤C相同的预处理方式对采集到的待检测数据进行预处理;
步骤H.按照步骤E输出的最优的网络连接特征向量,对采集到的待检测数据进行特征提取;
步骤I.将步骤H特征提取后所得的数据输入步骤F训练得到的最终的网络入侵检测模型中,一但检测到入侵攻击,则通知网络管理员进行相应的处理。
2.根据权利要求1所述基于并行多人工蜂群算法和支持向量机的入侵检测方法,其特征是,步骤D具体包括如下子步骤:
步骤D1.设置每个蜂群算法的参数,即个体数量NP,最大迭代次数MCN,以及每个蜜源的尝试开发次数阈值limit;
步骤D2.按照预定的蜜源编码方式和初始化策略,对优化模型中的每个蜂群算法产生初始蜜源,即初始的网络连接特征和SVM模型参数。
3.根据权利要求1所述基于并行多人工蜂群算法和支持向量机的入侵检测方法,其特征是,步骤E2和步骤E6的邻域搜索的具体步骤为:
步骤E-1.对蜜源进行邻域搜索,在该蜜源附近产生新的蜜源;
步骤E-2.从上述新蜜源中提取出数据特征向量和模型参数向量;
步骤E-3.按照数据特征向量从原始数据集中提取数据,产生新的数据集,将模型参数向量的值设置到SVM中,得到SVM分类模型;
步骤E-4.将特征提取后的数据集输入到SVM模型中做交叉验证,计算当前蜜源的适应度值;
步骤E-5.根据计算的适应度值判断解的质量是否提高,如果新蜜源优于当前蜜源,则转向步骤E-6,否则转向步骤E-7;
步骤E-6.用新的解代替当前解,并将当前解的邻域尝试开发次数limit置0,邻域搜索过程结束;
步骤E-7.当前解的邻域尝试开发次数limit加1,邻域搜索过程结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710552034.5A CN107465664B (zh) | 2017-07-07 | 2017-07-07 | 基于并行多人工蜂群算法和支持向量机的入侵检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710552034.5A CN107465664B (zh) | 2017-07-07 | 2017-07-07 | 基于并行多人工蜂群算法和支持向量机的入侵检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107465664A CN107465664A (zh) | 2017-12-12 |
CN107465664B true CN107465664B (zh) | 2020-04-24 |
Family
ID=60546171
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710552034.5A Active CN107465664B (zh) | 2017-07-07 | 2017-07-07 | 基于并行多人工蜂群算法和支持向量机的入侵检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107465664B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108092989B (zh) * | 2017-12-28 | 2020-11-06 | 上海海事大学 | 一种基于智能蜂群算法的DDoS攻击检测方法 |
CN108259498B (zh) * | 2018-01-24 | 2020-06-23 | 湖南科技学院 | 一种基于人工蜂群优化的bp算法的入侵检测方法及其系统 |
CN108446562B (zh) * | 2018-03-27 | 2021-08-03 | 桂林电子科技大学 | 基于禁忌与人工蜂群双向优化支持向量机的入侵检测方法 |
CN108717492A (zh) * | 2018-05-18 | 2018-10-30 | 浙江工业大学 | 基于改进的人工蜂群算法的机械臂动力学模型辨识方法 |
CN108737429B (zh) * | 2018-05-24 | 2021-06-08 | 桂林电子科技大学 | 一种网络入侵检测方法 |
CN110113353B (zh) * | 2019-05-20 | 2021-06-22 | 桂林电子科技大学 | 一种基于cvae-gan的入侵检测方法 |
CN112327918B (zh) * | 2020-11-12 | 2023-06-02 | 大连海事大学 | 基于精英学习的多蜂群海域环境自适应搜索算法 |
CN112668688B (zh) * | 2020-12-30 | 2022-09-02 | 江西理工大学 | 一种入侵检测方法、系统、设备及可读存储介质 |
CN112990852B (zh) * | 2021-02-23 | 2024-03-29 | 杭州安恒信息技术股份有限公司 | 垃圾邮件过滤方法、装置、电子装置和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567742A (zh) * | 2010-12-15 | 2012-07-11 | 中国科学院电子学研究所 | 一种基于自适应核函数选择的支持向量机自动分类方法 |
CN103927580A (zh) * | 2014-04-25 | 2014-07-16 | 哈尔滨工程大学 | 一种基于改进人工蜂群算法的工程约束参数优化方法 |
CN104050505A (zh) * | 2013-03-11 | 2014-09-17 | 江南大学 | 一种基于带学习因子蜂群算法的多层感知器训练方法 |
CN105718943A (zh) * | 2016-01-19 | 2016-06-29 | 南京邮电大学 | 基于粒子群优化算法的特征选择方法 |
CN105930864A (zh) * | 2016-04-15 | 2016-09-07 | 杭州电子科技大学 | 一种基于abc-svm的脑电信号特征分类方法 |
CN106650914A (zh) * | 2016-12-15 | 2017-05-10 | 东华大学 | 一种基于人工蜂群算法的数据特征选择方法 |
-
2017
- 2017-07-07 CN CN201710552034.5A patent/CN107465664B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567742A (zh) * | 2010-12-15 | 2012-07-11 | 中国科学院电子学研究所 | 一种基于自适应核函数选择的支持向量机自动分类方法 |
CN104050505A (zh) * | 2013-03-11 | 2014-09-17 | 江南大学 | 一种基于带学习因子蜂群算法的多层感知器训练方法 |
CN103927580A (zh) * | 2014-04-25 | 2014-07-16 | 哈尔滨工程大学 | 一种基于改进人工蜂群算法的工程约束参数优化方法 |
CN105718943A (zh) * | 2016-01-19 | 2016-06-29 | 南京邮电大学 | 基于粒子群优化算法的特征选择方法 |
CN105930864A (zh) * | 2016-04-15 | 2016-09-07 | 杭州电子科技大学 | 一种基于abc-svm的脑电信号特征分类方法 |
CN106650914A (zh) * | 2016-12-15 | 2017-05-10 | 东华大学 | 一种基于人工蜂群算法的数据特征选择方法 |
Non-Patent Citations (2)
Title |
---|
A new feature selection model based on ID3 and bees algorithm for intrusion;adel sabry eesa;《Turkish Journal of Electrical Engineering&Computer Sciences》;20150223;全文 * |
Intrusion Detection based on Neural Networks and Artificial Bee Colony Algorithm;Quan Qian;《2014 IEEE/ACIS 13th International Conference on Computer and Information Science (ICIS)》;20140606;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN107465664A (zh) | 2017-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107465664B (zh) | 基于并行多人工蜂群算法和支持向量机的入侵检测方法 | |
CN108632279B (zh) | 一种基于网络流量的多层异常检测方法 | |
CN110070141B (zh) | 一种网络入侵检测方法 | |
CN111832647A (zh) | 异常流量检测系统及方法 | |
CN111785329B (zh) | 基于对抗自动编码器的单细胞rna测序聚类方法 | |
CN111708343B (zh) | 一种面向制造业行业现场工艺行为异常行为检测方法 | |
Yuan et al. | Sampling+ reweighting: Boosting the performance of AdaBoost on imbalanced datasets | |
CN111950622B (zh) | 基于人工智能的行为预测方法、装置、终端及存储介质 | |
CN114553475A (zh) | 一种基于网络流量属性有向拓扑的网络攻击检测方法 | |
CN110826617A (zh) | 态势要素分类方法及其模型的训练方法、装置及服务器 | |
CN117349782B (zh) | 智能数据预警决策树分析方法及系统 | |
CN112580555B (zh) | 一种自发微表情识别方法 | |
CN116484289A (zh) | 一种碳排放异常数据检测方法、终端及存储介质 | |
CN112183652A (zh) | 一种联邦机器学习环境下的边缘端偏见检测方法 | |
CN108737429B (zh) | 一种网络入侵检测方法 | |
CN108960486A (zh) | 基于灰支持向量回归机预测适应值的交互式集合进化方法 | |
Guo et al. | Construction of a neuron-fuzzy classification model based on feature-extraction approach | |
CN113469288A (zh) | 融合多个机器学习算法的高危人员预警方法 | |
CN107066468A (zh) | 一种基于遗传算法与最近邻算法的案件检索方法 | |
Baynath et al. | Machine learning algorithm on keystroke dynamics pattern | |
CN112949954A (zh) | 基于识别学习建立财务欺诈识别模型的方法 | |
CN111159569A (zh) | 一种基于用户个性化特征的社交网络用户行为预测方法 | |
Islam et al. | An approach to evaluate classifiers for automatic disease detection and classification of plant leaf | |
Shujaaddeen et al. | A New Machine Learning Model for Detecting levels of Tax Evasion Based on Hybrid Neural Network | |
CN114343665A (zh) | 一种基于图卷积空时特征融合选择的心律失常识别方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |