原文链接:https://tecdat/?p=37228
分析师:Kechen Zhao
本文将通过视频讲解,展示如何用Xgboost、ARIMA 和 Prophet对国际牛肉市场份额数据时间序列预测,并结合一个Python ARIMA、XGBOOST、PROPHET和LSTM预测比特币价格实例的代码数据,为读者提供一套完整的实践数据分析流程(点击文末“阅读原文”获取完整代码数据)。
视频
摘要
国际贸易市场的波动受多种因素影响。本项目旨在通过历史数据识别最具影响力的因素,并利用这些因素预测国际市场的未来走势,特别关注澳洲牛肉在美国市场的份额。面对数据收集和模型选择的挑战,本研究将采用数学建模和分析方法。
任务/目标
本项目的目标是根据客户要求,整合多种数据源,实现对澳洲出口牛肉在美国市场份额未来半年至一年的预测,并进行深入分析。
数据源准备
客户已提供澳洲国内牛肉产业的统计数据和美国牛肉进口市场的部分分析。本研究进一步调查发现,澳洲的人口统计指标、气候条件、自然灾害、货币汇率、美国国内人口统计数据、居民平均收入以及素食主义者比例等因素,可能对澳洲牛肉出口量在美国市场的占比产生影响。政治事件和主要竞争者的特征也被纳入考虑。
特征转换和处理
由于数据多来源于年度报告,需将其转换为月度数据以满足预测需求。具体方法如下:
生产总量数据:年产量除以12得到月平均产量。
有趋势的数据(如人口增长):使用线性回归模型预测月度数据。
图片形式的数据(如天气和自然灾害):手动输入以供模型使用。
政治事件等非量化特征:采用虚拟变量方法,事件发生月份设为1,未发生设为0。
对于数据丢失的处理:
大量数据丢失:选择删除并寻找替代特征。
小部分数据丢失:缺失部分记录为0。
模型构建
基于上述特征收集和处理,构建预测模型。以下为部分特征示例,其中Import_ratio
作为预测目标。
数据划分与模型构建
数据划分
为确保模型的准确性和泛化能力,我们将数据集分为训练集、测试集和验证集。具体划分如下:
12个月预测
训练集:2008-01-01 至 2018-12-31
测试集:2019-01-01 至 2019-12-31
验证集:2014-01-01 至 2014-12-31 和 2016-01-01 至 2016-12-31
6个月预测
训练集:2008-01-01 至 2019-06-30
测试集:2019-07-01 至 2019-12-31
验证集:2014-04-01 至 2014-09-30、2016-01-01 至 2016-06-30 和 2016-05-01 至 2016-10-31
模型选择
本项目共采用三种模型:Xgboost、ARIMA 和 Prophet。
ARIMA模型概述
ARIMA是一个广泛应用于时间序列预测的模型,它能够在不使用外部回归特征的情况下,仅利用历史数据进行预测。模型由以下三部分组成:
自回归(Autoregressive):使用变量本身的历史数据对未来进行预测。
差分(Integrated):将目标变量在某个时间点的数值用当前数值与上一个时间点数值的差所取代。
滑动平均(Moving Average):回归将以目标变量及其滞后误差的线性组合形式呈现。
基础模型建设
在选定模型后,首先进行基础模型的构建,即不包括任何特征,仅使用市场份额的历史数据进行预测,并记录三个模型的预测精度(RMSE, MAE, MAPE)。
基础模型表现
以下是基础模型在不同情况下的表现:
特征筛选与模型优化
季节性特征的影响
去除数据的季节性特征后,无论是6个月还是12个月的预测精度都得到了显著提升。
特征重要性评估
为了保证模型使用的一致性,并优化模型性能,我们采用了以下步骤对特征进行筛选:
特征重要性评估:使用Xgboost模型和SHAP值(一种Wrapper方法)对特征进行重要性评估和排序。
特征选择:基于评估结果,选择对预测结果影响最大的特征进行建模。
特征选择示例
以下是根据SHAP值针对12个月预测所选出的重要特征
模型训练与优化
特征集选择与季节性数据的影响
选定特征后,我们将使用不同的特征集对ARIMA模型进行训练,并考虑是否包含季节性数据。模型将对测试集进行预测,并计算模型的准确度。此外,模型在验证集上的表现也将被评估。
模型对比与优化
将得到的数据与基础模型进行对比,以衡量所选特征和季节性特征对未来预测结果的影响。
对于未来6个月和12个月的预测,将根据测试集和验证集的表现,筛选出两个准确度最高的ARIMA模型。
在不引起过度拟合的前提下,根据客户要求加入额外的竞争者特征,进一步提高模型准确性。
将ARIMA模型与最好的Xgboost和Prophet模型进行比较,以选出最终模型。
模型表现评估
在本项目中,针对未来12个月的预测,根据SHAP值与Wrapper方法选出的特征集,在三个不同的模型上都展现出了最佳效果。
模型表现与可视化
以下是使用选定特征集的三个模型的最佳准确度和可视化图:
Xgboost
With RMSE = 0.006415, MAE = 0.005216, MAPE = 2.480094.
ARIMA:
发布者:admin,转转请注明出处:http://www.yc00.com/web/1754350199a5150371.html
评论列表(0条)