尹丽春,贾鹏飞
(黑龙江八一农垦大学大数据仿真实验室,黑龙江 大庆 161000)
粮食安全问题与国家发展、社会进步息息相关,其不仅是人口生存的前提条件,而且是保障政治稳定、促进经济发展的重大推动力。农作物产量的有效预测既能够给予当地政府生产技术与理论支持,还可以全面推动社会经济发展。在当前人口老龄化与工业化严重的严峻考验下,农作物产量面临着巨大的生产压力,影响国家粮食安全。
因此,众多相关领域的工作人员投身于产量预测的研究中,比如:刘鹏等人根据气候因素与历史产量,通过改进神经网络构建出一种农作物产量预测方法;崔颖等人将AquaCrop模型与产量预测相结合,针对东北黑土区的玉米和大豆等农作物展开应用研究;马创等人在灰色——马尔可夫模型产量预测方法中,通过融合灰色模型与马尔可夫模型,修正灰色模型预测结果,实现产量的周期性预测。
上述方法通过历史数据、天气等能够获得有效的长期预测结果,但是农作物产量的短期预测研究成果较少。为此,本文引入随机森林算法,设计出农作物产量的短期预测方法。随机森林算法作为一种组合分类器,具有良好的分类筛选与预测性能,针对该算法处理非平衡数据集时的弊端,利用合成少数类过采样技术,提出能够增加少数类样本数据量的抽样方法,便于随机森林基础算法更稳定、更精准地完成分类与运行,同时,抑制合成少数类过采样技术聚合过程中的盲目性与边缘性,获得更加精准的短期预测结果。
已知、是两个随机矢量,森林{()}的组成元素为棵决策树(),(),…,(),则边缘函数界定公式如下所示
(1)
式中,(·)是特征函数,、分别是正确与错误的分类矢量,(·)为所取均值。分类器的置信程度随着该函数值的增加而提升。
(2)
在建立随机森林的过程中,针对任意决策树()(=1,2,…,)都具有一个对应的原始数据集合和尚未抽取的数据集合。若设定()是未抽取的数据集合,该集合中投票类别是的随机矢量占比是(,),则其计算公式如下所示
(3)
其中,表示训练样本数据量。上列分式中的分母部分表示所有未抽取数据集合的样本数量总和,分子部分则表示各决策树及其相应未抽取数据集合的正确分类数量总和。
对于随机森林正确分类的概率估算结果,若用占比(,)指代,则需要引入随机森林强度与相关度两变量。
随机森林边缘函数期望即其强度变量,界定公式如下所示
=((,))
(4)
其中,(·)表示数学期望。
将上述两公式合并、整理,推导出下列分类器强度估算公式
(5)
关于随机森林相关度变量,计算公式如下所示
(6)
(7)
(8)
(9)
农作物产量及其相关影响因素数据具有非平衡数据集特点,在预测过程中,随机森林基础算法的随机性无法较好处理非平衡数据集,会使数据更加不平衡。因此,基于合成少数类过采样技术,提出一种针对非平衡数据集的抽样方法,增加少数类数据量,以便随机森林基础算法能够更稳定、更精准地完成分类与运行。
根据相同类别样本重心相同的原则,新生成的样本也将趋向于所属类别的重心,令样本生成阶段存在一定方向性,抑制合成少数类过采样技术聚合过程中的盲目性,通过改善分布边缘的样本,克服其边缘性问题。所提抽样方法的实现流程具体描述如下:
1)求解少数类样本的重心。若把各少数类样本作为空间里的任意一点,则少数类样本中心点即构成空间重心的点集合元素,其具有的少数类样本特征随着与重心的趋近程度而越发显著。
基于矢量重心理论计算重心。假设训练集中各数据样本的属性数量是,少数类样本数量是,将随机矢量作为少数类样本的集合,则有
(10)
则该集合的重心计算公式如下所示
(11)
2)聚合选取样本。通过改进合成少数类过采样技术,让整合的样本趋于样本归属类别重心,则得到的第个合成样本为:
=+(0,1)*(-)
(12)
式中,(0,1)指在该范围中任选一个数值。
3)欠抽样处理经过合成的少数类样本集。以解得的重心与合成样本为依据,获取比需求量多的少数类样本个数,利用欠抽样处理策略,去除距离重心较远的样本点。样本点与重心之间的距离需根据实际应用需求,从常用的距离算法内采取适宜的距离算法实现计算。
4)令经过聚合的样本个数满足实际要求的平衡率,该平衡率也由实际应用需求完成设置。
基于抽样处理的有关于农作物的非平衡数据集,整合少数类与多数类样本两个集合,将其作为随机森林算法的训练数据集合,设计用于农作物产量短期预测的随机森林算法,其流程如图1所示,实现步骤如下所述:
图1 用于短期预测的随机森林算法流程图
1)利用开发web应用程序的开源工具包Bootstrap,在训练数据集合中重复选择样本集合,令各样本集合的数据量是一定的,当完成每次的样本选择后,各样本仍可重新放回样本集合中,设定未抽取的样本为袋外数据。
2)针对各决策树,任意选择多个特征变量当作分类特征集。基于决策树各节点,通过信息增益最大原理,实现最佳决策变量的选择。
3)根据选择的多个样本集合,各构建一个无剪枝操作、自由生长的决策树。
4)相互独立的单决策树的结果权重相等,故该算法归回得出的结果即各决策树的简单加权平均。
决策树个数与单决策树的随机选取特征数作为随机森林预测模型中的两个重要未知参数,需进行相应的寻优操作,再结合与农作物产量相关的影响因素,建立短期预测模型。具体步骤描述如下:
1)参数寻优:根据模型解释变量数量(即产量影响因素),设定预测模型单决策树的随机选取特征数。假设有L个解释变量,则利用下式解得单决策树的随机选取特征数g
(13)
为明确决策树数量,结合模型误差与决策树个数的相关性,据其误差变化趋势确定决策树个数,同时选取对应于最佳模型预测精度的决策树规模,作为决策树数量变化参数。
2)模型构建:依据研究地区的农作物产量相关数据,设定解释变量与预测变量分别是影响因素与产量,基于所得决策树个数、单决策树随机选取特征数的最优参数,建立出下列短期预测模型
(14)
基于某市过去十年的农作物产量与5个主要产量影响因素数据,训练所设计预测模型。再将近三年的因素数据作为输入项,得到短期内该市的农作物产量预测结果。训练用数据与预测用数据如表1所示。
表1 某市农作物历史产量数据
(15)
(16)
(17)
(18)
(19)
421 预测准度
针对该市近三年影响因素数据,经基于改进神经网络、AquaCrop模型、灰色——马尔可夫模型三种文献方法与本文方法预测后,得到图2所示的不同方法预测结果。
图2 不同方法预测值与实际产量值对比示意图
由此可以直观看出,本文方法因针对预测对象的非平衡性,基于合成少数类过采样技术,优化了数据集抽样策略,故相较于文献方法的预测偏差更小。
为提升实验数据的可靠性,根据所得各方法预测数据与实际产量数据,解得绝对误差与相对误差两指标评估结果,如图3所示。
图3 不同方法预测准度对比示意图
经对比分析发现,本文方法的绝对误差与相对误差最大值仅有5.2和0.009,而文献方法的指标则均远大于此两数值,其中,文献[5]的指标值高达22.6、0.038,这进一步说明了本文方法预测准度具有显著的优越性。
4.2.2 预测精度与稳定性
面向2019年探讨本文方法的精度与稳定性,基于所选年份的因素数据,利用各方法进行十组预测实验,得到如图4所示的预测结果。
图4 2019年十组预测值与实际产量值对比示意图
由此可以看出,该方法因利用设计的抽样方法,增加了少数类别的样本数据量,故十次预测结果始终在实际产量值附近进行小幅度波动,对比文献方法的预测稳定性更加理想。
取十组预测数据均值,计算出RMSE、MAPE以及Theil指标值,通过指标结果来增加实验数据说服力。根据不同方法的评价指标对比情况(如图5所示)可以看出,本文方法的三种指标结果都较小,约为文献方法的二分之一,这说明所建方法的预测精度相较文献方法具有更明显的优势。
图5 不同方法预测精度对比示意图
我国作为农业生产大国与消费大国,农作物安全问题一直牵制着社会的安定与政治局面的和谐。其中,农作物产量作为安全保障的关键部分之一,对经济、生活有着直接的影响。因此,研究一种有效的农作物产量短期预测方法现实意义重大。尽管本文方法能够为产量预测提供有效数据,但仍需在以下几个角度加以改进:应多省市多地区展开短期预测仿真,探索不同产量影响因素对预测结果的影响,并增加样本数据量,进一步提升预测精准度;需针对随机森林算法的收敛速度做深入分析,早日实现预测即时化;应继续探讨影响因素与产量之间的相关性与变化趋势,尝试将其作为预测方法中的变量因素,完善预测性能。