基于改进的径向基神经网络算法的网络异常流量预测方法
技术领域
本发明涉及网络流量预警领域,具体是一种基于改进的径向基神经网络算法的网络异常流量预测方法。
背景技术
目前全球电力领域进入了智能化时代,保证基于IEC61850的智能变电站通信系统的安全性在智能电网安全运行中发挥着越来越重要的地位。
网络流量预警作为电力安全防护的一个重要环节,以此为核心的具有稳定性和高精度的异常流量预警体系将影响智能变电站的安全运行与生产。网络流量预测是网络异常流量预警的前提,主要包括两部分:提取流量特征和构建合适的预测模型,研究网络流量预测模型对构建智能变电站的安全防御体系具有十分重要的意义。构建网络流量预测模型是描述某一场景下某一行为的内部流量特性的过程,只有针对研究对象的差异选择合适的预测模型,才能够正确的预测实际网络流量的变化规律。任何一个预测模型的都具备多个可变更的输入参数,模型的结构和初始参数的选择将将影响模型的精准度和收敛速度。精度高的预测模型应该具备以下特点:较高的收敛速度;精准获取网络流量相关的统计特征;适用于不同网络场景的分析方法。
传统的泊松模型是科研人员最早发现可以应用网络流量预测的模型。1994年,通过对LAN和WAN的流量特征进行分析,Wilson和Leland等认为传统的泊松模型不再能够用来描述网络流量特性。寻找能同时适应广域网和局域网的网络流量预测模型,已经成为当时研究人员开展网络流量分析研究的重点工作。
随着预测模型研究的深入研究,目前网络流量的预测方法可分为平稳性和非平稳性两种。基于平稳性流量的预测方法包括:马尔可夫模型、自回归模型、滑动回归模型、灰色预测模型和自回归滑动平均模型等,基于非平稳流量的预测方法包括:小波模型、SVM和神经网络等。
此外,神经网络也被应用于流量预测建模,神经网络的自我训练机制能够对非线性的流量进行预测,能够较好的描述网络的误差,大部分神经网络具备训练复杂度和计算复杂度高的缺点,这也是研究人员所关注的重点。
BP神经网络:
BP神经网络具备结构简单和适用性强的优点,目前为止被广泛应用;但是BP神经网络采用全局逼近,训练时间过长,容易陷入局部最优等劣势,仍需不断改进。
RBF神经网络:
RBF神经网络以函数逼近理论为基础,训练过程可以看成在多维向量空间中寻找最佳的拟合平面的过程。RBF神经网络的优势在于隐含层采用径向基函数作为激活函数,非线性拟合能力强,全局最优逼近。在RBF神经网络训练过程中,不管是过拟合还是欠拟合都会降低神经网络的训练精度。当模型特征维度较多,模型过于复杂,训练时间太长,RBF神经网络将会过度拟合训练样本集,对新数据集拟合能力很差,泛化能力降低。当模型神经元较小、结构过于简单时,RBF神经网络将会产生欠拟合现象,训练精度变差。实际使用中需要对RBF的参数(隐含层神经元数、中心值和宽度)进行优化。神经网络在时间t的输出为:
其中,ωk表示第k个隐含层神经元与输出层之间的连接权值;n是隐藏神经元的数量,其取值大于1;αk表示第k个隐含层神经元节点的输出,激活函数为:
αk=radbas(||x(t)-μk(t)||b) (2)
粒子群算法PSO:
PSO算法是基于高适应度和高维度的群体思想,通常用来优化神经网络。它的基本原理是对群居性动物寻找食物的生物学行为进行研究,将种群寻找目标的过程抽象为粒子之间的信息共享机制,在搜索过程中,通过粒子之间的信息共享来调整粒子的飞行方向和速度,不断更新粒子的位置直至找到目标区域。从该算法的大量应用可以发现该算法存在早熟收敛、易于陷入局部最优解和搜索精度不足等问题,不能保证得到全局最优解。
由于智能变电站网络具有其独特的特性,与通用的网络流量具有一定的差异:
(1)自相似性。自相似是指在不同的时间标准尺度下具有相同的突发特性。分析本发明研究的智能变电站通信网络的流量变化模式,通信链路的走向相当固定,长时间不会发生变化,则任意采集时间内的整体流量特征较为相似。在经过数据预处理之后,流量数据整体的特征不会发生变化。
(2)周期性。智能变电站通信系统中报文的传输方向固定,报文到达的时间和发送间隔存在规律性,因通信流量存在周期性的变化特点。
(3)平稳性。智能变电站通信系统具备固定采样流量数据的特性。例如SV报文通信流量占总流量的比例很大,不会收到外界因素的干扰[39]。只有当发生安全威胁或者发生网络堵塞时,SV报文通信流量才会发生波动。
(4)突发性。智能变电站时常会因为突发事件导致通信流量波动较大,具备很强的随机性。
同时,作为基础设施,网络异常所造成的严重性也需要管理人员及时对异常流量做出反应。因此,对智能变电站网络流量预测必须满足适应性好、快速收敛、准确度高等要求。
发明内容
针对背景技术中存在的问题,本发明提出一种基于改进的径向基神经网络算法的网络异常流量预测方法,将APSO算法和基于量子理论的QPSO算法结合,并使用QAPSO算法优化RBF算法参数,可有效提高RBF神经网络的预测精度。
一种基于改进的径向基神经网络算法的网络异常流量预测方法,包括RBF神经网络初始化、采用QAPSO算法优化RBF神经网络参数、根据RBF神经网络的最优参数重新构建一个优化的RBF神经网络预测模型、以及使用优化的RBF神经网络预测模型进行流量预测。
进一步的,所述方法具体步骤如下:
步骤一:RBF神经网络初始化,确定RBF神经网络的拓扑结构,包括输入输出、各粒子的神经元个数和传输函数;
步骤二:粒子群初始化,设定各个粒子的初始位置Xi(0)和初始速度Vi(0),并设置粒子个体极值为Pi(0)=Xi(0);
步骤三:开始训练RBF神经网络,根据公式(6)计算各个粒子位置Xi(t),
其中,h为[0,1]范围内的随机变化值,β为收缩-扩张系数,Mbest为平均最好位置,其定义公式为:
m为粒子个数,εi,j(t)表示每个粒子被分配的权重系数,其定义公式为:
其中f[Xi,j(t)]表示当前粒子的自适应度,f[Gj(t)]表示第j维的全局最优的自适应度;
根据公式(9)计算适应度值为f[Xi(t)]:
步骤四:根据公式(6)计算粒子个体极值Xi(t),通过公式(10)比较粒子历史适应度,将个体历史适应度最高的粒子作为个体极值Pbesti(t)以及适应度f[Pbesti(t)];
步骤五:通过公式(11)比较所有个体极值的适应度,将适应度最高的位置作为全局极值Gbest(t)以及适应度f[Gbest(t)];
Gbest(t+1)=argmin(f(Pbesti(t+1))) (11)
步骤六:根据公式(7)和公式(8)计算粒子群的权重系数εij(t)和权值平均极值M(t),计算收缩-扩张系数β;
步骤七:判断是否满足终止条件,若满足终止条件,停止运行并输出全局极值;否则,更新粒子位置,转入步骤三;
步骤八:将得到的粒子最优解作为RBF神经网络最优参数输出;
步骤九:通过优化算法求得的全局最优解是神经网络模型中的初始参数集合,通过获得的参数建立优化的RBF神经网络预测模型;将预测数据集输入优化的RBF神经网络预测模型中,得到预测的流量大小。
进一步的,步骤一中所述传输函数为高斯函数。
本发明针对PSO算法存在的早熟收敛、易于陷入局部最优解和搜索精度不足等问题,在基于自适应思想的APSO算法和基于量子理论的QPSO算法的基础上,使之结合,设计了一种具备更高全局收敛能力和全局搜索精度QAPSO算法,并使用QAPSO算法优化RBF算法参数,提高了RBF神经网络的预测精度。
附图说明
图1是本发明中QAPSO粒子群算法流程图;
图2是本发明中QAPSO-RBF神经网络模型的建立流程图;
图3是现有标准PSO算法迭代过程中的适应度;
图4是现有APSO算法迭代过程中的适应度;
图5是本发明QAPSO算法迭代过程中的适应度。
具体实施方式
下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述。
本发明实施例提出一种基于改进的径向基神经网络算法的网络异常流量预测方法,主要分为以下三个阶段:RBF神经网络初始化、采用QAPSO算法优化RBF神经网络参数和建立优化的RBF神经网络预测模型并进行流量预测。
1.RBF神经网络初始化
(1)对训练数据集进行预处理,一般采取归一化处理;
(2)构建RBF神经网络的结构:确定输入输出,本发明的输入输出都是基于时间序列的智能变电站网络流量大小;
(3)确定隐含层节点N;
(4)确定传输函数,本发明选取高斯函数作为神经网络的传输函数。
通过以上步骤建立初始化RBF神经网络。
2.采用QAPSO算法优化RBF神经网络参数
当RBF神经网络确定后,将RBF神经网络的各节点的权重、节点中心和宽度等参数作为QAPSO算法的一个粒子进行优化,则优化的RBF神经网络的粒子位置为:
其中,σk表示第k个隐含层神经元的宽度,μk表示为第k个隐含层节点的数据中心,N为隐含层神经元数,wk表示为隐含层神经元与输出神经元之间的连接权值,则粒子空间维数θ=3N。
初始化RBF神经网络的粒子群中粒子的个数、最大迭代次数、搜索空间和确定适应度值函数等参数,粒子的适应度值将决定算法是否达到优化效果和停止搜索的重要指标,本解的适应度函数是神经网络实际输出与预测输出之间的均方根误差函数。
初始化完成后,根据图1中的算法步骤,通过适应度函数更新粒子最优值位置和全局最优位置。检查终止算法的条件或达到最大迭代次数,停止运行并输出全局最优位置,得到RBF神经网络的最优参数。
(1)在标准PSO算法中,位置向量迭代更新公式为:
Xi(t+1)=Xi(t)+Vi(t) (4)
Vi为速度向量,其公式为:
Vi(t+1)=wVi(t)+c1r1(Pbest(t)-Xi(t))+c2r2(Gbest(t)-Xi(t)) (5)
其中,w表示为PSO算法的惯性权重,Pbest(t)和Gbest(t)分别代表粒子i在t时刻的最优位置和种群的最优位置,参数c1和c2被称为是加速度常数,通常相等且在[0,2]之间取值,r1和r2为[0,1]之间的随机数,迭代完成后的Gbest(t)则为最优解。
(2)在改进后的QAPSO算法中,位置向量迭代更新公式为:
其中,h为[0,1]范围内的随机变化值,β为收缩-扩张系数,Mbest为平均最好位置,其定义公式为:
m为粒子个数,εi,j(t)表示每个粒子被分配的权重系数,其定义公式为:
其中f[Xi,j(t)]表示当前粒子的自适应度,f[Gj(t)]表示第j维的全局最优的自适应度。
迭代完成后的Gbest(t)则为最优解。
3.建立优化的RBF神经网络预测模型并进行流量预测
根据RBF神经网络的最优参数重新构建一个RBF神经网络预测模型,然后对预测流量数据集进行多次预测后输出流量值,算法结束。
本发明方法具体步骤如下:
步骤一:RBF神经网络初始化,确定RBF神经网络的拓扑结构,包括输入输出、各粒子的神经元个数和传输函数;
步骤二:粒子群初始化。设定各个粒子的初始位置Xi(0)和初始速度Vi(0),并设置粒子个体极值为Pi(0)=Xi(0)。
步骤三:开始训练RBF神经网络,根据公式(6)计算各个粒子位置Xi(t),根据公式(9)计算适应度值为f[Xi(t)]。
步骤四:根据公式(6)计算粒子个体极值Xi(t),通过公式(10)比较粒子历史适应度,将个体历史适应度最高的粒子作为个体极值Pbesti(t)以及适应度f[Pbesti(t)];
步骤五:通过公式(11)比较所有个体极值的适应度,将适应度最高的位置作为全局极值Gbest(t)以及适应度f[Gbest(t)]。
Gbest(t+1)=argmin(f(Pbesti(t+1))) (11)
步骤六:根据公式(7)和公式(8)计算粒子群的权重系数εij(t)和权值平均极值M(t),计算收缩-扩张系数β。
步骤七:判断是否满足终止条件。若满足终止条件,停止运行并输出全局极值;否则,更新粒子位置,转入步骤三。
步骤八:将得到的粒子最优解作为RBF神经网络最优参数输出。
步骤九:通过优化算法求得的全局最优解是神经网络模型中的初始参数集合,通过获得的参数重新建立一个RBF神经网络预测模型;将预测数据集输入新构建的RBF神经网络预测模型(即QAPSO-RBF神经网络模型)中,得到预测的流量大小。QAPSO-RBF神经网络模型的建立流程如图2所示:
基准测试验证
1、验证方法
为了验证QAPSO-RBF神经网络的性能,本节通过对函数进行逼近及系统建模实验。假设QAPSO-RBF神经网络模型用于预测以下测试函数:
将动态非线性函数应用于RBF神经网络的验证是普遍的实验方法。将500组归一化的实验数据作为训练样本,并在选取100组实验数据作为测试样本。隐含层中设定为神经元的个数为10、15,并将PSO-RBF神经网络、APSO-RBF神经网络、AIPSO-RBF神经网络和QAPSO-RBF神经网络作为对比实验。设定粒子群的粒子个数为40个,最大迭代次数为500次,维度分别对应为10和20,保证其它条件不变,重复运行30次。
2、适应度
首先比较PSO、APSO和QAPSO算法在优化基准函数时的适应度变化,如图3、图4和图5所示(Y轴采用对数坐标系)。标准PSO算法的适应度值最小值为0.5,说明算法优化性能不佳,表示在迭代过程中粒子群可能陷入局部最优解;APSO算法和QAPSO算法在全局搜索能力和搜索精度上都远远优于标准PSO算法,适应度基本接近于10-6,说明算法具备较好的优化性能;与APSO算法相比,QAPSO算法的适应度值更低,收敛表现更好,实验证明了优化PSO算法的有效性。
3、预测精度
如表1所示,对RBF神经网络、PSO-RBF神经网络、APSO-RBF神经网络和QAPSO-RBF神经网络的性能进行对比。在预测精度方面,标准RBF神经网络的预测效果比较差,而经过PSO算法优化后的RBF神经网络预测模型在预测效果上有了明显提高,PSO-RBF神经网络、APSO-RBF神经网络和QAPSO-RBF模型在MAE和RAME值上都优于RBF神经网络,证明了将PSO算法用于优化RBF神经网络方法的有效性;同时QAPSO-RBF神经网络的参数优化效果最好,预测精度要优于PSO-RBF神经网络和APSO-RBF神经网络模型。
表1各模型优化效果对比
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何属于本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。