1

我目前正在尝试使用 Python 和 Prophet 对基于小时的数据进行良好的预测。

在清理所有数据并重新采样缺失值之后,我已经得到了更好的结果。我还包括了上限和下限以及自己的 changepoint_prior_scale。

当我将预测结果绘制在实际数据上时,它会拟合直到出现峰值。谁能给我一些提示,让预言家更好地预测七月的这些高峰?

山峰似乎在那里,但很低。

这是我生成模型和预测未来的代码部分:

df['cap']=130
df['floor']=0
model = Prophet(changepoint_prior_scale=0.1, growth='logistic').fit(df)
future = model.make_future_dataframe(periods=15*24, freq='H')
future['cap']=130
future['floor']=0
forecast = model.predict(future)
plot1 = model.plot(forecast)

这是情节的图像: 从整体趋势来看,情节似乎相当不错,但 7 月的峰值还不够高

4

1 回答 1

0

我建议您从查看预测的组成部分(趋势、季节性)开始,以了解模型的概况。您可以使用以下方法执行此操作:

m.plot_components(forecast)

在您的模型中,您仅使用大于默认值 (0.05) 的 changepoint_prior_scale,这意味着您可以使趋势更加灵活。

使用不同的季节性参数是值得的 - 例如尝试平滑添加到模型参数的年度季节性yearly_seasonality=20(默认为 10)。

知道七月总是高峰,你也可以尝试使用先知假期效果——这里有很好的描述

于 2022-02-12T17:24:35.673 回答