基于小波变换灰度模型—人工神经网络(GM—ANN)组合的粮食产量预测模型
2017-04-05樊超杨静杨铁军傅洪亮
樊超++杨静++杨铁军++傅洪亮
摘要:由于粮食生产受到社会、经济和气候等多方面因素的影响,造成粮食产量序列的复杂性、随机性和非平稳性。[JP2]为了准确预测粮食产量,提出基于小波变换的灰度模型(GM)-反演(BP)神经网络[BP神经网络是人工神经网络(AMNN)的一种]相结合的预测方法,首先利用小波变换将非平稳序列转化为若干不同频率分量的平稳序列;然后针对各序列使用灰色GM(1,1)模型建立预测模型,为了进一步提高模型的预测精度,结合BP神经网络对预测残差进行修正;最后通过组合得到粮食产量的预测模型。通过对2011—2014年我国粮食产量数据的预测,表明所提方法的预测精度明显高于GM(1,1)和BP神经网络预测模型,4年的平均预测误差小于1%,能够较准确地预测我国粮食产量。
关键词:粮食产量;小波变换;灰度模型;BP神经网络;预测
中图分类号: S11文献标志码: A
文章编号:1002-1302(2016)12-0390-04
收稿日期:2015-11-10
基金項目:国家粮食公益项目(编号:201413001)。
作者简介:樊超(1976—),男,河南郑州人,博士,副教授,主要从事粮食信息处理研究。Tel:(0371)67756840;E-mail:anfan2003@163.com。
粮食安全不仅关系国计民生,而且直接影响着社会稳定和经济发展,“无粮则不稳”,粮食生产是粮食安全的基石。目前,我国面临着人口多、耕地少且可耕地面积仍面临着年年萎缩的状况,严重影响国家的粮食安全。为此,研究粮食产量的变化规律并对其发展趋势作出准确预测,对于保障国家粮食安全、指导政府部门制定科学的发展规划和政策具有重要的意义。
由于粮食生产受到社会、经济和气候等多种因素的影响,导致粮食产量预测成为复杂的农学和统计学问题。为了准确预测粮食产量,目前普遍采用遥感技术预测模型[1]、统计动力学生长模型[2]、气象产量预测模型[3]以及基于自回归滑动平均模型(ARMA)和灰度理论等的时间序列预测等方法[4-7]。这些方法虽然在一定程度上能够对粮食产量作出预测,但均不同程度地存在所需数据量大、预测成本高以及预测精度不理想等缺点。
为此,本研究考虑到粮食产量受到多种因素叠加共同影响,具有多分性、复杂性和非平稳性的特点。而小波变换可以将非平稳信号分解成若干不同频率分量,具有信号平滑的作用,进而改善信号的稳定性[8-9],提高粮食产量的预测精度。
1粮食产量序列的小波变换
本研究采用1978—2010年共33年全国粮食产量数据X(k)作为研究对象,其数据趋势见图1,可见粮食产量呈现波动增长的趋势,并且在1998—2003年间呈现较大的负增长趋势;同时,粮食产量波动频率较高,平均每2~3年就会出现1次负增长,说明粮食产量的波动系数较大。根据单位根检测,判定该序列是1个非平稳序列。
小波变换是在傅里叶变换基础上发展起来的信号处理方法,信号通过逐层小波分解后,可以得到信号在不同频率上的分量,对信号起到平滑作用的同时,还能将非平稳信号转换成为若干平稳信号,这样就可以使用传统的预测方法对平稳序列进行预测,最后通过合成得到原始信号的预测值。
为了分开粮食产量序列中的低频和高频成分,本研究采用Mallat小波分解算法,其分解过程见图2。
算法可描述为:
[JZ(][JB({]cj+1=Hcj
dj+1=Gdj[JB)],j=1,2,…,n。[JZ)][JY](1)
式中:H、G分别为1个低通滤波器、1个高通滤波器;n为小波分解层数;cj、dj分别为原始信号在分辨率为2-j下的逼近系数、细节系数,表示原始信号在不同频率段上的成分。信号在进行Mallat小波分解时,每次都会对信号进行2次抽取,从而导致分解后的信号在频率成分上都比原信号的频率分布减少1/2,造成后续模型信号的输入点减少,降低了整个模型的预测精度。为此,须要对分解系数cn、d1,d2,…,dn采用重构算法进行重构,得到重构信号Cn、D1,D2,…,Dn。重构过程可描述为公式(2):
[JZ(]Cj=H*cj+1+G*dj+1,j=n-1,…,0。[JZ)][JY](2)
式中:H*、G*分别为H、G的对偶算子。
采用上述重构算法对小波分解后的系数进行重构可以增加信号的点数,使每个重构信号与原始信号具有相同的信号长度,从而增加模型的预测精度。原始粮食产量数据经过3层小波分解和重构后,得到的趋势信号C3和细节信号D1、D2、D3的波形见图3。然后对各频率分量信号进行预测,最后再将这些预测序列叠加即可得到原始信号的预测值 X[DD(-1][HT6]^[DD)],即: