APP下载

基于改进LSTM的苹果价格预测模型研究

2022-07-26卢超凡史世凯王鲁

关键词:神经网络误差预测

卢超凡,史世凯,王鲁

基于改进LSTM的苹果价格预测模型研究

卢超凡,史世凯,王鲁*

山东农业大学信息科学与工程学院,山东 泰安 271018

苹果市场价格变化受多种因素影响,单一模型预测效果不佳,为了解决该问题,本文建立了一种典型相关分析(CCA)与主成分分析(PCA)相结合的长短期记忆神经网络(LSTM)价格预测组合模型 CCA-PCA-LSTM。该模型首先采用CCA和PCA选择相关性较大的影响因素,然后将选择的多因素作为LSTM的输入进行多因素价格预测。实验结果表明:在2008-2020年苹果价格进行预测得到的均方根误差为 0.592(月),平均绝对误差为 0.339 元/kg(月),平均百分比误差为4.676%(月),有效降低价格预测误差,提高了苹果价格预测的准确性。

苹果; 价格; 预测模型

苹果在我国农产品市场占有重要地位,其价格变化易受自然灾害、供求关系、季节等多种因素的影响,这直接关系到苹果从业者的切身利益。对苹果进行价格预测,不仅能够保障市场价格稳定,果农增收;且对提高宏观调控政策制定效率具有重要参考价值。

在农产品价格预测方向上,较早应用的模型有自回归积分滑动平均(ARIMA)模型及其改进模型。例如,王健[1]通过ARIMA模型对苹果市场价格进行短期预测并构建了苹果市场价格波动预警模型。此外,王美凤[2]等分别对比了SARIMA模型、X-12-ARIMA模型、Holt-Winters乘法模型和双指数平滑模型及其组合模型,但预测效果有待于提高。诸如ARIMA及其组合模型仅依赖于一维历史价格数据进行预测,未考虑多因素对预测结果的影响。为此,学者们尝试采用多元线性回归、神经网络、支持向量机等方法解决上述问题。具体地,杨静等[3]通过经验模态分解(EEMD)和支持向量机(SVR)集成预测方法在大豆价格预测上取得较优的效果。任青山[4]等使用BP-多元回归模型将生猪价格预测精度提高至93.3%。与其他模型相比,神经网络相关模型在价格预测方面应用更加广泛。就苹果价格预测而言,除早期采用BP神经网络外,近年来LSTM也逐渐应用于该领域。与单维变量输入模型相比,多维变量输入的神经网络模型效果更优。刘锦源[5]提出了一种引入EEMD对LSTM模型改进的方法,先对原始期货价格序列进行分解,再将分解所得的每个子序列喂入LSTM模型,与SVR等传统模型相比,该方法精度明显提升。而綦方中等[6]在BP神经网络的基础上引入了主成分分析法(PCA)与改进的果蝇算法(IFOA),结果表明,该模型预测精度更高。

目前,多数神经网络模型主要受限于单一数据维度,对多维数据研究较少。虽然LSTM模型提供了一种处理多维相关变量的方法,但对于变量选择多基于经验所得,因此有些优化方向倾向于对单维农产品价格进行分解子序列获取多维输入提高准确率。为了解决上述问题,本文提出了一种基于典型关联分析(CCA)与主成分分析(PCA)的LSTM神经网络组合方法。

1 数据来源与研究方法

1.1 数据收集与选择

本文所使用数据主要来自国家统计局、美国农业部、布瑞克农业大数据平台和农业农村部。其中,富士苹果价格与相关竞品数据共4643条,时间跨度为2008年1月至2020年9月;其他时间维度数据对齐苹果价格,自2008年起选取,其中2020年度尚未统计的数据为拟合值。主要数据类型有:富士苹果价格(元/kg)、香梨价格(元/kg)等六种竞品价格,苹果需求量(万t)、苹果产量(万t)、梨产量(万t)、苹果种植面积(千hm2)以及年末总人口(万人)、居民人均可支配收入(元)、国民总收入(亿元)等经济因素,受灾面积(千hm2)、水灾受灾面积(千hm2)等受灾情况的相关数据。

为了确定苹果价格预测模型的输入数据种类,将收集到的日度价格数据划分为日、周、月三种时间维度数据表。仅使用CCA方法选取与苹果价格相关度高的数据。CCA分析结果如表1,2所示:

表1 受灾数据相关性

Table 1 Disaster data relevance

表 2 价格、经济数据相关性

从表1可知,所有的受灾数据均为负相关,说明受灾数据对苹果价格影响较小,可以舍弃。出于谨慎考虑,将受灾面积这一受灾数据中较为总体的一维加入第二次CCA分析,结果如表2所示。由表可知,受灾面积依然负为相关,进一步为舍弃受灾数据提供了依据。为了得到其他数据,本文将表2中相关性降序,最终选取苹果价格、香梨价格、香蕉价格、巨峰葡萄价格、苹果需求量、梨产量、苹果种植面积7维数据作为苹果价格预测模型的输入。

2 研究方法

2.1 典型关联分析

典型关联分析(CCA)是一种经典的多模态特征学习方法[7],主要用于选择与某一维数据相关度高的特征变量。在实际使用中可以抛弃掉无关变量,提升模型准确度。具体计算结果为与某一维或多维需求变量的因变量相关度,其应用已覆盖多种领域。

2.2 主成分分析

PCA广泛应用于数据处理方向,主要作用是实现数据降维,并保留足够高的贡献率。在实际应用中,主要用来进行数据预处理,提取多维变量中的有效因素,降低信息冗余,最高效的保留原始数据贡献率。

2.2.1 LSTM方法LSTM是RNN的变体之一,能够解决RNN梯度消失和梯度爆炸问题,因此在处理时间序列数据方面性能更优。

1997年Sepp Hochreiter和Jurgen Schmidhuber提出了长短期记忆模型[8],他们基于循环神经网络(RNN)模型设计了独特的记忆与遗忘模块[9,10]。LSTM网络结构中四个模块除了激活函数外主要分为输入门(input gate)、遗忘门(forget gate)和输出门(output gate)控制记忆单元(cell)和输出。Cell内部计算过程如图1所示[11]:

图 1 LSTM 的记忆单元

Cell中g为输入节点,i为输入门,f为遗忘门,o为输出门,s为内部状态节点,输入为被输入门过滤后当前输入以及前一时间点的内部状态节点输出。LSTM层中Cell的计算可以表示如下组式(1)[11]:

3 结果及分析

3.1 评价指标与参数设置

选择平均绝对误差(MAE)、平均百分比误差(MAPE)与均方根误差(RMSE)三个指标来评价 LSTM 模型的预测效果与改进效果,计算公式如下:

其中,为样本数量,为预测价格。

根据LSTM模型计算原理,实际操作可分为三步,首先划分数据集为训练集和测试集,之后搭建LSTM神经网络结构,最后根据误差进行参数调整即可。数据集的训练集与测试集的划分为93:7,(将2019年夏苹果价格突变划为训练集)。

上述7维数据作为输入,输入前应做归一化处理。具体网络为两层LSTM(包括输入层)与一层全连接Dense输出层,还加入两层参数为0.5的Dropout与L2正则化方法,防止过拟合。其中LSTM前馈网络层neurons=100。采用参数为0.001的Adam算法进行优化,损失函数为MAE。

经过不断调参,最终确定批大小batch=64,迭代次数250次。以及相应模型的输入时间步数。

3.2 结论与讨论

经过不断调整参数得到的最优CCA-LSTM模型预测误差如表3所示,其中日价格预测输入步数为40,预测未来1 d价格;周价格预测输入步数为4,预测未来7 d价格;月价格预测输入步数为 12,预测未来30 d价格。

由表2可知,经济相关数据虽然相关性不为负值,但是数值过低,对苹果价格影响并不大,但从农产品市场现状与相关预测模型论文的经验中可得,经济因素对苹果价格有重要影响。为了更好的保留经济因素的原始数据贡献率,但同时不夸大其对价格预测模型的影响,本文尝试通过使用PCA方式降维更多的经济因素至一维,重新参与CCA价格相关性分析。

表 3 CCA -LSTM 各模型评价指标

本文选取如下近20年数据作为经济因素的因子:国民总收入(亿元)、国内生产总值(亿元)、第一产业增加值(亿元)、第二产业增加值(亿元)、第三产业增加值(亿元)、人均国内生产总值(元)、居民消费水平(元)、居民消费价格指数(1978=100)、农业生产资料指数(上年=100)。将其进行PCA分析,保留至一维,保存下88.4%的贡献度,得到如表4结果。

表 4 经济数据PCA后部分值

将降维后得到的经济综合因素作为一维数据加入表2中,所有维度再进行CCA分析计算,得到表5结果。

表 5 加入经济综合因素相关性

由表5根据PCA与CCA分析结果可得,与苹果价格相关度从高到低8维数据依次为苹果价格、香梨价格、梨产量、香蕉价格、巨峰葡萄价格、苹果需求量、经济因素和苹果产量。

而在加入通过PCA降维的经济因素这一数据前进行的CCA分析所得到的与苹果价格相关度从高到低的原7维数据依次为苹果价格、香梨价格、香蕉价格、巨峰葡萄价格、苹果需求量、梨产量、苹果种植面积。

由实验结果可知,作为综合因素,经济影响变大,但到底是否有助于模型训练,还需做进一步实验验证。

为验证相关性提高的经济因素是否有助于提高模型准确率,以月度数据为例,尝试将输入的维度和数据进行修正,实验结果如表6所示。

表 6 PCA 优化结果

通过表6得出将果园面积替换为经济因素,同时将梨产量替换为苹果产量,成功优化原模型。最优条件下月价格模型预测结果如图2所示。

图 2 CCA-PCA-LSTM 模型月价格预测

CCA-PCA-LSTM月价格数据预测模型在测试集上的最优结果为MAE=0.204,MAPE=3.050,RMSE=0.228,即训练误差3.050%。将该模型对全部数据进行预测,结果如图3所示,MAE=0.339,MAPE=4.676,RMSE=0.592,即预测误差为4.676%,优于原模型5.678%。

在相同条件上再对周与日的价格预测模型训练。全部结果如下表所示。

表 7 CCA -PCA-LSTM 改进模型评价指标

因此将果园面积替换为经济因素,再将梨产量替换为苹果产量的 CCA-PCA-LSTM模型成功优化了CCA-LSTM模型的日、周、月度价格预测。综上所述,将二者误差数据总结如表8所示。

表 8 两种模型误差对比

由实验结果可知,加入PCA方法优化参数输入后的模型有更准确的预测效果。在对参数选择时仅通过CCA分析无法更全面的提取价格相关变量,所以在预测效果中表现不如CCA-PCA-LSTM 模型。但当数据量足够大时,二者误差区别不够明显,如日价格预测模型中,CCA-PCA-LSTM模型虽然MAE、MAPE与RMSE均优于CCA-LSTM,但其中对农产品价格预测影响最大的MAE仅优化了0.002 元/kg。不过整体来看CCA-PCA-LSTM的预测结果较为精确,很好的优化了原模型的预测效果,即使是误差最大的月价格预测模型,平均绝对误差也仅为0.398 元/kg。

4 结论

本文提出了一种对LSTM预测模型的改进方法,针对LSTM输入参数的选择,本文采用典型关联分析和主成分分析结合的方法能够较为精确地选择相关性高的影响因素,并采用所提CCA-PCA-LSTM预测模型成功提高了苹果价格预测的准确率。实验结果表明,该方法相对于只使用CCA方法的CCA-LSTM模型具有更好的预测效果,能够较好处理非线性的农产品价格。同时实验结果也表明了CCA-PCA-LSTM模型预测方法能够较好拟合苹果价格波动。计划在未来研究中将CCA-PCA-LSTM模型进一步推广至其他农产品价格预测领域,以验证该模型的有效性和适用性。

[1] 王健.我国苹果市场价格预测与波动预警研究[J].北方园艺,2019(9):170-175

[2] 王美凤,赵京音,邵芳,等.上海青菜价格短期预测模型的比较研究[J].上海农业学报,2017,33(1):160-165

[3] 杨静,张大斌,方洁凤等.基于优化EEMD和支持向量机的国内大豆价格预测[J].广东农业科学,2019,46(11):134-140

[4] 任青山,方逵,朱幸辉.基于多元回归的BP神经网络生猪价格预测模型[J].江苏农业科学,2019,47(14):277-281

[5] 刘锦源.面向农产品期货价格预测的改进LSTM方法[J].江苏科技信息,2019,36(27):48-52

[6] 綦方中,林少倩,俞婷婷.基于PCA和IFOA-BP神经网络的股价预测模型[J].计算机应用与软件,2020,37(1):116-121,156

[7] Sun QS, Zeng SG, Liu Y,. A new method of feature fusion and its application in image recognition [J]. Pattern Recognition, 2005,38(12):2437-2448

[8] Bengio Y, Simard P, Frasconi P. Learning long-term dependencies with gradient descent is difficult [J].IEEE Transactions on Neural Networks and Learning Systems, 1994,5(2):157-166

[9] Greff K, Srivastava RK, Koutnik J,. LSTM: A search space odyssey [J]. IEEE Transactions on Neural Networks and Learning Systems,2017,28(10):2222-2232

[10] Gers FA, Schraudolph NN, Schmidhuber J. Learning precise timing with LSTM recurrent networks [J]. Journal of Machine Learning Research, 2002(8):115-143

[11] Lipton ZC, Berkowitz J, Elkan C, A Critical Review of Recurrent Neural Networks for Sequence Learning [J/OL]. arXiv preprint.arXiv: 1506.00019v4, 2015.https://doi.org/10.48550/arXiv.1506.00019

Research on the Apple Price Prediction Model Based on Improved LSTM

LU Chao-fan, SHI Shi-kai, WANG Lu*

271018,

There are many factors affecting the change of apple market price, and the prediction effect of single model is less than satisfactory. In order to solve this problem, this paper established a combination model of Long Short-Term Memory (LSTM) neural network price prediction, CCA-PCA-LSTM, which combines canonical correlation analysis (CCA) and principal component analysis (PCA). In this model, CCA and PCA were firstly used to select the influential factors with high correlation, and then the selected multi-factors were used as the input of LSTM for multi-factor price prediction. The experimental results showed that the root mean square error, mean absolute error and mean percentage error were 0.592 (month), 0.339 yuan/kg (month) and 4.676% (month) respectively, which can effectively reduce the price prediction error and improve the accuracy of apple price prediction.

Apple; price; forecast model

F031.4

A

1000-2324(2022)03-0491-06

10.3969/j.issn.1000-2324.2022.03.023

2021-11-12

2021-12-25

山东省重大科技创新工程项目:现代果园智慧种植装备与大数据平台研发及示范应用(2019JZZY010706)

卢超凡(2000-),男,本科生,主要从事农业预测模型研究. E-mail:s1mple_lcf@163.com

Author for correspondence. E-mail:wangl@sdau.edu.cn

猜你喜欢

神经网络误差预测
无可预测
基于神经网络的船舶电力系统故障诊断方法
选修2-2期中考试预测卷(A卷)
选修2-2期中考试预测卷(B卷)
选修2—2期中考试预测卷(A卷)
MIV-PSO-BP神经网络用户热负荷预测
北斗导航种萝卜百米误差仅2厘米
基于改进Hopfield神经网络的对地攻击型无人机自主能力评价
基于神经网络的中小学生情感分析
隧道横向贯通误差估算与应用