0
点赞
收藏
分享

微信扫一扫

NeuralProphet之二:季节性(Seasonality)


NeuralProphet之二:季节性(Seasonality)

NeuralProphet中的季节性使用傅里叶项建模。​​yearly_seasonality​​​、​​weekly_seasonality​​​ 和 ​​daily_seasonality​​ 是关于要模拟的季节成分。

m = NeuralProphet(
yearly_seasonality=8,
weekly_seasonality=3
daily_seasonality=2
)

  • seasonality_mode可以设置为additive或者multiplicative。
  • seasonality_reg 将稀疏性引入模型。这也有助于避免模型对训练数据的过度拟合。在0.1-1范围内的小值允许拟合大的季节性波动,而在1-100范围内的大值则会对傅里叶系数施加较重的惩罚,从而抑制季节性。

示例:
seasonality_mode="multiplicative"比seasonality_mode="additive"可能效果更好
导入库和数据

import pandas as pd
import matplotlib.pyplot as plt
from neuralprophet import NeuralProphet, set_log_level
set_log_level("ERROR")

# data_location = "https://raw.githubusercontent.com/ourownstory/neuralprophet-data/main/datasets/"
data_location = 'datasets/'
df = pd.read_csv(data_location + "air_passengers.csv")

seasonality_mode="additive"预测

m = NeuralProphet()
metrics = m.fit(df, freq="MS")

future = m.make_future_dataframe(df, periods=50, n_historic_predictions=len(df))
forecast = m.predict(future)
fig = m.plot(forecast)

NeuralProphet之二:季节性(Seasonality)_机器学习

seasonality_mode="multiplicative"预测

m = NeuralProphet(seasonality_mode="multiplicative")
metrics = m.fit(df, freq="MS")

future = m.make_future_dataframe(df, periods=50, n_historic_predictions=len(df))
forecast = m.predict(future)
fig = m.plot(forecast)

NeuralProphet之二:季节性(Seasonality)_python_02

plt.show()


举报

相关推荐

0 条评论