没有合适的资源?快使用搜索试试~ 我知道了~
首页KaggleM5 Forecasting:传统预测方法与机器学习预测方法对比
本文的出发点在于比较传统预测方法和机器学习预测方法。 本文使用的数据集来自 kaggle:M5 Forecasting — Accuracy。 该数据集包含有 California、Texas、Wisconsin 三个州的产品类别、部门、仓储信息等。基于这些数据,需要预测接下来 28 天的每日销售量。 涉及到的方法有: 单指数平滑法 双指数平滑法 三指数平滑法 ARIMA SARIMA SARIMAX Light Gradient Boosting Random Forest Linear Regression 为了使用上述方法,首先导入相应的包/库: import time import
资源详情
资源评论
资源推荐

KaggleM5 Forecasting:传统预测方法与机器学习预测方法:传统预测方法与机器学习预测方法
对比对比
本文的出发点在于比较传统预测方法和机器学习预测方法。
本文使用的数据集来自 kaggle:M5 Forecasting — Accuracy。
该数据集包含有 California、Texas、Wisconsin 三个州的产品类别、部门、仓储信息等。基于这些数据,需要预测接下来 28
天的每日销售量。
涉及到的方法有:
单指数平滑法
双指数平滑法
三指数平滑法
ARIMA
SARIMA
SARIMAX
Light Gradient Boosting
Random Forest
Linear Regression
为了使用上述方法,首先导入相应的包/库:
import time
import warnings
import numpy as np
import pandas as pd
import seaborn as sns
import lightgbm as lgb
from itertools import cycle
from sklearn.svm import SVR
import statsmodels.api as sm
from pmdarima import auto_arima
import matplotlib.pyplot as plt
from datetime import datetime, timedelta
from sklearn.metrics import mean_squared_error
from sklearn.linear_model import LinearRegression
from sklearn.ensemble import RandomForestRegressor
from statsmodels.graphics.tsaplots import plot_acf
from statsmodels.tsa.holtwinters import SimpleExpSmoothing, ExponentialSmoothing
%matplotlib inline
plt.style.use('bmh')
sns.set_style("whitegrid")
plt.rc('xtick', labelsize=15)
plt.rc('ytick', labelsize=15)
warnings.filterwarnings("ignore")
pd.set_option('max_colwidth', 100)
pd.set_option('display.max_rows', 500)
pd.set_option('display.max_columns', 500)
color_pal = plt.rcParams['axes.prop_cycle'].by_key()['color'] color_cycle = cycle(plt.rcParams['axes.prop_cycle'].by_key()
['color'])
然后导入数据集:
data = pd.read_csv('data_for_tsa.csv')
data['date'] = pd.to_datetime(data['date'])
data.head()
数据集前五行数据
数据集包含了 2011-01-29 到 2016-05-22 期间的 1941 天的数据。其中最后 28 天作为测试集。
预测目标是 demand,即:当日的产品销售量。
接下来进行数据集划分
测试集包含了 2016-03-27 到 2016-04-24 期间的 28 天的数据。



















安全验证
文档复制为VIP权益,开通VIP直接复制

评论1