基于BP神经网络算法的粮食储存品质预测模型构建研究

2020-12-15 04:45兰雪萍陈晋莹姜友军
中国粮油学报 2020年11期
关键词:生态区储粮温湿度

兰雪萍 陈晋莹 姜友军 邹 潇 陈 猛

(中储粮成都储藏研究院有限公司1,成都 610091) (西南财经大学统计学院2,成都 611130)

粮食是国家战略物资,生产环节具有明显的季节性,不能像工业产品流通一样零库存周转,因此需要保证一定的储备数量[1,2]。同时,在大部分储粮环境下,粮食存放数年后品质会逐步劣变,最终失去食用价值[3]。为了保证储备粮品质,一方面,需要准确预测粮食品质变化趋势,调整储粮条件;另一方面,要在品质快速劣变前用新粮轮换旧粮,减少储粮企业错过最佳轮换时机而产生的损失。

互联网的发展带来海量数据信息,计算机深度学习算法的快速发展给利用这些信息带来可能。模拟和抽象生物的神经系统在生物学中的结构、状态和基本工作原理,人工神经网络技术(Artificial Neural Network, ANN)通过构建数学模型并不断调整内部大部分节点间互相连接关系表现出一些技能特性,如学习能力、自适应能力和自组织能力,在信号处理、自动控制、模式识别和预测分析方面解决了许多其他机器系统很难处理的问题[4-6]。

BP算法是神经网络模型中最常用的一种算法,也叫误差反向传播算法,其模拟学习过程包括输入信号正向传播和误差信号反向传播,通过不断的误差反馈调节网络隐层权值,使实际输出值逐步接近期望值[7]。根据气候、地理以及耕种差异,可从地域上将我国划分为7个储粮生态区:第一区:高寒干燥储粮区;第二区:低温干燥储粮区;第三区:低温高湿储粮区;第四区:中温干燥储粮区;第五区:中温高湿储粮区;第六区:中温低湿储粮区;第七区:高温高湿储粮区[8]。本研究按不同储粮生态区的不同粮食品种分类,运用BP神经网络算法建立数学模型,深度挖掘和分析庞大的储粮数据,运用Python神经网络工具箱构建不同地区、不同品种粮食储存品质预测模型。形成数据采集、数据处理、数据分析、数据决策反馈改进的闭环,实现粮食储存品质时间序列预测,为探索不同地区不同品种粮食的质量标准及合理轮换周期提供直观参考。

1 材料与方法

1.1 数据的来源与提取

1.1.1 数据的来源

构建预测模型的数据来源于中国储备粮管理集团有限公司的粮情测控系统,完全覆盖7个储粮生态区。粮食储存品质短期内变化不明显,质量普查通常半年1次,分别在3月和9月,因此研究中时间序列的跨度为6个月,不同粮食品种对应的指标类型见表1。

同时还获取了粮食平均温度和仓内湿度的数据,以探究粮食品质变化与储藏环境条件的关系。温湿度数据是月度数据,一年中4—9月温度最高,一般认为对粮食质量的影响较大,本研究则以4—9月的温湿度数据进行建模预测。

表1 不同粮种对应的指标类型[9-12]

1.1.2 数据的提取

从历史数据库中按库点为单位将数据提取成Excel表格,再从Excel中筛选出每一批粮食的指标数据,并按时间顺序排列。共取得2014—2018年中储粮各分子公司春季、秋季粮食质量检验数据186 787条,通过大数据模型筛选获得有效数据111 805条,涉及26个分公司,1 453个库点,64 745个货位,其中小麦检验数据43 074条,玉米检验数据24 215条,粳稻检验数据13 475条,籼稻检验数据27 177条,大豆检验数据3 864条。

1.2 预测模型构建方法

BP神经网络是应用较为广泛的神经网络模型之一,在复杂的非线性系统中具有较高的建模能力,在预测方面应用广泛。模型运行的本质是先利用样本数据建立起神经网络模型,然后施加输入,通过模型运算得到预测结果,实际操作过程分为三步:创建-训练-仿真[13]。

1.2.1 数据的归一化处理

1.2.2 创建BP神经网络架构

BP神经网络架构包括输入层、隐藏层、Dropout层、Dense层和输出层,输入层输入经过预处理的数据,然后依次经过隐藏层使用现行加权函数和激活函数对输入数据进行计算,Dropout层为了防止训练出来的模型过拟合,在模型训练过程中更新参数时暂时随机断开指定数量的神经元;Dense层是全连接层,其运算为output=activation(dot(input,weight)+bias),其中activation是激活函数,dot为矩阵相乘运算函数,input是Dense层的输入,也是输入层的数据依次经过隐藏层和Dropout层的运算得到的输出值,weight是权重矩阵,bias为偏置值,output为最后输出的预测结果。

1.2.3 BP神经网络计算过程

ft=relu((Wf*X)+b0)

it=relu((Wi*ft)+b0)

output=(Woutput*it)+boutput

式中:ft为第一隐藏层的输出;it为第二隐藏层的输出;output为输出值;Wf为当前层的权重矩阵;b0为当前层的偏置项;relu()为ReLU激活函数。BP神经网络输入数据是形状为(samples,timesteps)的2D矩阵,samples为样本数量,timesteps为输入数据的维度。

进一步通过以下公式进行模型验证:

式中:RE为相对误差;Ot为第t期粮食储存品质指标实测数据;Pt为通过构建完成的BP神经网络模型预测的第t期粮食储存品质指标数据;n为模型验证样本数。

1.2.4 确定模型参数

使用网格搜索思想,按照均方误差(MSE)最小的原则确定最优层数和单元数量。通过对不同预测维度的模型比较分析,确定最终分级模型组结构。

在BP神经网络模型中,需要人工设定的重要参数包括3个:训练集和测试集的数据维度、网络层数、网络隐层神经单元数量。训练集和测试集维度,即构建模型所需数据的期数,数据越连续且维度越大,用于模型学习的机会越多,越有利于预测。根据各粮种储备数据实际情况,维度在3~5之间。

第二个参数网络的层数,在前期对抽样的库点测试之后,数据显示双隐层神经网络和三隐层神经网络的效果没有明显的差别,但是三隐层网络的训练时间要远大于双隐层网络,所以选择双隐层作为模型的结构。第三个参数是网络隐藏层神经单元的数量,按照网格搜索思想,以MSE最小为原则,确定神经单元的数量。

2 BP神经网络的应用

2.1 构建温湿度-品质预测模型

基于3月的质量、储存品质指标,以及4—9月的温湿度数据,预测9月的储存品质指标,公式为:

Yt=F(X1,t-1,…,X6,t-1,Yt-1,Z1,t-1,…,Z6,t-1)+εt

其中,Yt和Yt-1为9月和3月的储存品质指标,X1,t-1~X6,t-1为3月到8月的温湿度数据,Z1,t-1~Z6,t-1为3月的水分、杂质等其他质量指标。模型见图1,该模型综合考虑了质量指标、环境条件对储存品质指标的影响,可用于模型学习的数据种类较多。

图1 温湿度-品质预测模型

2.2 构建时间序列品质预测模型

各生态区的温湿度条件和储粮手段不同,一般认为处于相同储粮生态区的粮食品质变化规律更为接近,因此本研究的品质时间序列预测模型分生态区进行构建。以维度为4的情况为例,基于连续三期的品质指标预测第四期的品质指标,公式为:yt=F(yt-3,yt-2,yt-1),模型见图2。该模型中,可用于学习的数据量较多,可预测储存时间超过3期(1.5年)的粮食情况。

图2 时间序列品质预测模型

3 结果分析

3.1 温湿度-品质预测模型

以小麦、玉米、粳稻、籼稻、大豆5个粮食品种为研究对象,按品种建立温湿度-品质预测模型,随机选取4/5的数据组为训练集进行网络训练,另外1/5的数据组作为测试集,对训练好的网络进行测试,模型基本情况见表2。预测模型中包含粮食平均温度、仓内湿度以及其他质量指标等多个变量,神经网络可获得多种因素对储存品质指标的影响。该模型是用3月的春季普查数据和春夏两季的温湿度数据来预测9份的秋季普查结果,可为粮食安全度夏政策提供参考。

表2 温湿度-品质预测模型基本情况

3.2 时间序列品质预测模型构建

为增加预测的准确性,探讨储存品质指标的变化规律,通过对各生态区中的数据进行收集和预处理,按照时间顺序排列形成3~5个数据维度,构建了25个时间序列品质预测模型。随机选取训练集和测试集,25个BP神经网络的预测情况如表3所示。各粮种分生态区建模,平均预测误差如图3所示。

图3 时间序列品质预测模型效果

表3 时间序列品质预测模型基本情况

该模型对小麦面筋吸水量的预测效果较好,平均预测误差均小于5%,对玉米、籼稻、粳稻的脂肪酸值平均预测误差在5%~10%之间,对大豆粗脂肪酸值的平均预测误差较高,在10%~22%之间。由于该模型训练数据来源于同一生态区,粮食储存环境相似,储存品质具有相似的变化规律,因此该模型与温湿度-品质时间序列预测模型的预测结果相比,5个粮种的平均预测误差分别降低12.8%、6.4%、8.4%、8.0%和8.1%,预测效果更好。

4 模型验证

上述模型的训练和测试所用数据为2014年至2018年产生的数据,为验证数据更新后的预测效果,继续采集2019年的储粮数据对时间序列品质预测模型进行验证。图4为5个粮种验证试验中的预测值与实测值比较,表4为验证后的平均预测误差。从图4和表4中可以看出,预测值与实测值变化趋势基本一致,平均预测误差在15%以下。

表4 各粮种平均预测误差验证结果

5 结论

本研究构建了两种应用模型,时间序列品质预测模型使用连续2~4期的品质指标预测下一期的品质指标,分生态区构建了25个预测模型,预测误差在0.75%~22.71%之间;温湿度-品质时间序列预测模型使用1期的多种指标预测下一期的品质指标,预测误差在13%~27%之间。

由于时间序列品质预测模型分生态区建模,同一生态区内的数据具有相似的变化规律,从测试结果来看,时间序列品质预测模型对于粮食储存品质指标具有更好的预测效果。通过采用更新后的数据进行验证,基于BP神经网络构建的时间序列品质预测模型平均预测误差均小于15%,可用于储粮企业分析粮情并指导生产作业。

猜你喜欢
生态区储粮温湿度
黍稷种质资源的经济系数与生态环境的关系
山西省黍稷高抗倒种质资源的丰产性和适应性鉴定
基于AT89C51的数字型蚕用温湿度计的设计
中储粮湖南分公司全面完成“标准仓、规范库”创建
河南省不同生态区对花生新品种漯花8 号农艺性状和产量的影响
摄影欣赏
基于温湿度控制的天气预测装置
基于DSP和μcos的温湿度检测系统的设计
PLC在计算机空调机房温湿度控制中的应用
关于在西安浐灞生态区建立“亚欧大陆经济贸易合作组织”的策略研究