prophet翻译(六)-- 乘积季节模型
乘积季节模型
默认情况下,Prophet采用加法季节性拟合,就是说季节性效应被添加到趋势中以进行预测。但下面这个描述乘客数量的时序例子,则不适合使用加法季节性算法:
# Python
df = pd.read_csv('https://raw.githubusercontent.com/facebook/prophet/main/examples/example_air_passengers.csv')
m = Prophet()
m.fit(df)
future = m.make_future_dataframe(50, freq='MS')
forecast = m.predict(future)
fig = m.plot(forecast)
这个时间序列具有明显的年度周期,但预测中的季节性在时间序列的开始处过大,在末尾处过小。在这个时间序列中,季节性不是Prophet所假设的恒定加法因子,而是随着趋势增长而增长的乘法季节性。
Prophet可以通过在输入参数中设置seasonality_mode='multiplicative'来建模乘法季节性:
# Python
m = Prophet(seasonality_mode='multiplicative')
m.fit(df)
forecast = m.predict(future)
fig = m.plot(forecast)
在设置seasonality_mode='multiplicative'后,组件图将以季节性作为趋势的百分比来展示:
# Python
fig = m.plot_components(forecast)
使用seasonality_mode='multiplicative'时,假日效应也将被建模为乘法效应。任何添加的季节性或额外的回归变量默认情况下将使用设置的seasonality_mode,但可以通过在添加季节性或回归变量时指定mode='additive'或mode='multiplicative'来覆盖。
例如,以下代码块将内置的季节性设置为乘法季节性,但同时包括一个加法季度季节性和一个加法回归变量:
# Python
m = Prophet(seasonality_mode='multiplicative')
m.add_seasonality('quarterly', period=91.25, fourier_order=8, mode='additive')
m.add_regressor('regressor', mode='additive')
在组件图中,加法和乘法的额外回归变量将分别显示在不同的面板中。然而,请注意,同时存在加法和乘法季节性的情况非常罕见,因此通常只有在有理由预期存在这种情况时才会使用这种组合。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
2022-05-25 vm集群学习