APP下载

基于SARIMA - LSTM 的零售生鲜品库存需求预测

2022-03-21熊芷瑶上海理工大学管理学院上海200093

物流科技 2022年3期
关键词:需求量生鲜残差

熊芷瑶,李 林 (上海理工大学 管理学院,上海 200093)

0 引 言

库存需求预测指根据物料历史库存需求状况来预测未来的需求量,属于库存管理中重要的一部分。随着近几年零售市场库存物料种类繁多,生命周期短,库存需求预测越发困难。尤其是生鲜类商品,它有着极大的消耗需求,同时本身具有易损耗、易变质等特点,其库存控制是需在短时期内立即做出决策判断的,因此及时准确的预测库存需求变得越发困难。

对于库存需求量时间序列预测方面,主要包括统计方法和机器学习两大类。比较经典传统的统计方法有加权平均法、指数平均法、灰色预测等。后来渐渐出现机器学习在预测方面的应用,如BP 神经网络、前馈神经网络与蝙蝠算法和缩放共轭梯度算法结合提高了传统神经网络的学习能力和预测结果的精度。近年来,单一的预测模型不能满足复杂的库存需求,逐渐出现考虑需求特性或需求影响因素的预测模型以及组合预测模型。龚巍在库存需求预测不仅考虑了电力物资的包括重要性、紧急性等需求特性,并且运用GA-BP 组合预测模型最终实现动态库存控制。Elcio, Tarallo 等运用机器学习在短保质期和易腐产品在预测方面的好处,降低零售店的库存率。

本研究提出基于SARIMA 和LSTM 的组合预测模型,并且将领域专家的意见和生鲜类商品库存的特性结合起来。考虑需求影响因素成为预测变量的一部分,应用该模型对零售生鲜类商品做出库存需求预测,并通过H 零售企业的生鲜品每月库存需求量进行验证。

1 理论方法

1.1 SARIMA 预测模型

ARIMA 全称为差分移动平均模型,通常被记作ARIMA p,d,( )q 。p 表示自回归项数,d 表示让时间序列平稳差分的次数,q表示移动平均项数。

ARIMA 模型的数学表达式如下:

其中:X是平稳变量,λ是自回归项系数,μ是残差,φ是移动平均项系数,δ 是常数项,ω 是白噪声序列,也称为残差。

SARIMA 是建立在ARIMA 模型基础之上的,考虑了其季节性元素,形式为ARIMA (p,d ,q )× (P,D ,Q,S ),其中p 为非季节性回归项数,d 为非季节差分阶数,q 为非季节移动平均项数,P 为季节性回归项数,D 为季节性差分阶数,Q 为季节性移动平均项数,S 为季节性时间跨度。

本文的研究对象为零售企业生鲜类商品,具有明显的季节性特征,因此拟用ARIMA (p,d ,q )× (P,D ,Q,S )进行建模预测。

1.2 LSTM 预测模型

LSTM 是一种特殊的RNN,具有记忆数据序列的长期依赖关系,有着强大的自学习能力和非线性拟合能力。如图1 所示,LSTM 模型结构中各单元的更新方式如下:

图1 中,x表示该时刻的数据信息,激活函数σ、tanh 表达式通常取如下值:

图1 LSTM 模型结构图

f表示遗忘门,能够过滤前序时刻的状态信息,识别前序时刻对后序时刻的影响程度;i表示输入门,用来控制输入信息进入本时刻信息的比例;o表示输出门,用于控制本时刻状态信息输出的比例,计算公式分别为:

其中:W、W、W均是权重矩阵。如公式(7) 所示,c表示本时刻状态信息,其值由本时刻输入信息以及上一时刻状态信息决定:

1.3 贝叶斯优化算法

贝叶斯优化算法能够在每次迭代中,根据代理模型拟合实际目标函数的结果选择最优评估点,减少目标函数的迭代次数,可提高模型泛化能力并避免过拟合现象。

贝叶斯优化算法的迭代过程分为三部分:根据最大化采集函数选择最优评估点;将评估目标函数加入观测数据;更新目标函数的后验概率分布和采集函数。文中采用高斯过程作为代理函数,期望提高函数为采集函数。

1.4 模型实现及评估方法

研究基于Anaconda 环境下的Python 语言对SARIMA 模型和LSTM 神经网络模型进行编程实现。其中,SARIMA 模型主要通过调用Statsmodels 库进行实现;而LSTM 神经网络模型主要通过Tensorflow 作为后端,采用Keras 进行实现。

关于模型评价,研究选用均方误差(MS E )、平均绝对误差(MA E )、平均绝对百分比误差(MA PE )三个指标来评价这几种模型对于该库存需求的时间序列预测性能,指标数值越小,说明预测精度越高,预测效果越好。这四种评价指标表达式分别为:

其中:y为实际观测值,y^为预测值,n 代表测试集的样本数量。

2 组合模型的建立

2.1 数据描述

本文采用H 零售企业2010 年至2020 年连续11 年132 个月份的生鲜类商品的库存需求量数据作为基础研究数据。其中前120 个的月份数据作为训练集,后12 个的月份数据作为测试集。

2.2 组合模型中SARIMA 模型建立

2.2.1 序列平稳化

(1) 平稳性检验及平稳化处理

根据人们对生鲜类商品的购买习惯,夏季以及全网大促的特定月份会出现非常大的库存需求量,因此存在明显的周期性。将序列的趋势、季节和随机效应分解出来绘制时间序列分解图(图2)。通过ADF 检验结果可知,检验统计量的值为0.73,并且在90%、95%和99%的置信度下,检验统计量的值均大于对应的临界值,所以认为该初始时间序列是非平稳的。因此,需要进行平稳化处理。

图2 2010 年到2020 年库存需求量时间序列分解图

对原始的序列作1 阶12 步差分来提取原序列的趋势效应和季节效应,由差分后的ADF 检验结果可知,1 阶12 步差分后的序列是平稳的。

2.2.2 模型识别及定阶

通过网格搜索遍历参数的不同组合,利用AIC 准则评价选取最优模型参数。所得AIC 值最低为286.84 时,模型为ARIMA(1,1 ,1 )× (1,1 ,1,12 )。

2.2.3 模型拟合及检验

根据拟合结果每个变量的P 值均小于0.01,MSE=1.88,MAE=0.9025,MAPE=2.001%,因此可以认为拟合的模型是合理的。然后对残差采用LB 检验法进行白噪声检验,检验结果显示Q 统计量的P 值均大于0.05,拟合模型已经充分提取了时间序列中的信息。最后对残差的分布进行模型诊断,诊断结果如图3 所示,残差分布较为正常,时序图基本稳定,服从正态分布且自相关图中不存在自相关。综上,该模型ARIMA (1,1 ,1 )× (1,1 ,1,12 )拟合效果很好,具有较好的预测性能。

图3 模型诊断结果

2.3 组合模型中LSTM 模型建立

将上文SARIMA 模型的残差指标、准时交货率、零售综合成本、销售金额以及气温状况共五个指标作为LSTM 模型的输入变量,预测2020 年中12 个月的SARIMA 模型的残差指标。

2.3.1 数据归一化当激活函数为sigmoid 或者tanh 时,需要把数据标准化,此时LSTM 比较敏感。因此采用sklearn.preprocessing 模块中的最大最小值标准MinMaxSealer()函数将每一维的特征映射到指定区间——0 到1 之间。

2.3.2 模型训练

LSTM 神经网络模型包含三层:输入层、LSTM 层、输出层,其中LSTM 层包含三层LSTM 模块进行训练,最后加一层普通的神经网络用于输出结构的降维。其中超参数运用贝叶斯优化算法进行选择,迭代次数设为50 次。其中超参数及取值范围如表1 所示。

表1 超参数及取值范围

3 算例分析

3.1 SARIMA 时间序列预测

将2020 年12 个月份的库存需求量进行回代预测,得到预测图如图4 所示。其中MSE=5.0035,RMSE=2.2369,MAE=1.7205,MAPE=3.85%。所得预测值与实际值进行相减,得到的残差作为后续LSTM 模型的输入变量之一,对残差进行修正。

图4 SARIMA 模型下的库存需求量预测结果

3.2 LSTM 残差修正

利用上文中SARIMA 模型的2020 年12 个测试样本所得的残差序列进行考虑需求影响因素的LSTM 神经网络模型预测。由图5 验证误差迭代图所示,利用贝叶斯优化算法对LSTM 模型进行超参数优化得到误差值最优为第30 次。

图5 贝叶斯优化算法的验证误差迭代图

模型预测得到的残差修正值如图6 所示。其中各项评价指标分别为MSE=5.72,RMSE=2.39,MAPE=6.22%。

图6 组合模型中LSTM神经网络残差预测结果

最后,将SARIMA 模型预测所得的12 个月的预测值与LSTM 神经网络的残差预测修正值进行累加,所得最终结果为2020年12 个月的库存需求量预测值。最终累加得到的预测值计算出的各项评价指标分别为MSE=4.7862,MAE=1.4797,MAPE=3.34%。

4 结果分析

为评估提出的方法,实验选取几种主流文献中的传统方法进行对比分析,对比方法包括灰色理论、样条回归、SARIMA、单特征LSTM 和多特征LSTM。

以上六种方法所得最终预测结果计算得到的三个误差指标对比如表2 所示,以及2020 年12 个月份的预测结果图如图7 所示。

表2 六种模型评价指标结果对比

图7 基于六种预测模型2020 年库存需求量结果对比

由对比结果可知,灰色理论的整体趋势捕捉较好,但是对于特殊月份的预测精度很差;而通过加入有效输入变量,样条回归模型对部分特殊月份的预测效果较好,但整体的波动趋势并未准确捕捉。单特征LSTM 预测模型的预测效果最差,预测精度最低,该模型既未考虑季节因素的影响,也未考虑库存需求影响因素,因此具有较大偏差。考虑了需求影响因素的多特征LSTM 预测模型的预测精度明显较高,但是相比加入了季节因子的SARIMA 预测模型的预测效果还是要差一些,未准确抓取季节波动规律。SARIMA 预测模型考虑到了时间序列的季节效应,整体预测精度显著提升,但对于某些月份的预测还是具有一定差异。而SARIMA-LSTM 组合预测模型既考虑到季节性又考虑到需求因素影响,尽管LSTM 易发生过拟合现象,但是该组合预测模型中的LSTM 模型仅仅对预测残差进行修正,对其整体预测效果影响较小。因此相比其他五种预测模型, 该组合模型的预测精度最高。

5 结束语

针对本文零售业生鲜类商品库存需求量时间序列数据,采取的是一种基于SARIMA-LSTM 组合预测模型,与传统预测方法不同的是该方法既考虑到了生鲜类商品的季节性特点,还考虑到四点库存需求的相关性较高的影响因素,如准时交货率、零售综合成本、销售金额、气温状况。通过利用SARIMA 模型良好地捕捉季节性规律的能力进行预测,然后构建LSTM 神经网络模型加入多个影响指标辅助预测SARIMA 模型的残差,尽可能地降低LSTM 过拟合现象。对比传统预测模型,得到组合模型的预测性能最佳。因此该组合预测方法对于零售业生鲜类商品库存需求量时间序列数据预测具有一定合理性和参考性,利于库存管理和控制,并且对于其他领域的预测具有一定参考性。

猜你喜欢

需求量生鲜残差
基于双向GRU与残差拟合的车辆跟驰建模
从数学角度看“弹性”
基于残差学习的自适应无人机目标跟踪算法
价格战是一定的! 2020年虾苗需求量预计减少10%~20%,苗价下调是趋势
基于递归残差网络的图像超分辨率重建
亚洲生鲜配送展
亚洲生鲜荟
超市生鲜里的这些秘密你一定要知道
平稳自相关过程的残差累积和控制图
2017年我国汽车软管需求量将达6.4亿m