基于神经网络集成的作物需水量预测
2018-02-01商志根
商志根
摘要:应用神经网络集成模型,以空气湿度、温度、太阳辐射以及风速为输入,利用交叉验证方法确定网络隐层节点数,建立作物需水量的预测模型。实验结果表明,与单个神经网络与随机森林模型相比,神经网络集成模型能获得更好的预测精度,可用于节水灌溉。
关键词:神经网络;集成模型;作物需水量;随机森林
DOIDOI:10.11907/rjdk.172217
中图分类号:TP306
文献标识码:A文章编号文章编号:16727800(2018)001004603
Abstract:In order to predict crop water requirements, a method based on neural network ensemble is developed in this paper. Solar radiation, air temperature, relative humidity and wind speed are used as input variables. The number of hiddenlayer neurons is determined by crossvalidation method. Experimental results indicate that the method based on neural network ensemble outperforms those based on a single neural network and random forest, and can be used for watersaving irrigation.
Key Words:neural network; ensemble model; crop water requirements; random forest
0引言
我国是一个贫水大国,对作物需水量作出准确预测并按需灌溉,对农业工程中的节水灌溉具有重要意义[1]。在农业工程中,通常采用两种方法计算作物需水量:基于修正的PenmanFAO公式的估算方法与基于时间序列或回归模型的预测方法。修正的PenmanFAO公式是一种计算作物腾发量的方法,仅需气温、日照时数、水气压和风速等气象资料,是目前普遍应用的公式之一,然而该方法计算精度略低[2]。近年来,国内外学者提出了基于时间序列、模糊理论、灰色理论与神经网络等模型的预测方法。张兵等[3]提出一种基于LM算法训练神经网络的作物需水量预测模型;夏泽豪等[4]将灰色理论与神经网络相结合,提出一种新的基于灰色神经网络的作物需水量预测模型;孟丽丽等[5]基于α加权模糊线性回归模型预测作物需水量。由于神经网络可以逼近连续的非线性曲线,因而得到相关研究者的广泛关注[6]。然而,神经网络具有对权重向量初值敏感、泛化能力不够、易陷入局部极小等缺点。近年来,集成概念被引入到神经网络模型,从而促进了模型的应用与发展[78]。神经网络集成利用多个神经网络对同一问题进行学习,训练多个神经网络,并利用某技术将其集成,以提高模型泛化性能。于合龙等[8]将神经网络集成模型用于精准施肥,获得了比单个神经网络模型更好的拟合精度,但未有研究涉及作物需水量预测问题。
构建神经网络集成模型需经过两个步骤:产生一定数量的组合成员及整合组合成员。目前,主要有两种算法产生组合成员:Bagging和Boosting[9]。Bagging算法是对原始训练数据进行等概率放回抽样,形成多个新的训练数据,对各训练数据利用某学习算法进行独立训练;Boosting在初始化时等概率抽样形成训练集,然后用某学习算法对该训练集进行学习,得到预测函数h1,对误差较大的样本赋予较大权重,再次进行抽样,继续用学习算法对新训练集进行学习,得到预测函数h2。如此反复,迭代t次后完成训练,对多个预测函数也赋予权重。与Boosting相比,Bagging可并行运算,并且更为稳定[10],所以本文选择了Bagging算法。此外,随机森林也是运用了Bagging算法[11]。最后,有多种方法整合组合成员,例如取平均值、岭回归[12]、贝叶斯加权平均[7]等。本文选用取平均值的方法整合各神经网络成员输出。
本文利用Bagging算法,以神经网络为学习算法,利用交叉验证方法确定网络隐层节点数。以美国田纳西州大学高原实验室所测的数据为例,以空气湿度、温度、太阳辐射以及风速为输入,证明与单个神经网络与随机森林方法相比,神经网络集成可获得更好的预测性能。
1随机森林與神经网络集成
1.2神经网络模型
基于神经网络的预测模型在很多领域得到了应用。径向基(Radial Basis Function,RBF)与多层感知器(Multilayer Perceptron,MLP)是两种常见的神经网络模型。本文选择MLP网络作为基模型,以构成集成模型。因为3层MLP网络可以任意精度逼近任一定义在紧集上的连续函数,所以本文确定MLP的层数为3。
可选择多种算法训练MLP网络,例如一阶算法(如误差后向传播算法)、二阶算法(如共轭梯度算法、牛顿算法与LM算法)和进化算法(如遗传算法、粒子群算法)。与一阶算法和进化算法相比,二阶算法具有相对较少的运行时间。此外,对于较小或中等规模的问题,LM算法被认为是最有效率的算法之一[13]。为减少运行时间,选择LM算法训练各MLP模型。
1.3神经网络集成模型
对于不稳定的模型(如决策树、神经网络),Bagging算法可提高预测效果。假定神经网络集成包含B个MLP基模型,神经网络集成算法步骤如图1所示。
对于任意测试样本x,神经网络集成模型的输出为 神经网络集成模型的多样性对模型性能具有重要影响[10]。本文集成模型的多样性主要由Bagging技术和不同初始值产生。endprint
2应用实例
本文所用数据来自美国田纳西州大学高原实验室[14],采用的试验田为肥沃的沙质土壤,其长度为12.20m,宽度为4.05m。试验针对的作物为青椒,数据观测时间为1994年56月。在试验中,测量了与青椒需水量密切相关的4个量:太阳净辐射、相对湿度、天气温度和风速,其中太阳净辐射为一天累计值,其余为一天平均值。试验数据共有50个样本,如表1所示。
首先将样本1~5作为测试数据,样本6~50作为训练数据,在训练集上利用9折交叉验证方法确定最小均方根误差(Root Mean Square Error,RMSE)所对应的隐层节点数,隐层节点数从{1,2,3,4}中选择,获得样本1~5的测试结果;然后以样本6~10为测试样本,其余样本为训练数据。以此类推,直至获得样本46~50的测试结果。RMSE的计算表达式为:
其中i为预测值。
为克服数值数据量纲的影响,在模型训练之前将数值数据进行归一化处理。神经网络集成模型包含30个MLP模型。图2给出了单个神经网络、随机森林和神经
网络集成的预测结果。随机森林含有100棵分类回归树,叶节点的样本数等于1。表2给出了3种模型的误差统计,其中MAPE和MAE分别指平均绝对误差率(Mean Absolute Percentage Error)、平均绝对误差(Mean Absolute Error),计算表达式分别为:
由表2可知,与单个神经网络及随机森林相比,神经网络集成误差指标更小,具有更好的预测性能。需指出的是,神经网络集成模型需要更多的运行时间。
3结语
为预测作物需水量,以空气湿度、温度、太阳辐射以及风速作为输入,建立神经网络集成模型,利用交叉验证方法确定网络隐层节点数。与单个神经网络及随机森林模型相比,神经网络集成模型可获得更好的预测精度,有助于实现精细灌溉。
参考文献:
[1]孙景生,康绍忠.我国水资源利用现状与节水灌溉发展对策[J].农业工程学报,2000,16(2):15.
[2]韓伟锋,武继承,何方.作物需水量研究综述[J].华北水利水电学院学报,2008,29(5):3033.
[3]张兵,袁寿其,成立,等.基于LM优化算法的BP神经网络的作物需水量预测模型[J].农业工程学报,2004,20(6):7376.
[4]夏泽豪,翁绍捷,罗微,等.基于灰色神经网络的作物需水量预测模型研究[J].中国农机化学报,2015,36(2):219213.
[5]孟丽丽,迟道才,崔屾,等.α加权模糊线性回归模型在参考作物需水量预测中的应用[J].沈阳农业大学学报,2008,39(5):603606.
[6]刘婧然,马英杰,王喆,等.基于RBF神经网络与BP神经网络的核桃作物需水量预测[J].节水灌溉,2013(3):1619.
[7]江衍铭,张建全,明焱.集合神经网络的洪水预报[J].浙江大学学报:工学版,2016,50(8):14711478.
[8]于合龙,刘杰,金弟,等.一种新的神经网络集成方法及其在精准施肥中的应用[J].计算机研究与发展,2010,47(9):15301538.
[9]沈学华,周志华,吴建鑫,等.Boosting和Bagging综述[J].计算机工程与应用,2000(12):3132.
[10]ZHOU ZHIHUA, WU JIANXIN, TANG WEI. Ensembling neural networks: many could be better than all[J]. Artificial. Intelligence,2002,137:239263.
[11]BREIMAN L. Random forests [J]. Machine Learning,2001,45(1):532.
[12]夏陆岳,王海宁,朱鹏飞,等.KPCAbagging集成神经网络软测量建模方法[J].信息与控制,2015,44(5):519524.
[13]M T HAGAN, M B MENHAJ.Training feedforward networks with the marquardt algorithm[J].IEEE Transactions on Neural Network,1994,5(6):989993.
[14]RENATO SILVIODA FROTA RIBEIRO. Fuzzy logic basedautomated irrigation control system optimized via neuralnetwork s[D]. America: The University of Tennessee,1998.
(责任编辑:黄健)endprint