基于神经网络优化模型的网络通信异常检测①
2022-11-22洪彦
洪 彦
(漳州职业技术学院,福建 漳州 363000)
0 引 言
网络通信异常流量、网络通信干扰、网络通信错误等带来许多麻烦[1]。其中,网络通信流量异常问题给人们造成的影响较大,尤其是降低了网络用户体验评价。部分用户反映网络通信中流量使用过多,超出了正常使用标准,导致计费增加[2]。为了帮助用户解决此类网络通信问题,研发一套网络通信流量异常检测方法显得尤为重要。由于网络异常流量类型繁多,可能导致流量异常的因素较多,加大了检测难度[3]。目前,神经网络模型应用较多,但是该模型存在运行效率低、训练耗时较长、陷入局部最优解等问题[4-5]。为了弥补该模型的不足,本文尝试对该模型进行优化,使得检测算法的性能得以改善。
1 神经网络优化模型
1.1 基于遗传算法的神经网络优化模型的构建
模型在BP神经网络模型的基础上,选取遗传算法作为优化工具,构建新的网络通信异常检测模型,模型描述如式(1):
(1)
关于神经网络的实际输出的计算,采用的计算公式如式(2):
(2)
公式(2)中,g代表位于隐含层的神经元激励函数;f代表输出神经元激励函数;φt代表输出神经元阈值;λi代表过程神经元阈值;vij代表位于输出层与隐含层节点之间的连接权值;wij代表神经网络隐含层、输入层节点之间的连接权值。
对连接权值采取修正处理,涉及到的计算公式如式(3):
Δwij(n)=-φg(n)+αΔwij(n-1)
(3)
公式(3)中,g(n)代表误差函数对权值对应的梯度;φ代表自适应学习率;n代表迭代次数;α代表动量因数。
1.2 网络通信异常检测流程
关于神经网络优化模型在网络通信异常检测模型开发中的应用,首先创建BP神经网络,而后对该网络的结构参数采取初始化处理,同时创建相应函数[6]。其次,优化网络模型参数。此操作环节使用到的方法为遗传算法,生产初始种群,而后对这个种群采取优化、交叉、变异等一系列处理,使得网络模型的阈值、权值得以优化[7]。最后,将优化处理后的阈值、权值带入神经网络模型中,形成完整的检测模型。
按照上述网络通信异常检测模型开发思路,设计如图1所示的网络通信异常检测流程。
第一步:对网络拓扑结构采取初始化处理;
第二步:对神经网络权值、阈值长度两个参数采取初始化处理;
第三步:通过GA初始化编码,形成初始种群;
第四步:计算当前种群当中所有的个体适应值;
第五步:选择适应度较高的个体作为保存对象,完成符合标准的个体保存;
第六步:运行算法,完成数据交叉处理;
第七步:运行算法,完成数据变异处理;
第八步:判断当前是否完成了所有网络流量检测对象的识别与种群处理,如果已经达到终止标准,则执行第九步,反之,返回第四步;
第九步:从众多个体中挑选出最佳个体;
第十步:根据最佳个体信息,获取最优阈值、权值;
第十一步:计算误差;
第十二步:更新阈值和权值;
第十三步:判断当前所有阈值和权值均得以更新,如果未能满足终止条件,则返回第十一步,反之,输出神经网络。
2 优化模型算法改进
虽然上述神经网络模型已经采取一系列措施得以优化,但是生产适应度较强的个体在神经网络模型检测运行期间,容易对遗传算法造成影响。所以,对该问题进行改进。选取混合编码方式作为改进工具,以多个参数作为优化修正处理对象,对算法进行改进。其中,涉及到的参数包括变异概率Pm,交叉概率Pc,变异算子、交叉算子等。
研究选取两种算法作为研究支撑,分别是实数编码、二进制编码解码,将这两种方法结合到一起,充分发挥各自的优点,形成新的基于遗传算法的网络通信异常检测模型[8]。
2.1 适应值函数的选取
改进算法将遗传算法的搜索目标作为优化对象,以网络权值作为计算指标,通过计算各个权值的网络误差平方和,从中挑选数值最小的网络权值作为搜索目标。利用图1中的检测方法,获取阈值和权值,经过计算,得到神经网络误差平方和。其中,运用到的函数为适应度函数,该函数的表示方法为适应误差的倒数。关于个体适应值的计算如(4):
f(Xi)=E(Xi)-1
(4)
式(4)中,E(Xi)为网络目标函数,计算公式如(5):
(5)
2.2 算法改进
算法采用排序法,对个体序列进行调整,使其降低对遗传算法的影响。该方法的应用,是根据个体适应度的差异,采取不同的转换处理,从而完成序列的排序。其中,被选取概率较大的个体适应度较大。完成排序后,按照以下算法计算个体选取概率如(6),(7):
Pi=q′(1-Pmax)n(i)-1
(6)
(7)
公式(6),(7)中,n(i)代表种群编号为i的染色体适应值排序;Pmax代表众多染色体中选取最优的概率。
接下来,计算每一个个体累计选取概率,生成序列后,按照升序排列。其中,序号为i的个体将直接转入下一代中。二进制编码期间,采用单点交叉法,随机抽取父代串交叉点,将该交叉点与对应的子串交换,从而形成新的交叉算子。
为了保证种群的多样性,采用变异处理方法,使得种群的基本位得以变异。其中,实数部分的变异,采用的方法为非均匀变异方法。对于变异概率和交叉概率的确定,是根据种群陷入局部实际情况,对两种概率参数做出合理调整。
3 实验测试分析
3.1 实验测试内容与方法
为了检验提出的算法可靠性,研究开展网络异常流量数据检测实验。考虑到异常流量种类较多,仅选取一种异常流量作为检测对象,所得结果存在片面性,实验选取6种类型异常流量作为检测对象。如表1所示为异常网络流量类型及相应特征信息。
表1 异常网络流量类型及相应特征信息表
实验选取未优化前的BP神经网络作为对照组,以提出的算法作为实验组,控制网络通信环境相同,采用不同的方法,分别开展网络通信异常流量检测实验。
3.2 实验测试结果分析
实验共计6组,每组实验检测对象分别为Flash Crowd异常流量,Network Scan异常流量,Alpha Anomaly异常流量,Worms异常流量,Port Scan异常流量,DDos异常流量。按照实验测试方案,分别统计两种神经网络模型应用下的网络通信异常流量测试结果,如表2所示。
表2 误报率与准确率测试统计结果
表1中测试结果显示,与BP神经网络模型相比,研究提出的网络通信异常流量检测方法测试准确率更高,6组实验检测结果准确度皆在92.4%以上,满足网络通信异常流量检测精度要求。而BP神经网络模型在Worms异常流量检测中所得精准度最高,仅有88.6%。由此看来,研究提出的检测算法能够有效改善网络通信异常流量检测精确度,可以作为异常流量检测工具。
4 结 语
围绕网络通信异常问题中的异常流量作为研究对象,引入BP神经网络模型,构建异常流量检测模型。该模型在传统检测模型基础上进行了优化,利用遗传算法构建初始种群,经过优化、交叉、变异等一系列处理,调整网络模型的阈值、权值,达到模型优化的目的。实验测试结果显示,该研究提出的算法支持多种类型异常流量检测,检测精度在92.4%以上,符合异常流量检测需求。