基于BP神经网络的粮食产量预测模型

2011-06-08 07:53郭庆春何振芳
湖南农业科学 2011年17期
关键词:人工神经网络神经网络精度

郭庆春 ,何振芳 ,李 力

(1.陕西广播电视大学教务处,陕西 西安 710068;2.中国科学院寒区旱区环境与工程研究所,甘肃 兰州 730000;3.中国科学院地球环境研究所中国科学院黄土与第四纪地质国家重点实验室,陕西 西安 710075;4.中国科学院研究生院,北京 100049)

粮食安全关系到国计民生、社会政治稳定和经济发展,一直是各国学术界和决策层研究和考虑的重要问题。保障国家粮食安全的首要目标是保障粮食安全供给,对于自给率高达95%的我国而言,主要是保障国内的粮食生产量。我国粮食生产的人均产量和消费量并不高,粮食结构性矛盾相当突出,面临着人口增加和耕地面积减少的两大压力。因此必须对我国粮食供需形势有一个清醒认识,而做好粮食产量预测,对各级政府决策部门来讲都是一项重要的决策依据。预测粮食产量是典型的多指标小样本系统的预测问题,国际上主要采用气象预报法、遥感技术和统计动力学生长模拟法进行粮食产量预测。其预测误差一般为产量的5%~10%。近年来,随着智能技术发展,人工神经网络预测等新技术解决了传统方法的很多缺陷,神经网络方法能很好地处理原始数据的随机特性,即不需要对这些数据作任何统计假设,有较好的抗干扰能力。人工神经网络还具有很强的处理大规模复杂非线性系统的能力,许多学者已将人工神经网络成功地应用于实际问题的预测中,取得了令人满意的结果[1-4]。本文引入人工智能最新方法BP神经网络来进行粮食产量预测,旨在使粮食产量预测精度更高,更符合我国粮食生产的客观实际。

1 我国粮食产量模型的建立

1.1 BP神经网络原理

人工神经网络具有模拟人类大脑思维功能的能力,是一种模仿人脑结构及其功能的非线性信息处理系统,能自动调整内部神经元之间的连接权重,以匹配输入输出响应关系,理论上可以实现任意函数的逼近,达到人们希望的精度要求。其中BP模型是目前应用最成功和广泛的人工神经网络。BP神经网络(back-propagation neutral network)是指基于误差反向传播算法(简称BP算法)采用有导师训练方式的多层前向神经网络,由D.E.Rumelhart及其研究小组在1986年设计。由于它可以实现输入和输出的任意非线性映射,具有高度非线性和很强的自适应学习能力,因此被广泛应用于模式识别、函数逼近、经济预测等领域。

BP神经网络的学习训练过程由两部分组成,该网络输入信号正向传播和误差信号反向传播,按有导师学习方式进行训练。在正向传播中,信息从输入层经隐含层逐层计算传向输出层,在输出层的各神经元输出对应输入模式的网络响应。如果输出层得不到期望输出,则误差转入反向传播,按减小期望输出与实际输出的误差原则。从输出层经到中间各层,最后回到输入,层层修正各个连接权值。随着这种误差逆传播训练不断进行,网络对输入模式响应的正确率也不断提高,如此循环直到误差信号达到允许的范围之内或训练次数达到预先设计的次数为止。但传统BP神经网络也具有学习过程收敛慢、容易陷入局部极小、鲁棒性不好、网络性能差等缺点。因此本文引入Levenberg-Marquardt优化算法,其基本思路是使其每次迭代的不再沿着单一的负梯度方向,而是允许误差沿着恶化的方向进行搜索,同时通过在最速梯度下降法和高斯-牛顿法之间自适应调整来优化网络权值,使网络能够有效收敛,大大提高网络的收敛速度和泛化能力,它能够降低网络对误差曲面局部细节的敏感性,有效抑制网络陷入局部极小。

1.2 粮食产量模型的参数确定

粮食产量是受不确定性因素影响的,是一个复杂的非线性系统,从人工神经网络分析方法来看,则是一个多输入、单输出非线性系统。由于BP神经网络是通过若干的简单非线性处理神经元的复合映射,可获得复杂的非线性处理能力,以及具有全局逼近网络的特性,因此通过设置隐层多个神经元,可使非线性问题优化的可调参数增加,使解更精确,即拟合精度更高,本文的预测系统模型即采用改进的BP算法。

我国历年粮食产量资料来源于国家统计局。将我国连续20 a的粮食产量构成一个时间序列,并规定连续4 a的数据作为一个样本输入,第5年的粮食产量作为与其对应的期望输出。也就是将1990~1993年连续4 a的数据作为第一个输入样本,其对应的期望输出为1994年的粮食产量,依次类推。由输入矩阵可以确定输入层节点数为4,根据“2N+1”这一经验,可确定隐含层节点数为9;输出层节点数为1,这样就构成了一个“4-9-1”的BP神经网络模型。其中,训练函数为trainlm,输入层到隐含层以及隐含层到输出层的传递函数分别为logsig和purelin;最大训练次数epochs为20 000次;训练误差精度goal为0.000 1;show为50;其他参数均选用缺省值。

2 BP神经网络模拟结果

神经网络的样本训练取1990~2004年的实际产量作为学习样本,将2005~2009年的实际产量作为预测效果检验样本,也就是利用前15 a的数据建立BP神经网络模型,用于后5 a的数据来检验模型的有效性,神经网络的学习样本的拟合值和检验样本的预测值见表1。

表1 BP神经网络模拟结果 (万t)

如表1所示,利用基于BP神经网络预测模型得到的预测值和实际值具有较好的拟合效果。训练样本的模拟输出与期望输出的相对误差均在±1.5%的范围内,最大相对误差为1.436 6%,最小相对误差仅为-0.834%。模型的收敛效果很好。改进BP算法的结果与目标值很接近,训练结果理想。从模型的检验看,结果表明检验样本预测值平均相对误差为0.491 7%,最大相对误差为1.357%,最小误差-0.329%,检验样本的模拟输出与期望输出的相对误差有4个小于±0.9%,另1个小于±1.5%。对检验样本作预测时,BP网络模型整体的平均预测误差小,仅在2005、2006年粮食产量出现突然下跌时误差较大,但在2007年预测时就迅速适应调整过来,显示出模型具有良好的适应性。无论是拟合精度还是逐年预测5个独立样本,BP神经网络模型的预测精度都高,而且预测结果稳定,结果比较令人满意。因此可以用该网络对未来年代的我国粮食产量进行预测。用2006~2009年的数据作为样本输入,预测2010年的粮食产量,仿真结果为54 396.7万t,国家统计局公布的2010年我国粮食产量为54 641万 t,二者相差不大,误差较小,说明经改进的BP算法对我国粮食产量进行预测是完全可行的。最后将2010年粮食产量的预测数据作为新的输入,2007~2010年的粮食产量则可以用来预测2011年的粮食产量,依次类推,可以预测出我国未来多年的粮食产量。2015年、2020年我国粮食产量的预测值分别为55 684.2、57 382.6万 t。

3 结论

针对我国的粮食产量预测问题,由于常规统计模型难以满足农业粮食产量的预测要求,将BP神经网络应用于国家粮食安全预警系统中,本文提出的改进BP算法较好地解决了神经网络收敛慢和易陷入局部极小值的问题,通过建立时间序列预测模型,运用该改进方法对我国粮食产量进行了模拟。结果表明,运用基于Levenberg-Marquardt算法的改进BP神经网络无论从训练结果精度上还是在收敛性能上都较好,这说明运用该方法来预测粮食产量是完全可行的,弥补了传统BP的不足,提高了预测精度,加快了收敛速度,而且具有很好的外延性。

以1994~2009年我国粮食产量为检测样本进行了模拟预测,结果显示,BP神经网络模型的预测精度高,且预测结果稳定,结果令人满意。对2010~2020年我国粮食产量进行了中长期预测,结果表明,我国粮食产量将较长期地稳定在54 396.7万~57 382.6万t之间,基本满足我国人口的增长需要。BP神经网络在时间序列预测问题上,有着传统方法不可比拟的优势。它可以真实反映复杂的非线性系统问题,并可以取得相当好的泛化(推广)能力,其预测趋势更为合理些。

本文将BP神经网络模型引入到粮食产量预测,采用改进算法,提高了神经网络的泛化能力,为解决历史数据不足的复杂系统建立神经网络模型提供了一种解决办法,该预测模型同时也能够较好的拟合复杂的非线性系统问题。提高了预测效率而且改进了预测精度,为我国粮食产量的预测研究提供了一种有效的方法。但这种基于时间序列的预测方法没有充分考虑粮食产量与其影响因素之间的模型关系,因此,只是一种宏观的预测方法。此外,Levenberg-Marquardt算法有占用内存大,训练速率及效果同样受训练样本和网络结构的明显影响等缺陷,有待进一步优化。

[1] 王海兰,田 野,赵燕东.基于径向基函数网络的垂柳茎体含水量日变化模型的研究 [J].湖南农业科学,2010,(15):145-147.

[2] 柳皓笛,李文彬,阚江明.基于神经网络的立木枝干测量方法研究[J].湖南农业科学,2009,(3):115-117.

[3] 侯 铜,姚立红,阚江明.基于叶片外形特征的植物识别研究[J].湖南农业科学,2009,(4):123-125.

[4] 刘 星,李壮阔,王文辉.基于BP神经网络的化肥供应商选择模型研究[J].湖南农业科学,2007,(6):169-170.

猜你喜欢
人工神经网络神经网络精度
利用人工神经网络快速计算木星系磁坐标
神经网络抑制无线通信干扰探究
人工神经网络实现简单字母的识别
滑动电接触摩擦力的BP与RBF人工神经网络建模
基于DSPIC33F微处理器的采集精度的提高
GPS/GLONASS/BDS组合PPP精度分析
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用
基于支持向量机回归和RBF神经网络的PID整定
改进的Goldschmidt双精度浮点除法器