基于VMD和LSTM的农产品价格预测
Price Forecasting of Agricultural Products Based on VMD and LSTM
摘要: 现今的气候变化和环境问题对农业生产造成了越来越大的影响,而农产品价格的波动对农业生产者和消费者都具有直接的经济影响。通过研究农产品价格预测,可以帮助人们更好地应对环境变化带来的挑战。为提高短期价格预测精度,提出了一个基于变分模态分解(Variational Mode Decomposition, VMD)和长短期记忆网络(Long Short-Term Memory, LSTM)的多通道短期价格预测模型。该模型利用VMD将原始时间序列数据分解为一系列不同特征的模态函数,并对每个模态分量分别使用长短期记忆网络进行特征分析预测,最后对各模态分量下的预测结果进行整合。实例测试结果表明,VMD-LSTM模型的预测准确度高于LSTM,具有不错的实用效果。
Abstract: Nowadays, climate change and environmental issues are increasingly impacting agricultural production, while fluctuations in agricultural product prices directly affect both producers and consumers economically. Studying agricultural price prediction can help people better cope with challenges brought by environmental changes. To improve the accuracy of short-term price forecasting, a multi-channel model based on Variational Mode Decomposition (VMD) and Long Short-Term Memory (LSTM) is proposed. This model utilizes VMD to decompose original time series data into a series of modal functions with different characteristics. Each modal component is then analyzed and predicted using LSTM for feature extraction. Finally, the predictions from each modal component are integrated. Results from empirical testing indicate that the VMD-LSTM model outperforms LSTM alone in terms of prediction accuracy and demonstrates promising practical utility.
文章引用:张松鸿. 基于VMD和LSTM的农产品价格预测[J]. 电子商务评论, 2024, 13(4): 693-702. https://doi.org/10.12677/ecl.2024.1341201

1. 引言

农业在许多国家的经济结构中占据着重要地位,尤其是在发展中国家。农产品价格的波动对农业生产者和消费者都具有直接的经济影响。近年来,我国小宗农产品价格时常发生波动起伏较大的现象,不仅损害了农民和消费者的利益,而且对人们的日常生活产生了较大的影响[1]。价格预测可以帮助农民制定合理的种植计划,从而提高生产效率并减少经济损失。农产品价格预测可以为供应链各环节提供有价值的信息,例如,企业可利用期货回避价格大幅波动中的经营风险,优化库存管理,确保供应链的高效运作,而政府和政策制定者可以借助准确的价格预测来制定和调整农业政策,确保市场稳定和粮食安全,减少粮食价格波动对社会的负面影响[2]

随着大数据、人工智能的发展,农产品价格预测的精确度和实用性在很大程度上得以提升。陈立平等人利用新疆南疆的红枣期货历年交易价格数据,研究了基于长短期记忆网络(LSTM)的价格预测模型,其成果对价格变化起到较好的指示作用[3]。王露则以大连商品交易所黄大豆1号为研究对象,选取了多个特征变量,并通过稀疏自编码器(SAE)和主成分分析(PCA)两种特征提取方法进行降维,最后再利用BP与LSTM模型对大豆期货价格进行了预测,取得不错的应用效果[4]。李英杰在ARMA模型中引入GARCH模型和波动性聚类分析方法,结合期货定价理论,对大蒜期货的价格进行预测分析,并对大蒜期货市场开发推广提出了建议[5]。研究表明,机器学习技术可以处理大量复杂的历史数据、气候信息、市场需求等因素,提供更为精准的预测结果。因此,研究农产品价格预测不仅能推动农业领域的技术进步,还能为相关的数据科学和技术应用提供新的思路和实践案例。

综上所述,农产品价格预测具有较强的现实意义和重要的理论研究意义,它不仅在经济、社会、贸易和技术等方面发挥关键作用,还能为应对环境变化和提升食品安全提供有力支持。因此,为了更加有效地捕捉农产品价格变化背后的复杂因素,笔者引入了变分模态分解(VMD)和长短期记忆网络(LSTM)的组合模型,并以贵州省农业农村厅平台发布的物价周报监测数据进行验证,以期所提出的模型能够更好地服务于农业生产者、消费者和政策制定者,为农产品价格预测领域的研究和实践提供新的视角。

2. 研究方法

2.1. VMD变分模态分解原理

变分模态分解(Variational Mode Decomposition, VMD)是经验模态分解(Empirical Mode Decomposition, EMD)的改进方法,也是一种自适应、完全非递归的模态变分和信号处理的方法,其自适应性表现在可根据实际情况确定所给序列的模态分解个数,并能求解过程中自适应地匹配每种模态的最佳中心频率和有限带宽[6]-[8]。对一个给定的信号序列,采用VMD分解方法得到其本征模态函数序列(Intrinsic Mode Function, IMF)的过程如下所示:

1) 对输入的信号序列数据构造下面的变分问题:

δ( t )={ 0     t0     t=0 , + δ( t )dt =1 (1)

min { u k },{ w k } { k=1 K t [ ( δ( t )+ j 4π ) u k ( t ) ] e j ω k t 2 2 } (2)

s.t.    k=1 K u k =f

其中,K表示分解模态个数, { u k }={ u 1 , u 2 ,, u K } { ω k }={ ω 1 , ω 2 ,, ω K } 分别表示模态集合与中心频率集合;f代表输入的原始信号; 则代表卷积运算符。

2) 引入Lagrange乘法算子 λ 和惩罚系数 α ,可消去上述式子中的约束条件,并将其转化为如下式子:

L( { u k },{ v k },λ )=α k t [ ( δ( t )+ j πt ) u k ( t ) ] e j ω k t 2 2 + f( t ) k u k ( t ) 2 2 + λ( t ),f( t ) k u k ( t )

3) 利用交替方向乘子法,通过迭代更新 u k n+1 ω k n+1 λ k n+1 ,进一步逼近所构造的变分问题的最优解:

u ^ k n+1 ( ω )= f ^ ( ω ) i<k u ^ i n+1 ( ω ) i>k u ^ i n ( ω ) + λ ^ n ( ω ) 2 1+2α ( ω ω k n ) 2 (3)

ω ^ k n+1 = 0 ω | u ^ i n+1 ( ω ) | 2 dω 0 | u ^ i n+1 ( ω ) | 2 dω (4)

λ ^ n+1 ( ω )= λ ^ n ( ω )+τ( f ^ ( ω ) k=1 K u ^ k n+1 ( ω ) ) (5)

4) 迭代停止条件,设定最大迭代次数N和误差阈值 ε ,当计算到某个正整数n可满足以下式子时,则将其计算所得子序列作为原序列的模态分解序列。

k=1 K ( u ^ i n+1 ( ω ) u ^ i n ( ω ) 2 2 / u ^ i n+1 ( ω ) 2 2 ) <ε (6)

2.2. LSTM长短期记忆网络

长短期记忆网络(LSTM)是循环神经网络(recurrent neural network, RNN)的变体,可解决RNN梯度爆炸或梯度消失的问题[9] [10]。LSTM最核心的部分是图1中的 C t 所在部分,这个部分叫作单元状态(cell state),它始终存在于LSTM的整个循环计算过程中。另外,需要说明的是 [ h t1 , x t ] 表示将两个向量拼接为一个更高维度的向量。

长短期记忆网络中采用了两个常见的激活函数:

σ( x )= 1 1+ e x ,      0<σ( x )<1 (7)

Figure 1. Schematic diagram of the internal structure of the LSTM loop cell

1. LSTM循环单元的内部结构示意图

tanh( x )= e x e x e x + e x ,    1<tanh( x )<1 (8)

图1可以看出,LSTM的循环单元主要由遗忘单元、输入单元和输出单元三个部分构成,每个部分的数据处理方式可以详细描述为:

1) 遗忘门:LSTM中的遗忘门控制着前一时刻细胞状态中的信息被保留多少。具体计算方式如下:

f t =σ( W f [ h t1 , x t ]+ b f ) (9)

其中, f t 表示遗忘门, W f b f 分别是遗忘门中神经网络对应的权重和偏置, h t1 是隐藏层上一时刻的计算结果, x t 是当前时刻的输入, 在这里代表矩阵乘法。

2) 输入门:LSTM中的输入门决定当前时刻的输入中有哪些信息会被添加到细胞状态中,这一个部分使用了 tanh( x ) σ( x ) 两个激活函数。

i t =σ( W i [ h t1 , x t ]+ b i ) (10)

C ^ t =tanh( W C [ h t1 , x t ]+ b C ) (11)

其中,输入门向量 i t 通过控制使用 C ^ t 的特征用于更新下一时刻的细胞状态 C t b i b C 分别表示两个偏置向量, W i W C 是对应的网路连接权重矩阵。

输入门与遗忘门共同控制下一时刻的细胞状态更新, · 在这里指矩阵的点乘运算,t时刻的单元状态更新公式为:

C t = f t · C t1 + i t · C ^ t (12)

3) 输出门:输出门的两个计算公式为

O t =σ( W o [ h t1 , x t ]+ b o ) (13)

h t = O t ·tanh( C t ) (14)

其中, O t 是输出门的关键控制向量, W o b o 是输出门部分对应的权重矩阵和偏置向量。

2.3. VMD-LSTM模型构建

本文主要针对未来短期内的农产品价格变化进行预测,提出了一种基于VMD-LSTM的短期时间序列预测模型,该模型的结构如图2所示。首先,将给定的一组时间序列数据进行数据标准化处理,然后采用VMD模态分解方法将预处理的时间序列分解为多个模态分量,然后分别在每个分量上利用LSTM进行未来一段时间的短期预测,最后将得到的各个预测分量进行叠加重构得到最终的价格预测数值。其中,经过反复实验,确定LSTM模型使用前4周的历史数据对下一周的均价数据进行预测,隐含层神经元个数设置为8,LSTM训练迭代次数设置为1000次。

Figure 2. VMD-LSTM prediction model

2. VMD-LSTM预测模型

为了更加直观地展示LSTM对时间序列数据的VMD模态分量进行拟合的效果,这里选用贵州省农业厅服务平台上2023年第1周至2024年第25周时间段内的菜籽油每周均价数据作为研究对象,采用VMD对该原始数据进行模态分解,并利用LSTM对每个模态分量进行预测,预测结果如图3所示。VMD的参数设置为:惩罚参数 α=2000 ;模态分量个数经反复实验选定为 K=6 ;初始中心频率 ω=0 ;迭代误差 ε= 10 7

3. 算例实验

3.1. 数据来源

为确保数据的可靠性,采用贵州省农业厅服务平台发布的农产品批发市场价格监测周报数据,并选择菜籽油、蔬菜、水产、食用菌类干货这四类农产品的每周均价数据进行实证研究。研究数据采集时间段为2023年第1周至2024年第25周,采集到的菜籽油均价、蔬菜均价、水产均价和食用菌类干货均价的每周价格数据走势如图4所示。

3.2. 数据预处理

在选择输入变量过程中,考虑到数据的量纲有较大差别,会影响预报的精度和模型的训练效率,

Figure 3. Prediction of modal component data of canola oil price series using LSTM

3. 使用LSTM对菜籽油价格序列的模态分量数据进行预测

Figure 4. Weekly price trends for canola oil, vegetables, aquatic products, and dried edible mushrooms

4. 菜籽油、蔬菜、水产、食用菌干货的每周价格走势

因此对使用的农产品均价数据进行归一化处理。归一化处理时利用数据的最大值和最小值,将数据归一化映射到[0, 1]区间上,公式为:

x ¯ ( i ) = x i x min x max x min (15)

其中, x ¯ ( i ) 为某一变量归一化后的数据值; x i 为变量原始数据; x max x min 分别为原始数据的最大值和最小值。

3.3. 基于VMD-LSTM和LSTM的预测结果比较分析

为更方便地评估VMD-LSTM模型与LSTM模型对农产品价格走势进行短期预测的能力,本文对VMD-LSTM与传统的LSTM模型的预测结果采用平均绝对误差(mean absolute error, MAE)、平均绝对百分比误差(mean absolute percentage error,MAPE)及均方根误差(root mean square error, RMSE)三个评判指标进行对比分析。各指标数据结果见表1,评判指标的计算公式如下:

MAPE= 1 n i=1 n | y i y ^ i | y i ×100% (16)

MAE= 1 n i=1 n | y i y ^ i | (17)

RMSE= 1 n i=1 n ( y i y ^ i ) 2 (18)

对这三种常用的评判指标而言,其数值越接近0,则表明预测数值与真实值的差值越接近0,此时表明模型的性能越优异。

Figure 5. Price prediction results of four agricultural products by VMD-LSTM with LSTM

5. VMD-LSTM与LSTM对四种农产品的价格预测结果

在使用VDM-LSTM与LSTM两种模型进行短期价格预测过程中,本文采用前80%的数据作为训练集,即2023年第1周至2024年第7周的均价数据,剩余20%的数据作为测试集,即2024年第8周至2024年第24周的均价数据。四种农产品的短期价格预测均按照相同的比例将均价数据分成训练集和测试集,以便于更好地比较VMD-LSTM与LSTM在不同数据集上的预测效果。图5展示了VMD-LSTM与LSTM分别对菜籽油、蔬菜、水产和食用菌类干货四种农产品的价格进行预测的结果,其中x坐标表示某年第几个周,如2023-14表示2023年第14周。从四种产品的预测结果图像上可以看出,在训练数据上,VMD-LSTM与LSTM均能很好地逼近原始数据,拟合效果都很出色。另外,LSTM在水产均价上的预测结果符合真实价格的趋势,而在菜籽油、蔬菜和食用菌干货三种农产品均价上的预测曲线波动较大。相比之下,VMD-LSTM模型在四类农产品对应的均价数据测试集上的预测曲线波动较小,对应的短期价格预测趋势较为符合真实价格走势。

表1展示了VMD-LSTM与LSTM各自对菜籽油、蔬菜、水产和食用菌干货的均价预测结果的MAPE、MAE、RMSE三个指标数值,从中可以看出,与LSTM相比,VMD-LSTM对各类农产品均价进行预测的结果在不同评价指标下的数值均较接近0,这表明其预测的准确度比较出色。

Table 1. Comparison of evaluation metrics between VMD-LSTM and LSTM

1. VMD-LSTM与LSTM的评价指标对比

农产品价格

评价指标

VMD-LSTM

LSTM

菜籽油均价

MAPE

0.578

2.727

MAE

0.083

0.389

RMSE

0.099

0.429

蔬菜均价

MAPE

0.866

2.665

MAE

0.041

0.128

RMSE

0.049

0.168

水产均价

MAPE

1.722

3.309

MAE

0.441

0.832

RMSE

0.515

0.970

食用菌干货均价

MAPE

0.597

1.436

MAE

0.392

0.944

RMSE

0.489

1.210

为进一步比较两种模型预测结果的稳定性,在表2中罗列了两种模型对水产均价进行短期预测的结果与真实值的相对误差值。对比表格数据可知,LSTM的预测结果在少部分时间节点的相对误差较小,整体预测结果的相对误差数值波动较大。而VMD-LSTM在多数时间节点上的预测结果相对误差较小,且整体预测结果的相对误差数值变化幅度小,误差变化比较平缓。这表明,VMD-LSTM模型在预测结果上的稳定性总体优于LSTM模型,其预测结果较为有效。

4. 结论

本文针对价格序列数据的随机性、不稳定性以及非线性,传统预测模型LSTM对时间序列数据内部规律挖掘不够充分的问题,提出了一种基于VMD数据分解改进长短期记忆网络的多通道短期农产品价格预测模型VMD-LSTM。采用贵州省农业厅服务平台发布的菜籽油、蔬菜、水产和食用菌类干货四类

Table 2. Comparison of the results of the two models for short-term price forecasts of aquatic products

2. 两种模型对水产的短期价格预测结果对比

原始数据

VMD-LSTM

LSTM

日期

真实值

预测值

相对误差(%)

预测值

相对误差(%)

2024-8

28.14

27.55

2.107

28.14

0.004

2024-9

27.96

27.66

1.073

28.01

0.163

2024-10

29.12

28.59

1.805

29.10

0.067

2024-11

28.71

28.63

0.274

29.35

2.239

2024-12

27.37

27.67

1.112

27.91

1.958

2024-13

26.14

26.85

2.702

27.86

6.590

2024-14

25.67

26.57

3.507

27.20

5.948

2024-15

25.51

26.47

3.744

26.57

4.165

2024-16

25.82

26.23

1.607

25.93

0.412

2024-17

25.21

25.80

2.329

25.15

0.248

2024-19

24.85

25.29

1.760

24.23

2.514

2024-20

24.59

25.01

1.711

23.63

3.914

2024-21

24.34

24.86

2.142

23.40

3.846

2024-22

24.16

24.47

1.299

23.33

3.437

2024-23

23.99

23.98

0.058

23.04

3.968

2024-24

24.38

24.73

1.429

22.96

5.844

农产品的每周均价数据进行实证研究,得出以下结论:采用VMD变分模态对原始序列数据进行模态分解,并分别对不同的模态分量使用LSTM进行预测,这使模型能够更准确地处理时间序列数据中的不确定性及变化趋势,提高了价格预测的准确性和可靠性。另外,通过对比VDM-LSTM与LSTM对不同种类的农产品价格预测的结果,发现VDM-LSTM在农产品价格预测方面表现出一定的性能优势,其预测结果能在一定程度上为农产品市场的稳定运营提供理论参考和指导。

总的来说,本文建立的VMD-LSTM模型能对未来一段时间的农产品价格进行预测,且改进后的模型在进行短期预测时具有较好的稳定性与准确性。但该模型也存在一些不足之处,变分模态分解过程并不是一个完全可逆的过程,从原信号序列分解得到模态分量的过程会发生少量数据损失。如图5中食用菌干货的预测结果所示,由于食用菌干货的价格序列变化相对剧烈一些,从而在变分模态分解过程发生了更多的数据损失,这种微小的系统性误差导致VMD-LSTM在食用菌干货上的预测结果虽然比LSTM好,但预测效果显然不如在其他三种农产品上的表现。

基于目前的工作,后续可以开展更多的研究:如考虑叠加数据变化近似的模态分量,从而减少LSTM的计算量;或者从原始数据出发,寻求更加有效的数据预处理方法,以减少变分模态分解造成的少量数据损失。此外,还可以从LSTM网络结构本身出发,采用智能算法对LSTM的隐含层层数、神经元个数等结构进行优化,从而提升模型的应用效果。

参考文献

[1] 吕星辰. 基于网络舆情影响的小宗农产品价格预测研究[D]: [博士学位论文]. 哈尔滨: 东北农业大学, 2024.
[2] 王康. 经济因素对农产品期货价格的动态影响及农产品期货价格预测研究[D]: [硕士学位论文]. 大连: 东北财经大学, 2023.
[3] 陈立平, 邢小丹, 张玉亭, 等. 基于LSTM的红枣期货价格预测方法[J]. 农业与技术, 2024, 44(1): 162-165.
[4] 王露. 基于神经网络的DCE大豆期货价格预测研究[D]: [硕士学位论文]. 天津: 天津商业大学, 2023.
[5] 李英杰. 基于ARMA-GARCH模型的大蒜期货产品设计[D]: [硕士学位论文]. 绵阳: 西南科技大学, 2024.
[6] Dragomiretskiy, K. and Zosso, D. (2014) Variational Mode Decomposition. IEEE Transactions on Signal Processing, 62, 531-544.
https://doi.org/10.1109/tsp.2013.2288675
[7] 梁智, 孙国强, 李虎成, 等. 基于VMD与PSO优化深度信念网络的短期负荷预测[J]. 电网技术, 2018, 42(2): 598-606.
[8] 王寅超, 蒋本建, 韩东, 等. 基于变分模态分解(VMD)数据分解的多通道短期电力负荷预测模型[J]. 流体测量与控制, 2024, 5(3): 25-31.
[9] Liu, J., Luo, B., Yan, P., Wang, D. and Liu, D. (2017) Long Short-Term Memory Based on a Reward/Punishment Strategy for Recurrent Neural Networks. 2017 32nd Youth Academic Annual Conference of Chinese Association of Automation (YAC), Hefei, 19-21 May 2017, 327-332.
https://doi.org/10.1109/yac.2017.7967428
[10] 王鑫, 吴际, 刘超, 等. 基于LSTM循环神经网络的故障时间序列预测[J]. 北京航空航天大学学报, 2018, 44(4): 772-784.