基于百度指数与人工智能的短期农产品价格预测

2022-05-31 03:00云,白伟,王
宁夏师范学院学报 2022年4期
关键词:季节性百度马铃薯

惠 云,白 伟,王 芬

(宁夏师范学院 数学与计算机科学学院,宁夏 固原 756099)

中国是农业大国,促进农业的可持续发展和确保农产品价格平稳运行是提高农户收入及生活水平的重要举措,也是宏观调控的难点.由于农产品上市周期不同,价格存在较大波动,如何精准实时地进行农产品价格的短期预测,更是学术界长期不断探索的研究领域.

为了克服传统预测方法中使用的数据的滞后性和样本量不足等特征,互联网成为搜集即时信息的最佳选择.利用网络数据对各行各业进行预测成了一种新的趋势,如不雇佣率[1]、私人消费[2]、游客量[3]、酒店预订[4]等行业.Yang[5]利用搜索引擎查询数据预测了中国海南的游客流量,比较了两种搜索引擎谷歌和百度的预测能力.Li[6]提出了基于百度指数的游客量预测模型PCA-ADE-BPNN,实证分析表明,基于百度指数的 PCA-ADE-BPNN模型预测性能优于其他模型.

季节性也是农产品的重要特征之一,最显著的表现是在较短的特定时间内集中上市,产生了农产品销售旺季和淡季,因此在农产品价格预测中考虑季节性因素变得相当重要.加入季节因素的季节性自回归综合移动平均模型(SARIMA)和额外输入值季节性自回归综合移动平均模型(SARIMAX)被广泛用于预测中,如交通流量预测[7],食物零销行业预测[8].考虑社会环境特征的影响对旅游人数进行预测,Sun[9]得出加入了百度搜索指数的额外输入值自回归综合移动平均模型(ARIMAX)比自回归综合移动平均模型(ARIMA)预测效果更好,其中平均绝对百分比误差(MAPE)减少了3.206%,正规化方均方根差(NRMSE)减少了3.854%.

目前对农产品价格预测主要采用两种方法:一种是基于时间序列和计量经济模型方法,例如线性回归方法,指数平滑方法,自回归模型等.Rakhmat[10]提出的引力模型预测需求量,Kulendran[11]运用误差修正模型(ECM)对月度波动情况进行了预测研究,确定出影响最重要的经济变量;Lim[12]运用ECM模型和时间序列模型分别对需求的季节变化情况做了研究,发现时间序列模型的预测精度较好.

另一种方法是人工智能方法,Cho[13]建立了指数平滑模型、单变量 ARIMA 和人工神经网络模型来预测,结果表明人工神经网络是相对最佳的方法.Kon[14]研究了神经网络在短期预测中的应用,通过对数据的预处理分解,说明了即使只有很小的样本,神经网络方法优于传统的计量经济学方法,提出了基于季节分解和最小二乘支持向量机(LSSVR)的混合方法用于短期预测,时间序列首先分解为三个组成部分:趋势周期成分,季节性因素和不规则成分.然后使用LSSVR模型独立地预测组件并且组合这些组件的预测结果作为汇总输出.实证分析表明,所提出的混合方法优于其他时间序列模型,表明该方法用于预测复杂时间序列有着广阔前景.Jiang[15]将集合经验模式分解(EEMD)和灰色支持向量机(GSVM)模型结合起来的混合短期需求预测方法,应用结果表明,预测精度尤其适合短期预测.

参考上述方法,本文利用主成分分析—反向传播神经网络(PCA-BPNN)、ARIMA、ARIMAX、SARIMA、SARIMAX、反向传播神经网络(BPNN)等方法构建价格预测模型,对宁夏西吉县青薯9号马铃薯2017年~2021年的日均价格进行处理、模拟、验证,找出短期价格预测最优模型,为农户的马铃薯销售提供可信参考.技术路线如图1所示.

图1 研究技术路线图

1 理论基础

1.1 主成分分析(PCA)

主成分分析是一种通过降维技术把多个变量化为少数几个主成分(综合变量)的统计分析方法.这些主成分能够反映原始变量的绝大部分信息,它们通常表示为原始变量的某种线性组合.PCA模型如公式(1)表示[16]

(1)

其中,p是影响价格的关键词数目;x1,x2,…,xp分别表示关键词指数;z1,z2,…,zm表示m个主成分.这m个主成分可以包含关键词指数的大部分信息,l11,l12,…,lmp是系数.

1.2 BP神经网络

BP神经网络是目前为止最为成功的神经网络算法之一,其学习方式采用标准梯度下降的误差逆传播(error Back Propagation)的方式,以下介绍的基本BP神经网络为3层前馈神经网络[17].

对于图2中的神经网络模型,做出如下定义.

图2 3层前馈BP神经网络结构

给定训练集D={(x1,y1),(x2,y2),…,(xm,ym)},xi∈Rd,yi∈Rl,即输入数据纬度为d,输出的数据纬度为l.假设神经网络有d个输入节点,l个输出节点,隐层有q个神经元,输出层第j个神经元阈值为θj,第h个隐层神经元阈值为γh.输入层第i个节点与隐层第h个节点之间的权重为vih,隐层第h个节点与输出层第j个节点的权重为wih.

根据以上假设可以有如下公式.

(i)激活函数为f(x)=sigmoid(x);

(iii)隐层第h个神经元的输出为bh=f(αh-γh);

(v)输出层第j个神经元的输出yj=f(βj-θj).

由以上5个公式可知,神经网络之中只要以下(d+l+1)q+l个参数确定,则就可以由输入计算出输出,这些参数分别为输入层到隐层权重dq个,隐层到输出层权重ql个,隐层神经元阈值为q个,输出层神经元阈值为l个.

1.3 ARIMA和SARIMA 模型

ARIMA模型全称为差分整合移动平均自回归模型,ARIMA(p,d,q)中,AR是“自回归”,p为自回归项数;MA为滑动平均,q为滑动平均项数,d为阶数,使之成为平稳序列所做的差分次数.“差分”一词虽未出现在ARIMA的英文名称中,却是关键步骤.SARIMA模型它适应 ARIMA并考虑数据中的季节性[18].SARIMA(p,d,q)×(P,D,Q)可表示为φ(B)Φ(Bs)(1-B)d(1-Bs)DYt=θ(B)Θ(Bs)e.其中S是周期长度(季节性);φ(B)是p阶非季节性自回归算子;Φ(Bs) 是P阶非季节性自回归算子;θ(B)是q阶非季节性移动平均算子;Θ(Bs)是Q阶季节性移动平均算子;(1-B)d是d阶的非季节性差分算子,以产生第d个差分数据的非季节性平稳性(通常为d= 0、1 或 2);(1-Bs)D是D阶的季节性差分算子,用于产生第D个差分数据(通常D= 0、1 或 2)的季节性平稳性.SARIMA 模型包括季节性和非季节性差分算子,当序列满足弱平稳性要求时,SARIMA 模型才有效.

1.4 ARIMAX 和 SARIMAX 模型

ARIMAX 和 SARIMAX 模型分别是带有外部变量的 ARIMA 和 SARIMA 模型.正式的 ARIMAX 和 SARIMAX 模型可以用以下方程表示[19].

(2)

(3)

公式(2)是ARIMAX 模型的形式表示,公式(3)是 SARIMAX 模型,Yt是因变量的第t个观测值,X1,t,X2,t,…,Xk,t是对解释变量的观察.

在该模型中,回归系数可以用通常和更简单的方式解释[19].SARIMAX 模型包括五个迭代步骤[20]:模型识别、参数估计、诊断模型的适合度、包含外部变量以及预测和验证.

2 实证分析

2.1 数据采集

宁夏西吉县马铃薯品种主要是以青薯9号和陇薯7号为主,两种马铃薯品种的价格几乎相同.本文以青薯9号为研究对象,马铃薯尺寸大小使得价格略有区别,选取2017年1月1日至2021年12月31日每日批发交易价格,共1826个样本数据[17],每日价格波动如图3所示.

图3 青薯9号单价图(单价:元/千克)

2.2 百度指数

通过百度关键词自动推荐技术选择关键词[20],具体步骤如下.

(i) 选取初始关键词.选取西吉马铃薯相关品种、市场、交通、周边环境、气候五个方面的20个关键词作为初始关键词[20].20个关键词数据如表1所示.

表1 西吉马铃薯关键词搜索

(ii) 扩展关键词.在20个关键词的基础上,通过百度自动推荐技术多次扩展关键词之后,最终确定160个作为百度关键词,该关键词可通过百度付费下载.

(iii)计算160个关键词和马铃薯的滞后相关系数.计算每个关键词和马铃薯价格数据不同滞后阶数的相关系数,采用最大相关系数法进行筛选,以0.5作为选取界限,最终选取的关键词为12个,如表2所示.

表2 百度关键字最大相关系数

2.3 平稳性检验

根据不同的滞后阶数对百度关键词求和,求和后数据形成一个新的合成指数,然后对合成指数和青薯9号每日价格进行ADF平稳性检验,在显著水平1%、5%和10%下都是平稳的,检验结果如表3所示.

表3 增强 Dickey-Fuller 检验

2.4 主成分提取

除了上述介绍的将12个关键词指数进行合成对西吉马铃薯进行预测之外,本文也采用另外一种方法,通过主成分分析对12个关键词进行降维,最终得到累计贡献率超过95%的7个主成分,7个主成分的贡献率、累积贡献率和特征值如表4所示.最后对降维后的数据运用BP神经网络进行预测,得到预测结果.

表4 7个主成分的贡献率及累计贡献率

2.5 运用百度指数进行预测

2.5.1 模型评价标准

通过计算真实值和预测值之间误差可得出预测效果的好坏,本文主要采用以下MAPE,RMSE,MAE作为评价标准[17],它们可以通过如下几个关系式得到.

(4)

(5)

(6)

(7)

2.5.2 模型参数估计

除PCA-BPNN之外,ARIMA(0,0,3)、ARIMA(1,0,1)、ARIMAX(1,0,1)、ARIMAX(0,0,3)、SARIMA(1,0,1)×(0,1,1)12和SARIMAX(1,0,1)×(0,1,1)12六个模型都是采用极大似然估计法和AIC准则对参数进行估计,在显著水平为0.05的条件下,采用Box-Ljung test检验对模型误差项进行平稳性检验,不考虑季节因素的ARIMA(0,0,3)、ARIMA(1,0,1)、ARIMAX(1,0,1)和ARIMAX(0,0,3)四个模型残差项检验都不平稳,通过对ARIMA和ARIMAX模型采用不同的阶数,但是结果都显示不平稳,而对SARIMA(1,0,1)×(0,1,1)12和SARIMAX(1,0,1)×(0,1,1)12进行Box-Ljung test检验的p-值分别为0.794和0.859,明显大于0.05,故残差项平稳性显著,不同模型的参数如表5所示.

表5 模型参数估计

2.6 模型结果对比

建立SARIMAX(1,0,1)×(0,1,1)12模型之后,利用BPNN、PCA-BPNN、ARIMA(0,0,3)、ARIMA(1,0,1)、ARIMAX(1,0,1)、ARIMAX(0,0,3)、SARIMA(1,0,1)×(0,1,1)12和SARIMAX(1,0,1)×(0,1,1)12,分别预测2020年1月到2021年12月青薯9号价格.采用AIC、MAPE、RMSE、MAE作为评价标准,对以上八种模型预测值与真实值进行对比分析,结果如表6所示.

表6 模型比较标准

由上表看出ARIMA(0,0,3)、ARIMA(1,0,1)、ARIMAX(1,0,1)和ARIMAX(0,0,3)这四个模型都显著不平稳,故预测效果都不好.ARIMA(0,0,3)的AIC、MAPE、RMSE、MAE值最大,相较于其他模型预测效果最差,加入了百度指数的ARIMAX(1,0,1)和AIRMAX(0,0,3)模型,预测误差MAPE、RMSE,MAE比ARMA(1,0,1)、ARMA(0,0,3)小,建立在12个关键词上的BPNN预测误差和AIRMAX模型的预测误差相差比较小.PCA-BP模型的预测误差MAPE、RMSE、MAE分别为2.07、9.36、7.02,比ARIMA、ARIMAX和BP的预测误差小.考虑了季节因素的SARIMA(1,0,1)×(0,1,1)12,Box-Ljung test检验显著平稳,SARIMA(1,0,1)×(0,1,1)12模型的AIC比前面四个模型的值减少了很多,训练数据的MAPE、RMSE、MAE分别为0.768、0.365、2.540,测试数据的MAPE、RMSE、MAE的数据分别为1.125、0.435、3.811.相比于没有考虑季节因素的ARMA、ARMAX模型,预测效果显著提高.最后在综合考虑季节因素和百度指数的基础上建立了SARIMAX(0,0,1)×(0,1,1)12模型,该模型检验显著平稳,相对于SARIMA(0,0,1)×(0,1,1)12训练数据的RMSE减少了0.02%、MAE减少了0.23%、 MAPE减少了0.228%、RMSE减少了0.071%、MAE减少了0.736%.综上所述,SARMAX(0,0,1)×(0,1,1)12预测效果相对于其他模型更好.

3 结论

本文首先分析了不同阶数的ARIMA模型,在此基础上引入季节因素,建立了SARIMA模型,接着利用求和后的百度关键词指数对价格进行预测,确立了ARIMAX模型,最后综合考虑季节因素和百度指数基础上提出了SARIMAX模型,在此基础上利用BPNN、PCA-BPNN对马铃薯价格进行预测,通过对他们的训练数据和测试数据的AIC、MAPE、RMSE和MAE进行对比分析,得出预测精度从低到高排序如下:ARIMA

猜你喜欢
季节性百度马铃薯
马铃薯有功劳
初夏马铃薯 田间管理抓哪些
粕类季节性规律:豆粕篇
春栽马铃薯种植技术
Robust adaptive UKF based on SVR for inertial based integrated navigation
季节性需求放缓 钾肥价格下行
蔬菜价格呈季节性回落
百度年度热搜榜
远离季节性过敏
定边马铃薯