一种改进的RBF神经网络在农机总动力预测中的应用
2018-07-03王福林吴志辉
潘 琪,王福林,吴志辉,方 堃
(东北农业大学 工程学院,哈尔滨 150030)
0 引言
农机总动力是评价农业机械化水平的重要指标,也是政府部门指定农业机械化发展规划的重要依据,对农机总动力的预测具有重要意义。目前,关于农机总动力的预测有多种方法,以人工神经网络的效果较好,但大多数研究都是和BP神经网络有关的[1-3]。径向基函数(Radial Basis Function,RBF)神经网络[4-5]是一种三层前馈型神经网络,能够以任意精度逼近任意的非线性函数。其网络结构简单,隐含层与输出层之间为线性关系,优化方式简单,采用局部逼近的方法,收敛速度快,有效地解决了BP神经网络结构复杂、计算量大、收敛速度较慢及容易陷入局部最小值点的问题。在RBF神经网络中一种做法是采用k-means聚类法来确定基函数中心[4],但这种方式对初始点的选取敏感,网络结构不够稳定,且隐含层神经元个数需要提前给出。为此,本文提出了一种采用系统聚类来确定基函数中心的方法,可以有效改善网络对初始点敏感的问题。
1 RBF神经网络基本原理
RBF神经的结构一般如图1所示。第1层为输入层,将神经网络与外界连接起来;中间层为隐含层,将输入层传过来的信号进行非线性转换;第3层为输出层,是对输入信号的响应。
图1 RBF神经网络结构图
该网络有n个输入神经元,h个隐含神经元,m个输出神经元。神经网络的第i个输入向量为Xi=[x1,x2,…,xn];基函数中心为[C1,C2,…,Cj,…,Ch]T,并且有Cj=[c1,c2,…,cn],即每一个基函数中心的维度要与输入向量的维度相同;b=[b1,b2,…,bm]T为阈值。输入层和隐含层之间进行一次非线性映射,映射结果为φ(‖Xi-Cj‖),则第i个输入的输出为
(1)
令w0=-1,φ0=b,则有
(2)
假设有P个输入向量,则对应的有
(3)
令φij=φ(‖Xi-Cj‖),i=1,2,…,p;j=i=1,2,…,h,那么可将上述方程组改写为
(4)
进一步可以表示为
ΦW=D
(5)
其中,Φ为映射矩阵;W为系数矩阵;D为输出矩阵。
RBF神经网络的思想是:在低维空间非线性相关关系通过基函数投影到高维空间后可能成为线性相关,这样就可以用线性方法解决非线性线性问题。在这个过程中,离基函数中心越近,对响应的影响就越大。在RBF神经网络中,基函数的宽度决定影响因素的作用范围,基函数的数量等于隐层节点的数量,隐层节点数量越多,网络逼近能力越强,结构越复杂,计算量越大,泛化能力越差。因此,确定基函数中心的数量、位置及宽度是RBF神经网络主要解决的问题。
基函数中心的选取常用的有两种方法[6]:一种是通过非监督学习法确定基函数中心的位置和宽度,再通过监督学习法确定网络的权值;另一种是将网络的基函数中心和权值等所有参数都通过有监督学习法来确定。在第一种方法中,除了随机选取基函数中心直接计算外,较常用且效果比较好的做法是先将训练样本通过k-means聚类算法进行分类,选取聚类中心作为基函数的中心。这种方法能够有效地提高网络性能,但对初始值敏感,当选取不同的初始值时聚类结果可能不同,网络结构不够稳定。为了解决这一问题,本文提出将系统聚类[7]应用到基函数中心的选取中,可以解决k-means聚类算法对初始值敏感的问题,提高网络的稳定性。
2 基于系统聚类的RBF神经网络学习算法
从RBF的原理可以看出:离基函数中心越近对响应的影响越大,离基函数中心越远对响应的影响越小。聚类的目的就是想根据输入的不同特性将其分成不同的类别,每个类别选取一个基函数,这样可以有效地简化网络结构,提高网络的泛化能力。聚类的原则是类内的距离尽可能小,类间的距离尽可能大,而系统聚类非常符合这一原则。
系统聚类是先将n个样本分别看成一类共分成n类,计算各样本之间的距离,把距离最近的两个合并成一类变成n-1类;然后,再次计算各类之间的距离,再将距离最近的两类合并成一类变成n-2类,重复上述过程,直到将所有的聚类单元分为一类。
对于一些样本特性未知的问题,需确定基函数中心的数量。定义一个常量ε(0<ε<1),称之为类间距占比,假设聚类过程中第k次合并的最小的类间距为d(k),第k+1次合并的最小的类间距为d(k+1),如果有d(k)<εd(k+1),就说两个类之间的相似度低,则停止聚类,n个样本分为n-k类。样本间距和类间距的计算有很多种方法[8],应根据样本的不同特点和需要达到的效果选择具体的方法。
构建一个RBF神经网络,输入样本为X1,X2,…,Xn,对应的样本输出分别为Y1,Y2,…,Yn,网络隐层节点的激活函数φ(x)选取高斯函数。首先根据系统聚类的方法确定RBF神经网络的基函数中心Ci和宽度σi,然后用梯度下降法确定隐含层与输出层之间的权值w,具体操作过程如下:
1)将每个样本看作一类,计算各样本之间的距离。
2)从得到的距离矩阵中选出最小的类间距dij并记为d(k),将Xi和Xj合并为一类。
3)计算新类之间的类间距,得到新的距离矩阵。
4)从新的距离矩阵选出最小的类间距dpq并记为d(k+1);如果d(k)<εd(k+1),0<ε<1,则停止分类,到第5)步;否则将Xp和Xq合并为一类,并令d(k)=d(k+1),转到第3)步。
6)根据各聚类中心之间的距离计算各基函数的宽度σi=κdi。其中,κ为重叠系数,控制基函数的平滑程度,宽度越大,函数越平滑;di为其它聚类中心与第i个聚类中心的最小距离,即di=min(‖Ci-Cj‖),i≠j。
7)训练网络。根据梯度下降法[9]计算得到输出权值w=[w1,w2,…,wh]T,具体方法如下:
设有N个训练样本,第i个训练样本Xi的期望输出为di,网络输出为f(Xi),网络的输出误差为ei,即
(6)
定义网络的总误差为目标函数,即
(7)
误差对权值的偏导为
(8)
(9)
其中,η为学习率。重复训练,直到误差小于设定的范围或达到训练次数,得到网络权值。
3 农机总动力预测实验
根据黑龙江省统计年鉴,对黑龙江省农机总动力进行预测,黑龙江省1980-2014年农机总动力数据如表1所示。对数据按式(10)进行数据归一化,把数据归一化到区间上,即
(10)
其中,xmin为数据中的最小值;xmax为数据中的最大值。
以连续6年数据作为一个输入,下一年数据作为输出,构建时间序列数,总共构成29组数据,作为样本。选取输出为1986-2010年的25组数据作为训练样本,以输出为2011-2014年的4组数据作为测试样本。运用改进的学习算法构建神经网络并进行训练,利用训练的结果对2011-2014年的农机总动力进行预测,并与测试样本进行对照,比较网络的预测效果。实验环境如下:Windows7操作系统,CUP主频2.20GHz,安装内存6.00GB,仿真软件MatLab 7.11.0。网络参数设置如下:输入神经元个数为6,输出神经元个数为1,初始权值W0=[1,1,…,1]T,初始阈值b0=1,网络学习精度0.000 1,重叠系数κ=1,梯度下降法学习率η=0.2,距离占比ε=0.7。系统聚类中应用欧氏距离(euclidean)计算样本间距离,应用最小距离法(single)计算类间距,网络训练10次,取平均值;最后,根据已有数据对2015-2018年的农机总动力进行预测,仿真结果如表2所示。
在实验过程中发现,改进算法每次的训练结果都是相同的,网络结构十分稳定,而原始的算法每次训练结果都有一定差异,说明改进算法在提高网络稳定性上有明显的效果,解决了k-means均值聚类算法对初始点选取敏感的问题。在网络拟合精度方面,改进方法训练样本的平均相对误差为0.702 5%,而原始方法训练样本的平均相对误差为2.198 3%,改进方法的预测精度有明显提高。在网络结构方面,改进算法能够自组织的完成节点个数的确定,效果比较理想。运用改进算法获得的预测值与观测值对比结果如图2所示。
表1 黑龙江省1980-2014年农机总动力
表2 实验结果
4 结论
1) 针对RBF神经网络根据k-means聚类算法确定基函数中心时存在对初始点选取敏感的问题,提出了一种用系统聚类确定基函数中心的方法,这种方法不用选取初始聚类中心,有效地解决了网络的稳定性问题。
2) 针对在选择进函数中心时,针对基函数中心的个数难以确定的问题,提出了一种利用类间距的变化程度作为聚类终止条件的方法,使得网络在运用聚类方法确定基函数中心时不用预先给定基函数的中心和数量,网络按照一定的指标自动确定基函数中心的个数。
3) 通过实验验证了提出的改进算法在提高网络稳定性、改善网络结构等方面的有效性,同时能够有效减少网络的训练误差。
参考文献:
[1] 王吉权, 王福林, 邱立春.基于BP神经网络的农机总动力预测[J].农业机械学报,2011, 42(12):121-126.
[2] 马海志, 王福林, 王慧鹏,等.基于改进BP神经网络的黑龙江农机总动力预测[J].农机化研究, 2016,38(2):22-30.
[3] 何志连, 王福林, 董慧英,等.BP神经网络最佳停止法对农机总动力的预测[J].农机化研究,2017, 39(2):1-5.
[4] Broomhead DS, Lowe D.Multi-variable functional interpolation and adaptive networks[J].Complex System, 1988(2):321-355.
[5] Moody JE, Darken CJ. Fast learning in networks of locally-tuned processing units[J].Neural Computation, 1989(2):281-294.
[6] 阎平凡, 张长水.人工神经网络与模拟进化计算[M]. 北京: 清华大学出版社, 2005.
[7] 王福林.农业系统工程与管理工程[M].北京:中国农业出版社,2006.
[8] 薛毅, 陈立萍.统计建模与R软件[M].北京: 清华大学出版社,2007.
[9] Billings SA, Zheng GL. Radial basis function network configuration using a genetic algorithm[J].Neural Networks, 1995, 8(6):877-890.