CN108052968A - 一种qsfla-svm的感知入侵检测方法 - Google Patents
一种qsfla-svm的感知入侵检测方法 Download PDFInfo
- Publication number
- CN108052968A CN108052968A CN201711293976.2A CN201711293976A CN108052968A CN 108052968 A CN108052968 A CN 108052968A CN 201711293976 A CN201711293976 A CN 201711293976A CN 108052968 A CN108052968 A CN 108052968A
- Authority
- CN
- China
- Prior art keywords
- population
- frog
- svm
- individual
- sub
- 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.)
- Granted
Links
Classifications
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Security & Cryptography (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Molecular Biology (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Hardware Design (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种QSFLA‑SVM的感知入侵检测方法,设置相关参数;对青蛙种群的位置进行初始化;将每个青蛙个体的位置信息传入支持向量机异常序列检测模型,将计算出的测试集分类正确率作为每个青蛙个体适应度函数值,对青蛙种群进行降序排列并对排列后的种群进行子种群划分;利用量子粒子群更新机制对每个青蛙子种群最坏个体进行更新,直到达到局部最大迭代次数;进行全局信息交换,如果达到全局最大迭代次数,则返回全局最优青蛙个体,此时该个***置信息为SVM异常序列检测模型对测试集分类取得最大正确率时参数最优值,输出最优测试集分类结果。本发明结合基于量子粒子群搜索机制的量子衍生混合蛙跳入侵检测算法和支持向量机来进行入侵检测。
Description
技术领域
本发明涉及一种QSFLA-SVM的感知入侵检测方法,属于入侵检测技术领域。
背景技术
近年来,APT攻击席卷全球,由于工控***自身存在着严重的安全问题并且关乎国家的经济发展和工业建设,很容易成为攻击的目标,一旦遭受到攻击,***无法准确识别异常情况,会对工业生产造成严重的损失。入侵检测是工业控制领域中的一个重要课题,其检测效果直接影响整个工控***的安全。基于QSFLA-SVM的感知入侵检测模型是一种对入侵检测***异常序列和行为的辨识方法。因此,国内外学者对入侵检测进行了深入的研究,取得了重要成果。
在已有的文献中效果较好的方法主要包括:1.增量式GHSOM神经网络模型的入侵检测研究:2014年杨雅辉,黄海珍,沈晴霓,吴中海.基于增量式GHSOM神经网络模型的入侵检测研究.计算机学报,2014(5):1216-1224.提出在不破坏已学***台,实现了告警的自动验证以及攻击行为能否成功地自动判定,从而达到滤除虚警的目的,使入侵检测***起到真正的预警作用;5.神经网络作为分类器,完成入侵检测:Akashdeep,Manzoor Ishfaq,Kumar Neeraj.A feature reducedintrusion detection system using ANN classifier.EXPERT SYSTEMS WITHAPPLICATIONS,2017,88:249-257.提出结合从信息增益和相关性中获得的秩来进行特征约简,完成入侵检测;6.恶意读写器发现的RFID空口入侵检测:黄伟庆,丁昶,崔越,王思叶,张艳芳.基于恶意读写器发现的RFID空口入侵检测技术.软件学报,2017:1-15.提出利用提取的参数建立基于有限状态机的RFID信号感知数据推断模型,结合自适应算法得出稳态作为依据,分析判断RFID信号的具体变化,实现基于恶意读写器的RFID空口入侵检测。
入侵检测的方法有很多,如上文列举的部分。在传统的入侵检测方法的基础上,基于智能优化算法的入侵检测效果较好,在传统的基于智能优化算法的入侵检测序列的基础上,对原有的智能优化算法进行改进,将智能优化算法与机器学习算法相结合进行入侵检测,可以提高检测精度。所以,国内外学者对智能优化算法在入侵检测中进行了深入研究,取得了重要成果。
在已有的文献中效果较好的方法主要包括:1.利用超图遗传算法的支持向量机进行参数优化和特征选择,形成高效入侵检测***:Raman M.R.Gauthama,Somu Nivethitha,Kirthivasan Kannan,Liscano Ramiro,Sriram V.S.Shankar.An efficient intrusiondetection system based on hypergraph-Genetic algorithm for parameteroptimization and feature selection in support vector machine.KNOWLEDGE-BASEDSYSTEMS,2017,134:1-12.针对支持向量机(SVM)的参数设置和特征选择,提出了一种基于超图遗传算法的自适应和鲁棒入侵检测技术;2.基于流的机器学习算法在入侵检测***中的应用:Eduardo Massato Kakihata,Helton Molina Sapia,Ronaldo ToshiakiOiakawa.Intrusion Detection System Based On Flows Using Machine LearningAlgorithms.IEEE LATIN AMERICA TRANSACTIONS,2017,15(10):1988-1993.提出了分析不同流,并将其组织起来用于机器学习的算法;3.粒子群(particle swarm optimization),多准则线性编程和支持向量机相结合的入侵检测方法:Bamakan Seyed MojtabaHosseini,Wang Huadong,Tian Yingjie,Shi Yong.An effective intrusion detectionframework based on MCLP/SVM optimized by time-varying chaos particle swarmoptimization.NEUROCOMPUTING,2016,199:90-102.通过结合粒子群,多准则线性编程和支持向量机,得到了良好的入侵检测效果;4.结合混合二进制PSO和随机森林的网络入侵检测:Malik Arif Jamal,Shahzad Waseem,Khan Farrukh Aslam.Network intrusiondetection using hybrid binary PSO and random forests algorithm.SECURITY ANDCOMMUNICATION NETWORKS,2015,8(16):2646-2660.提出将二进制PSO用于寻找更合适的属性集来对网络入侵进行分类,而随机森林作为分类器使用;5.结合模糊极小极大神经网络和粒子群优化的入侵检测***:Azad Chandrashekhar,Jha Vijay Kumar.Fuzzy min–maxneural network and particle swarm optimization based intrusion detectionsystem.Microsystem Technologies,2017,23(4):907-918.提出将模糊极小极大神经网络与粒子群优化算法相结合的入侵检测***,分类精度和分类误差作为评价参数,保证了入侵检测的有效性。
发明内容
本发明的目的是为了提供一种QSFLA-SVM的感知入侵检测方法,在传统的基于智能优化算法的入侵检测序列的基础上,对原有的智能优化算法进行改进,结合基于量子粒子群搜索机制的量子衍生混合蛙跳入侵检测算法和支持向量机(QSFLA-SVM)来进行入侵检测。
本发明的目的是这样实现的:步骤(1):设置相关参数:
聚类中心个数、青蛙种群规模、子种群数、全局最大迭代次数、局部最大迭代次数、收缩扩张因子的上限和下限;
步骤(2):随机生成种群以及相关参数初始化:
随机生成种群位置M=[M1,M2,…,Mi,…,MN],N为粒子数目,其中第i个青蛙个体可以表示为Mi=[Mi1,Mi2,…,MiD],D表示解的维度;所采用每个粒子由两个分量构成,分别代表SVM惩罚因子C和径向基核函数σ的位置,设置位置分量两个初始化的限定范围为[Xcmin,Xcmax]和[Xσmin,Xσmax];
步骤(3):适应度函数值的计算:
对于每个青蛙个体,将其位置信息Xic和Xiσ传入基于SVM的序列检测模型,在对偶支持向量机参与下,对于功能码序列进行交叉验证检测,最后计算出分类正确率作为每个青蛙个体的适应度函数值:
①接受PSO参数优化流程传递的惩罚因子C和径向基核函数参数σ,作为参数保留以待输入支持向量机模型;
②标定样本,赋予所有样本类别标签。捕获的正常功能码序列样本标签设置为+1,异常功能码序列样本标签设置为-1;
③构造对偶支持向量机模型;
④构造决策函数;
⑤根据判别函数计算SVM的分类准确率,且将该值返回量子蛙跳算法参数优化流程,作为粒子适应度计算函数F(X)的取值;
⑥根据适应度函数值,对青蛙种群进行降序排列;
⑦划分子种群。
步骤(4):种群更新:
更新公式为:
newMw=Ci-β×|Mb-Mw|×ln(1/randu5)when randu6≥0.5
newMw=Ci+β×|Mb-Mw|×ln(1/randu5)when randu6<0.5
根据更新公式对每个子种群中最坏青蛙个体进行更新进化,直到达到局部最大迭代次数;
步骤(5):全局信息交换:
将所有青蛙个体进行混合,全局迭代次数加1,生成新的青蛙种群,若未达到全局最大迭代次数,通过适应度函数,继续搜索,否则,搜索结束,记录全局最优青蛙个体,此时的全局最优极值即为所需最佳参数,并将其转换为SVM惩罚因子C和径向基核函数σ的位置,传入基于SVM的入侵检测模型对测试序列进行检测,输出最优测试集分类结果。
本发明还包括这样一些结构特征:
1.步骤(4)具体是:
让子种群中最坏青蛙个体朝着子种群中最好青蛙个体移动,得到新的青蛙个体newMw;计算新的青蛙个体newMw的适应度函数值,如果适应度函数值大于Mw,则用newMw替换Mw;否则,将Mb替换为Mg,重新更新最坏青蛙个体,如果仍然没有改进,则在解空间中随机产生一个青蛙个体替换Mw;这个局部搜索过程会继续循环进行,直到达到最大局部更新代数。
2.所述步骤(5)在局部搜索完成后,需要将整个青蛙种群中所有青蛙个体进行混合,并重新排序,即进行全局信息交换,然后重新划分子种群,进行局部搜索,如此循环,直到达到全局迭代次数,最后输出最优测试集分类结果。
与现有技术相比,本发明的有益效果是:a.本发明在种群初始化时,种群直接使用实数编码,使种群初始化更加简单。并且由于本发明主要使用QSFLA-SVM的感知入侵模型对异常序列进行目标检测,设定每个粒子由两个分量构成,分别代表SVM惩罚因子C和径向基核函数σ的位置,设置位置分量两个初始化的限定范围为[Xcmin,Xcmax]和[Xσmin,Xσmax]。b.已有的智能优化算法中常用的适应度函数主要有基于类内信息的适应度函数和基于类内类间信息的适应度函数。基于类内信息的适应度函数由于未考虑类间信息导致入侵检测的检测结果较差。因此,为让适应度函数可以更加准确地评价青蛙位置的好坏,本发明结合SVM的二分类模型,将训练集样本提取出的特征向量映射到高维空间,并选取最优超平面将以划分,最终返回模型之于测试集样本得到的分类准确率作为适应度函数的取值。c.已有的量子粒子群算法的量子搜索机制,在搜索时,需要通过粒子的自身历史最好位置和整个粒子群最好位置,求得局部吸引点,并结合粒子群的平均最好位置对粒子的位置进行更新。本发明结合混合蛙跳算法的特点,对其中量子粒子群中的局部吸引点和更新公式进行相应的改变,即通过子种群中最好青蛙个体和整个青蛙种群最好青蛙个体求得局部吸引点,同时不再需要计算整个种群的平均最好位置来更新个体,而是同传统混合蛙跳算法一样,使用子种群最好青蛙个体更新子种群最坏青蛙个体,如果没有改进,则使用整个青蛙种群的最好位置青蛙重新更新子种群最坏青蛙个体,如果仍然没有改进,则随机产生一个青蛙个体来替换子种群最坏青蛙个体。具有快速收敛性、强大的全局搜索能力和稳定较好的特点。
附图说明
图1是本发明方法的流程图;
图2是本发明和PSO-SVM对数据集1分类适应度函数值变化曲线;
图3是本发明对数据集1训练集的分类结果;
图4是PSO-SVM对数据集1测试集的分类结果;
图5是本发明对数据集1测试集的分类结果;
图6是本发明和PSO-SVM对数据集2分类适应度函数值变化曲线;
图7是本发明对数据集2训练集的分类结果;
图8是PSO-SVM对数据集2测试集的分类结果;
图9是本发明对数据集2测试集的分类结果;
图10是本发明和PSO-SVM对数据集3分类适应度函数值变化曲线;
图11是本发明对数据集3训练集的分类结果;
图12是PSO-SVM对数据集3测试集的分类结果;
图13是本发明对数据集3测试集的分类结果。
具体实施方式
下面结合附图与具体实施方式对本发明作进一步详细描述。
本发明包括如下步骤:
(1)设置相关参数:聚类中心个数,青蛙种群规模,子种群数,全局最大迭代次数,局部最大迭代次数,收缩扩张因子的上限和下限。
(2)随机生成种群以及相关参数初始化,随机生成种群位置M=[M1,M2,…,MN],N为粒子数目,其中第i个青蛙个体可以表示为Mi=[Mi1,Mi2,…,MiD],D表示解的维度。这里采用每个粒子由两个分量构成,分别代表SVM惩罚因子C和径向基核函数σ的位置,设置位置分量两个初始化的限定范围为[Xcmin,Xcmax]和[Xσmin,Xσmax];
(3)适应度函数值的计算:对于每个青蛙个体,将其位置信息Xic和Xiσ传入基于SVM的序列检测模型。在对偶支持向量机参与下,对于功能码序列进行交叉验证检测,最后计算出分类正确率作为每个青蛙个体的适应度函数值。①接受PSO参数优化流程传递的惩罚因子C和径向基核函数参数σ,作为参数保留以待输入支持向量机模型;②标定样本,赋予所有样本类别标签。捕获的正常功能码序列样本标签设置为+1,异常功能码序列样本标签设置为-1;③构造对偶支持向量机模型;④构造决策函数;⑤根据判别函数计算SVM的分类准确率,且将该值返回量子蛙跳算法参数优化流程,作为粒子适应度计算函数F(X)的取值;⑥根据适应度函数值,对青蛙种群进行降序排列;⑦划分子种群。
(4)种群更新:根据更新公式,
newMw=Ci-β×|Mb-Mw|×ln(1/randu5)when randu6≥0.5
newMw=Ci+β×|Mb-Mw|×ln(1/randu5)when randu6<0.5
对每个子种群中最坏青蛙个体进行更新进化,直到达到局部最大迭代次数;
(5)全局信息交换:将所有青蛙个体进行混合,全局迭代次数加1,生成新的青蛙种群,若未达到全局最大迭代次数,通过适应度函数,继续搜索,否则,搜索结束,记录全局最优青蛙个体,此时的全局最优极值即为所需最佳参数,并将其转换为SVM惩罚因子C和径向基核函数σ的位置,传入基于SVM的入侵检测模型对测试序列进行检测,输出最优测试集分类结果。
本发明还可以包括:
1、在步骤(1)中参照青蛙种群需要采用基于聚类中心的编码方式。假设SVM所需参数维度为k,种群规模为N,同时青蛙种群M被定义。
2、在步骤(2)中使用实数编码,使种群初始化更加简单。并且由于本文主要使用QSFLA-SVM的感知入侵模型对异常序列进行目标检测,需要设定每个粒子由两个分量构成,分别代表SVM惩罚因子C和径向基核函数σ的位置,设置位置分量两个初始化的限定范围为[Xcmin,Xcmax]和[Xσmin,Xσmax]。
3、步骤(3)为了寻求结构化风险最小来提高学习机泛化能力,实现经验风险和置信范围的最小化,从而达到在统计样本量较少的情况下,亦能获得良好统计规律的目的,采用类间信息差异最大值的适应度函数来描述青蛙位置的好坏。
4、所述步骤(3)中将全局最优值转换为SVM惩罚因子C和径向基核函数σ的位置,传入基于SVM的入侵检测模型对测试序列进行检测。
5、在步骤(3)中接受PSO参数优化流程传递的惩罚因子C和径向基核函数参数σ,作为参数保留以待输入支持向量机模型并标定样本,赋予所有样本类别标签。捕获的正常功能码序列样本标签设置为+1,异常功能码序列样本标签设置为-1,构造对偶支持向量机模型和决策函数。根据判别函数计算SVM的分类准确率,且将该值返回量子蛙跳算法参数优化流程,作为粒子适应度计算函数F(X)的取值。
6、步骤(3)中根据适应度函数值,对青蛙种群进行降序排列,划分子种群。
7、步骤(4)让子种群中最坏青蛙个体朝着子种群中最好青蛙个体移动,得到新的青蛙个体newMw。计算新的青蛙个体newMw的适应度函数值,如果适应度函数值大于Mw,则用newMw替换Mw,否则,将Mb替换为Mg,重新更新最坏青蛙个体,如果仍然没有改进,则在解空间中随机产生一个青蛙个体替换Mw。这个局部搜索过程会继续循环进行,直到达到最大局部更新代数。
8、所述步骤(5)在局部搜索完成后,需要将整个青蛙种群中所有青蛙个体进行混合,并重新排序,即进行全局信息交换,然后重新划分子种群,进行局部搜索,如此循环,直到达到全局迭代次数,最后输出最优测试集分类结果。
下面结合附图,给出本发明的具体实施例:结合图1,本发明的具体步骤如下:
(1)种群初始化:
通过参照青蛙种群需要采用基于聚类中心的编码方式。假设SVM所需参数维度为k,种群规模为N,青蛙种群M可以定义为:
其中cij(1≤i≤N,1≤j≤k)表示第i个青蛙个体上的第j个参数的数值。
在基于QSFLA-SVM的感知入侵模型中,种群可以直接使用实数编码,使种群初始化更加简单。并且由于本文主要使用QSFLA-SVM的感知入侵模型对异常序列进行目标检测,需要设定每个粒子由两个分量构成,分别代表SVM惩罚因子C和径向基核函数σ的位置,设置位置分量两个初始化的限定范围为[Xcmin,Xcmax]和[Xσmin,Xσmax]。
(2)适应度函数:
青蛙个体采用基于参数维度的编码,支持向量机(support vector machine)是一种分类算法,它将数据空间中的向量划分到不同的类中,要求特征相近的向量划分为同一类,特征差别大的划分到不同的类使得类间差异性尽可能大。因此,本文采用基于支持向量机的入侵检测模型作为适应度函数来描述青蛙位置的好坏。通过寻求结构化风险最小来提高学习机泛化能力,实现经验风险和置信范围的最小化,从而达到在统计样本量较少的情况下,亦能获得良好统计规律的目的。通俗来讲,它是一种二分类模型,也可扩展为多分类模型,其基本模型定义为特征空间上的间隔最大的线性分类器,即支持向量机的学习策略便是间隔最大化,最终可转化为一个凸二次规划问题的求解。
①记录传入惩罚因子及径向基核函数参数值
径向基核函数如下:
计算出的传入惩罚因子及径向基核函数参数值,为下一步构造的支持向量机模型使用。
②构造支持向量机模型
根据传入的惩罚因子及径向基核函数参数值,构造支持向量机模型,即
求得最优解
③构造决策函数
选择a*的一个正分量计算
构造决策函数。
(3)新的搜索机制:
随机生成种群以及相关参数初始化与传统的混合蛙跳算法相同,在基于QSFLA-SVM的感知入侵模型中,随机生成种群位置M=[M1,M2,…,MN],N为粒子数目,其中第i个青蛙个体可以表示为Mi=[Mi1,Mi2,…,MiD],D表示解的维度。这里采用每个粒子由两个分量构成,分别代表SVM惩罚因子C和径向基核函数σ的位置,设置位置分量两个初始化的限定范围为[Xσmin,Xσmax]和[Xσmin,Xσmax]。利用适应度函数评价青蛙位置的好坏,并根据适应度函数值对青蛙种群进行降序排列。接着将整个种群划分为多个子种群,子种群中的青蛙按照一定的搜索策略进行局部搜索,在所有子种群均完成局部搜索后,混合所有青蛙,重新排序完成全局信息交换。
①量子粒子群算法的数学模型
将整个粒子种群定义为M=[M1,M2,…,MN],其中N表示粒子种群包含的粒子的个数,第i个粒子定义为Mi=[Mi1,Mi2,…,MiD],D表示解的维度。在传统粒子群算法中,每个粒子都记录了它自身历史最好位置和移动速度,对于第i个粒子,它的自身历史最好位置定义为Pi=[Pi1,Pi2,…,PiD],它的移动速度定义为Vi=[Vi1,Vi2,…,ViD]。同时,将整个粒子种群中,最好的粒子定义为Mg=[Mg1,Mg2,…,MgD]。迭代次数为t+1时,第i个粒子的速度和位置的更新公式分别为:
式中,c1,c2是两个正常数,和表示区间0到1内均匀分布的随机数。
Clerc等指出,为了确保整个算法的收敛,每个粒子都要朝着该粒子的局部吸引点移动。对于第i个粒子,它的局部吸引点Ci=[Ci1,Ci2,…,CiD]定义为:
而对于量子粒子群算法来说,实质上就是让粒子具有量子行为。在时间—空间结构中,一个粒子的量子状态需要通过波函数来描绘。在三维空间下,对于每一个粒子,它的波函数表示如下:
|ψ|2dxdydz=Pdxdydz
式中,P表示在时刻t,粒子在体积元dxdydz被发现的概率。也就是说,|ψ|2表示概率密度函数,满足以下条件:
通过上面的公式,建立薛定谔方程,并通过求解方程,得到归一化波函数:
因此,概率密度函数P(y)和分布函数F可以表示为:
式中,表示分布函数的标准方差,它可以确定粒子的搜索范围。利用蒙特卡洛方法,模拟粒子从量子态到经典态的坍塌过程,首先定义:
然后,用s替换概率密度函数P(y),得到:
u=e-2y/L
式中,u是区间0到1内均匀分布的随机数。
因此,第i个粒子的第j维上的位置更新公式,如下:
为了评价整个种群的平均最好位置mbest被定义:
结合公式(4-13),的计算公式如下:
所以,最终粒子的位置更新公式为:
式中,β称为收缩扩张因子,主要控制算法的收敛速度。
②量子粒子群算法的搜索机制
整体通过上一节的公式推导,得到量子粒子群算法中,粒子的位置更新公式上一节中已给出。对于量子粒子群算法,整个粒子种群M=[M1,M2,…,MN]中,粒子的位置更新,不再需要变量移动速度,而是通过如下公式进行更新:
式中,randu1和randu2是两个0到1区间内均匀分布的随机数,表示局部吸引点,mbest为整个种群的平均最好位置。β为收缩扩张因子,通常β的大小,随着迭代次数的增加,线性减小。
式中,t为当前局部迭代次数,Maxtime为最大局部迭代次数,Mmax和Mmin分别为β线性减小的上限和下限。
(4)更新搜索机制:
新的搜索机制的主要思想来源于量子粒子群算法的量子搜索机制,但是在量子粒子群算法中,需要通过粒子的自身历史最好位置和整个粒子群最好位置,求得局部吸引点,并结合粒子群的平均最好位置对粒子的位置进行更新。而混合蛙跳算法与粒子群算法的搜索机制完全不同,因此这种计算方法不再适用,所以本文结合混合蛙跳算法的特点,对其中量子粒子群中的局部吸引点和更新公式进行相应的改变,即通过子种群中最好青蛙个体和整个青蛙种群最好青蛙个体求得局部吸引点,同时不再需要计算整个种群的平均最好位置来更新个体,而是同传统混合蛙跳算法一样,首先使用子种群最好青蛙个体更新子种群最坏青蛙个体,如果没有改进,则使用整个青蛙种群的最好位置青蛙重新更新子种群最坏青蛙个体,如果仍然没有改进,则随机产生一个青蛙个体来替换子种群最坏青蛙个体。
对于第i子种群,定义子种群最坏的青蛙个体为Mw,子种群中最好的青蛙个体为Mb,整个青蛙种群最好的青蛙个体为Mg,则该子种群的局部吸引点Ci为:
式中,randu3和randu4是区间0到1内均匀分布的随机数。
让子种群中最坏青蛙个体朝着子种群中最好青蛙个体移动,得到新的青蛙个体newMw,具体的更新公式为:
newMw=Ci-β×|Mb-Mw|×ln(1/randu5)when randu6≥0.5
newMw=Ci+β×|Mb-Mw|×ln(1/randu5)when randu6<0.5
式中,randu5和randu6是区间0到1内均匀分布的随机数,β为收缩扩张因子,是除了种群规模和迭代次数外,唯一的参数,能用来调节算法的收敛速度,通常随着迭代次数增加,线性减小。
式中,t为当前局部迭代次数,Maxtime为最大局部迭代次数,Mmax和Mmin分别为β线性减小的上限和下限。
计算新的青蛙个体newMw的适应度函数值,如果适应度函数值大于Mw,则用newMw替换Mw,否则,将Mb替换为Mg,重新更新最坏青蛙个体,如果仍然没有改进,则在解空间中随机产生一个青蛙个体替换Mw。这个局部搜索过程会继续循环进行,直到达到最大局部更新代数。
局部搜索完成后,需要将整个青蛙种群中所有青蛙个体进行混合,并重新排序,即进行全局信息交换,然后重新划分子种群,进行局部搜索,如此循环,直到达到全局迭代次数。
根据工业控制***(Industrial Control System,ICS)逻辑架构,搭建实验环境架构。其中,监控与数据采集(Supervisory Control And Data Acquisition,SCADA)服务端由组态软件模拟,可编程逻辑控制器(Programmable Logic Controller,PLC)为嵌入式PLC设备,RTU由电机模拟,SCADA服务端与PLC之间的通信使用Modbus协议,PLC和电机之间直接由高低电平控制。入侵检测***部署在SCADA服务端与PLC连接的链路上。通过在组态软件中编程,实现对PLC设备的自动化控制。期间,组态软件模拟攻击源对重要控制器PLC发送恶意流量,模拟电机的相关操作和ICS***控制网络环境。***运行时抓取网络中的ModbusTCP通讯流量,剔除三次握手,寄存器地址信息,寄存器数据相关信息,可进一步剔除服务器端响应分组,剩余捕获通讯流量可供实验分析。
本发明的实验数据集来源于仿真实验环境模拟因感染发送恶意流量取得的500条合法功能码序列和500条异常功能码序列,将从合法序列和异常序列中各选出100条作为第一组实验的训练集,从剩余合法数据序列和异常序列中随机选择50条合法数据序列和50条异常数据序列作为第一组实验的测试集。同样,第二组实验和第三组实验所用的数据集也是如此,只不过是在调整模型参数之后随机生成的。其中对于本发明设置算法全局迭代次数为10次,局部迭代次数为2,青蛙种群空间为10,也设计了PSO-SVM异常检测模型与其进行验证对比。
第一组实验是对第一个数据集进行入侵检测的实验。图1是本发明和PSO-SVM对数据集1测试集进行分类的适应度函数值变化曲线;图2是数据集1训练集分类结果,在该图像我们可以看出红色代表着对训练集进行分类后的标签,蓝色代表着对训练集分类前的标签,每一个样本分类后的红色标签与分类前的蓝色标签完全重合,表示对训练集分类的正确率到达了100%;图3是PSO-SVM算法对数据集1测试集分类结果;图4是QSFLA-SVM对数据集1测试集分类结果。两幅图进行对比我们可以发现,本发明提出的QSFLA-SVM算法与PSO-SVM算法相比,出现的蓝色标签更少,表示经过本发明分类后,有更多的样本得到了正确分类,因此本算法与PSO-SVM相比具有更高的准确率。从实验结果可以看出,在量子衍生蛙跳迭代寻优的过程中,适应度值可以较快的收敛,效率较高,该测试集采用本发明进行分类准确率为98%,验证了基于QSFLA-SVM的模型具有较强的学习能力和检测准确的特点。
表1给出了图像1中适应度函数值变化;表2给出了本发明和PSO-SVM对数据集1分类相关参数值变化。
表1图像1中适应度函数值变化
迭代次数 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
QSFLA-SVM | 0.940 | 0.950 | 0.950 | 0.950 | 0.960 | 0.960 | 0.970 | 0.970 | 0.980 | 0.980 |
PSO-SVM | 0.320 | 0.500 | 0.720 | 0.720 | 0.720 | 0.720 | 0.910 | 0.910 | 0.910 | 0.910 |
表2本发明和PSO-SVM对数据集1分类参数值变化
为更加客观真实验证本发明的适应性给出第2组实验和第3组实验,第二组实验是对第二个数据集进行入侵检测的实验。图5是本发明和PSO-SVM对数据集2测试集进行分类的适应度函数值变化曲线;图6是数据集2训练集分类结果;图7是PSO-SVM算法对数据集2测试集分类结果;图8是QSFLA-SVM对数据集2测试集分类结果。两幅图进行对比我们可以发现,与数据集1中测试集分类结果相比,对于数据集2中的测试集进行分类时,PSO-SVM的分类结果明显出现了更多分类后的结果与分类前不一致现象,而与之相比本发明提出的QSFLA-SVM依然保持着较高的正确率从实验结果可以看出,在迭代寻优的过程中,该测试集采用本发明进行分类准确率为92%,与PSO-SVM相比收敛速度更快,准确率更高。进一步验证了本发明具有良好的适应性。
表3给出了图像5中适应度函数值变化;表4给出了本发明和PSO-SVM对数据集2分类相关参数值变化。
表3图像5中适应度函数值变化
迭代次数 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
QSFLA-SVM | 0.840 | 0.910 | 0.910 | 0.910 | 0.920 | 0.920 | 0.920 | 0.920 | 0.920 | 0.920 |
PSO-SVM | 0.730 | 0.730 | 0.730 | 0.730 | 0.730 | 0.730 | 0.750 | 0.770 | 0.770 | 0.770 |
表4本发明和PSO-SVM对数据集2分类参数值变化
第三组实验是对第三个数据集进行入侵检测的实验。图9是本发明和PSO-SVM对数据集3测试集进行分类的适应度函数值变化曲线;图10是数据集3训练集分类结果;图11是PSO-SVM算法对数据集3测试集分类结果;图12是QSFLA-SVM对数据集3测试集分类结果。从这两幅图实验结果,可以看出本发明提出的QSFLA-SVM的模型具有更好的分类结果,进一步证明了本发明的适应性和优越性。从实验结果可以看出,在对该测试集集进行分类过程中,本发明提出的基于QSFLA-SVM的模型在相同的迭代次数下可以较快程度收敛,有更高的准确率。表5给出了图像1中适应度函数值变化;表6给出了本发明和PSO-SVM对数据集3分类相关参数值变化。
表5图像9中适应度函数值变化
迭代次数 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
QSFLA-SVM | 0.970 | 0.970 | 0.970 | 0.970 | 0.970 | 0.970 | 0.970 | 0.980 | 0.980 | 0.980 |
PSO-SVM | 0.500 | 0.500 | 0.500 | 0.500 | 0.500 | 0.500 | 0.500 | 0.900 | 0.900 | 0.900 |
表6本发明和PSO-SVM对数据集3分类参数值变化
通过对适应度函数值变化和本发明、PSO-SVM对数据集分类参数值变化的实验分析可以得出,本发明基于QSFLA-SVM的感知入侵模型,具有快速收敛性、强大的全局搜索能力和稳定较好的特点。
综上,本发明提供的是一种QSFLA-SVM的感知入侵检测模型。包括如下步骤:(1)设置相关参数包括青蛙位置维度,青蛙种群规模,全局迭代次数和局部迭代次数和收缩扩张因子的上限和下限(2)对青蛙种群的位置进行初始化,每个粒子的位置包括SVM惩罚因子C和径向基核函数σ;(3)将每个青蛙个体的位置信息传入支持向量机(Support VectorMachine,SVM)异常序列检测模型,将计算出的测试集分类正确率作为每个青蛙个体适应度函数值,根据适应度函数值,对青蛙种群进行降序排列并对排列后的种群进行子种群划分;(4)利用量子粒子群更新机制对每个青蛙子种群最坏个体进行更新,直到达到局部最大迭代次数;(5)进行全局信息交换,如果达到全局最大迭代次数,则返回全局最优青蛙个体,此时该个***置信息为SVM异常序列检测模型对测试集分类取得最大正确率时参数最优值,输出最优测试集分类结果。本发明为解决PSO-SVM入侵检测模型中,粒子群算法收敛性差,全局搜索能力弱,易陷入局部最优值的缺陷,提出采用量子混合蛙跳算法(Quantum-inspired Shuffled Frog Leaping Algorithm,QSFLA)结合SVM对异常序列进行检测有效的提高了算法对于SVM所需参数最优值的搜索能力,在一定程度上避免了参数值陷入局部最优解的异常情况,并且为了进一步提高QSFLA快速收敛性、全局搜索能力和稳定性的特点,采用结合量子粒子群的搜索机制,对其中量子粒子群中的局部吸引点和更新公式进行相应的改变,即通过子种群中最好青蛙个体和整个青蛙种群最好青蛙个体求得局部吸引点,同时不再需要计算整个种群的平均最好位置来更新个体,而是同传统混合蛙跳算法一样,首先使用子种群最好青蛙个体更新子种群最坏青蛙个体,如果没有改进,则使用整个青蛙种群的最好位置青蛙重新更新子种群最坏青蛙个体,如果仍然没有改进,则随机产生一个青蛙个体来替换子种群最坏青蛙个体。并通过与PSO-SVM算法的对比实验,验证改进的算法能有效地提高检测精度和收敛速度。通过较小种群规模和较少全局最大搜索次数的实验,进一步验证了算法的收敛速度快,即在较小的种群规模和较少的全局最大搜索次数即可收敛至全局最优解附近。
Claims (3)
1.一种QSFLA-SVM的感知入侵检测方法,其特征在于:步骤如下:
步骤(1):设置相关参数:
聚类中心个数、青蛙种群规模、子种群数、全局最大迭代次数、局部最大迭代次数、收缩扩张因子的上限和下限;
步骤(2):随机生成种群以及相关参数初始化:
随机生成种群位置M=[M1,M2,…,Mi,…,MN],N为粒子数目,其中第i个青蛙个体可以表示为Mi=[Mi1,Mi2,…,MiD],D表示解的维度;所采用每个粒子由两个分量构成,分别代表SVM惩罚因子C和径向基核函数σ的位置,设置位置分量两个初始化的限定范围为[Xcmin,Xcmax]和[Xσmin,Xσmax];
步骤(3):适应度函数值的计算:
对于每个青蛙个体,将其位置信息Xic和Xiσ传入基于SVM的序列检测模型,在对偶支持向量机参与下,对于功能码序列进行交叉验证检测,最后计算出分类正确率作为每个青蛙个体的适应度函数值:
①接受PSO参数优化流程传递的惩罚因子C和径向基核函数参数σ,作为参数保留以待输入支持向量机模型;
②标定样本,赋予所有样本类别标签。捕获的正常功能码序列样本标签设置为+1,异常功能码序列样本标签设置为-1;
③构造对偶支持向量机模型;
④构造决策函数;
⑤根据判别函数计算SVM的分类准确率,且将该值返回量子蛙跳算法参数优化流程,作为粒子适应度计算函数F(X)的取值;
⑥根据适应度函数值,对青蛙种群进行降序排列;
⑦划分子种群。
步骤(4):种群更新:
更新公式为:
newMw=Ci-β×|Mb-Mw|×ln(1/randu5)when randu6≥0.5
newMw=Ci+β×|Mb-Mw|×ln(1/randu5)when randu6<0.5
根据更新公式对每个子种群中最坏青蛙个体进行更新进化,直到达到局部最大迭代次数;
步骤(5):全局信息交换:
将所有青蛙个体进行混合,全局迭代次数加1,生成新的青蛙种群,若未达到全局最大迭代次数,通过适应度函数,继续搜索,否则,搜索结束,记录全局最优青蛙个体,此时的全局最优极值即为所需最佳参数,并将其转换为SVM惩罚因子C和径向基核函数σ的位置,传入基于SVM的入侵检测模型对测试序列进行检测,输出最优测试集分类结果。
2.根据权利要求1所述的一种QSFLA-SVM的感知入侵检测方法,其特征在于:步骤(4)具体是:
让子种群中最坏青蛙个体朝着子种群中最好青蛙个体移动,得到新的青蛙个体newMw;计算新的青蛙个体newMw的适应度函数值,如果适应度函数值大于Mw,则用newMw替换Mw;否则,将Mb替换为Mg,重新更新最坏青蛙个体,如果仍然没有改进,则在解空间中随机产生一个青蛙个体替换Mw;这个局部搜索过程会继续循环进行,直到达到最大局部更新代数。
3.根据权利要求2所述的一种QSFLA-SVM的感知入侵检测方法,其特征在于:所述步骤(5)在局部搜索完成后,需要将整个青蛙种群中所有青蛙个体进行混合,并重新排序,即进行全局信息交换,然后重新划分子种群,进行局部搜索,如此循环,直到达到全局迭代次数,最后输出最优测试集分类结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711293976.2A CN108052968B (zh) | 2017-12-08 | 2017-12-08 | 一种qsfla-svm的感知入侵检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711293976.2A CN108052968B (zh) | 2017-12-08 | 2017-12-08 | 一种qsfla-svm的感知入侵检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108052968A true CN108052968A (zh) | 2018-05-18 |
CN108052968B CN108052968B (zh) | 2021-11-12 |
Family
ID=62122961
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711293976.2A Active CN108052968B (zh) | 2017-12-08 | 2017-12-08 | 一种qsfla-svm的感知入侵检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108052968B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108494807A (zh) * | 2018-05-29 | 2018-09-04 | 广西电网有限责任公司 | 基于云计算的下一代关键信息基础设施网络入侵检测*** |
CN108874927A (zh) * | 2018-05-31 | 2018-11-23 | 桂林电子科技大学 | 基于超图和随机森林的入侵检测方法 |
CN110210533A (zh) * | 2019-05-20 | 2019-09-06 | 清华大学深圳研究生院 | 基于最大覆盖位置问题的图片组地理定位方法 |
CN110263971A (zh) * | 2019-05-14 | 2019-09-20 | 西安理工大学 | 基于支持向量机的超短期风电功率组合预测方法 |
CN110458054A (zh) * | 2019-07-26 | 2019-11-15 | 哈尔滨工业大学 | 一种极化sar图像停泊舰船检测方法 |
CN111586051A (zh) * | 2020-05-08 | 2020-08-25 | 清华大学 | 一种基于超图结构质量优化的网络异常检测方法 |
CN111654874A (zh) * | 2020-06-03 | 2020-09-11 | 枣庄学院 | 一种无线传感网异常检测方法 |
CN113010884A (zh) * | 2021-02-23 | 2021-06-22 | 重庆邮电大学 | 一种入侵检测***中的实时特征过滤方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050049985A1 (en) * | 2003-08-28 | 2005-03-03 | Mangasarian Olvi L. | Input feature and kernel selection for support vector machine classification |
CN102750551A (zh) * | 2012-06-18 | 2012-10-24 | 杭州电子科技大学 | 一种粒子寻优下基于支持向量机的高光谱遥感分类方法 |
CN104572589A (zh) * | 2015-01-12 | 2015-04-29 | 西南大学 | 基于改进型量子粒子群算法的电子鼻参数同步优化算法 |
CN104601565A (zh) * | 2015-01-07 | 2015-05-06 | 天津理工大学 | 一种智能优化规则的网络入侵检测分类方法 |
US20160321559A1 (en) * | 2013-06-28 | 2016-11-03 | D-Wave Systems Inc. | Systems and methods for quantum processing of data |
CN106445881A (zh) * | 2016-09-21 | 2017-02-22 | 景德镇陶瓷大学 | 一种基于多层次信息反馈的多目标混合蛙跳算法 |
CN106952183A (zh) * | 2017-04-24 | 2017-07-14 | 武汉大学 | 一种基于粒子群优化最小二乘支持向量机的短期负荷预测方法 |
-
2017
- 2017-12-08 CN CN201711293976.2A patent/CN108052968B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050049985A1 (en) * | 2003-08-28 | 2005-03-03 | Mangasarian Olvi L. | Input feature and kernel selection for support vector machine classification |
CN102750551A (zh) * | 2012-06-18 | 2012-10-24 | 杭州电子科技大学 | 一种粒子寻优下基于支持向量机的高光谱遥感分类方法 |
US20160321559A1 (en) * | 2013-06-28 | 2016-11-03 | D-Wave Systems Inc. | Systems and methods for quantum processing of data |
CN104601565A (zh) * | 2015-01-07 | 2015-05-06 | 天津理工大学 | 一种智能优化规则的网络入侵检测分类方法 |
CN104572589A (zh) * | 2015-01-12 | 2015-04-29 | 西南大学 | 基于改进型量子粒子群算法的电子鼻参数同步优化算法 |
CN106445881A (zh) * | 2016-09-21 | 2017-02-22 | 景德镇陶瓷大学 | 一种基于多层次信息反馈的多目标混合蛙跳算法 |
CN106952183A (zh) * | 2017-04-24 | 2017-07-14 | 武汉大学 | 一种基于粒子群优化最小二乘支持向量机的短期负荷预测方法 |
Non-Patent Citations (4)
Title |
---|
CHEN CHENG 等: "Quantum-Inspired Shuffled Frog Leaping Algorithm for Spectrum Sensing in Cooperative Cognitive Radio Network", 《SPRINGER》 * |
XINGMEI WANG 等: "Underwater sonar image detection: A combination of non-local spatial information and quantum-inspired shuffled frog leaping algorithm", 《PLOS》 * |
向昌盛 等: "PSO-SVM在网络入侵检测中的应用", 《计算机工程与设计》 * |
唐德玉 等: "基于量子粒子群搜索策略的混合蛙跳算法", 《计算机工程与应用》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108494807A (zh) * | 2018-05-29 | 2018-09-04 | 广西电网有限责任公司 | 基于云计算的下一代关键信息基础设施网络入侵检测*** |
CN108874927A (zh) * | 2018-05-31 | 2018-11-23 | 桂林电子科技大学 | 基于超图和随机森林的入侵检测方法 |
CN110263971A (zh) * | 2019-05-14 | 2019-09-20 | 西安理工大学 | 基于支持向量机的超短期风电功率组合预测方法 |
CN110210533A (zh) * | 2019-05-20 | 2019-09-06 | 清华大学深圳研究生院 | 基于最大覆盖位置问题的图片组地理定位方法 |
CN110210533B (zh) * | 2019-05-20 | 2021-01-19 | 清华大学深圳研究生院 | 基于最大覆盖位置问题的图片组地理定位方法 |
CN110458054A (zh) * | 2019-07-26 | 2019-11-15 | 哈尔滨工业大学 | 一种极化sar图像停泊舰船检测方法 |
CN110458054B (zh) * | 2019-07-26 | 2021-07-06 | 哈尔滨工业大学 | 一种极化sar图像停泊舰船检测方法 |
CN111586051A (zh) * | 2020-05-08 | 2020-08-25 | 清华大学 | 一种基于超图结构质量优化的网络异常检测方法 |
CN111586051B (zh) * | 2020-05-08 | 2021-06-01 | 清华大学 | 一种基于超图结构质量优化的网络异常检测方法 |
CN111654874A (zh) * | 2020-06-03 | 2020-09-11 | 枣庄学院 | 一种无线传感网异常检测方法 |
CN113010884A (zh) * | 2021-02-23 | 2021-06-22 | 重庆邮电大学 | 一种入侵检测***中的实时特征过滤方法 |
CN113010884B (zh) * | 2021-02-23 | 2022-08-26 | 重庆邮电大学 | 一种入侵检测***中的实时特征过滤方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108052968B (zh) | 2021-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108052968A (zh) | 一种qsfla-svm的感知入侵检测方法 | |
Khammassi et al. | A NSGA2-LR wrapper approach for feature selection in network intrusion detection | |
Xin et al. | Machine learning and deep learning methods for cybersecurity | |
Tesfahun et al. | Intrusion detection using random forests classifier with SMOTE and feature reduction | |
Dias et al. | Using artificial neural network in intrusion detection systems to computer networks | |
CN108718310A (zh) | 基于深度学习的多层次攻击特征提取及恶意行为识别方法 | |
CN109299741B (zh) | 一种基于多层检测的网络攻击类型识别方法 | |
CN108632279A (zh) | 一种基于网络流量的多层异常检测方法 | |
Liu et al. | Intrusion detection system after data augmentation schemes based on the VAE and CVAE | |
CN102651088B (zh) | 基于A_Kohonen神经网络的恶意代码分类方法 | |
CN107846326A (zh) | 一种自适应的半监督网络流量分类方法、***及设备 | |
Sun et al. | An intrusion detection model for wireless sensor networks with an improved V-detector algorithm | |
CN109766991A (zh) | 一种采用对抗性训练的人工智能优化***及方法 | |
CN110213222A (zh) | 基于机器学习的网络入侵检测方法 | |
CN113922985B (zh) | 一种基于集成学习的网络入侵检测方法及*** | |
CN109461025A (zh) | 一种基于机器学习的电能替代潜在客户预测方法 | |
Ahmed et al. | Network sampling designs for relational classification | |
CN113553624A (zh) | 基于改进pate的wgan-gp隐私保护***和方法 | |
Antonelli et al. | Multi-objective evolutionary learning of granularity, membership function parameters and rules of Mamdani fuzzy systems | |
Rani et al. | Design of an intrusion detection model for IoT-enabled smart home | |
Prasenna et al. | Network programming and mining classifier for intrusion detection using probability classification | |
CN108631817A (zh) | 一种基于时频分析和径向神经网络进行跳频信号频段预测的方法 | |
Moukhafi et al. | Artificial neural network optimized by genetic algorithm for intrusion detection system | |
CN113852612B (zh) | 一种基于随机森林的网络入侵检测方法 | |
Devaraju et al. | Performance comparison of intrusion detection system using various techniques–A review |
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 |