У меня есть данные по ежедневному спросу за 10 лет с положительной тенденцией. В последние три месяца года всегда есть шок спроса на 1-2. и 15-16. месяца (акции). Хотя это происходит каждый год, Пророк не предсказывает эти ценности достаточно высоко. Поэтому я получаю очень высокую среднеквадратичную ошибку.
Вот как это выглядит: [! [Прогноз] [1]] [1]
Вот мой Кодекс, и я надеюсь, что вы, ребята, поможете мне улучшить мою модель:)
import numpy as np
from fbprophet import Prophet
import matplotlib.pyplot as plt
df = pd.read_excel('Dataset2.3.xls')
promotions = pd.DataFrame({
'holiday': 'winter_promotion',
'ds': pd.to_datetime(['2009-10-1','2009-10-2','2009-10-15','2009-10-16',
'2009-11-1','2009-11-2','2009-11-15','2009-11-16',
'2009-12-1','2009-12-2','2009-12-15','2009-12-16',
'2010-10-1','2010-10-2','2010-10-15','2010-10-16',
'2010-11-1','2010-11-2','2010-11-15','2010-11-16',
'2010-12-1','2010-12-2','2010-12-15','2010-12-16',
'2011-10-1','2011-10-2','2011-10-15','2011-10-16',
'2011-11-1','2011-11-2','2011-11-15','2011-11-16',
'2011-12-1','2011-12-2','2011-12-15','2011-12-16',
'2012-10-1','2012-10-2','2012-10-15','2012-10-16',
'2012-11-1','2012-11-2','2012-11-15','2012-11-16',
'2012-12-1','2012-12-2','2012-12-15','2012-12-16',
'2013-10-1','2013-10-2','2013-10-15','2013-10-16',
'2013-11-1','2013-11-2','2013-11-15','2013-11-16',
'2013-12-1','2013-12-2','2013-12-15','2013-12-16',
'2014-10-1','2014-10-2','2014-10-15','2014-10-16',
'2014-11-1','2014-11-2','2014-11-15','2014-11-16',
'2014-12-1','2014-12-2','2014-12-15','2014-12-16',
'2015-10-1','2015-10-2','2015-10-15','2015-10-16',
'2015-11-1','2015-11-2','2015-11-15','2015-11-16',
'2015-12-1','2015-12-2','2015-12-15','2015-12-16',
'2016-10-1','2016-10-2','2016-10-15','2016-10-16',
'2016-11-1','2016-11-2','2016-11-15','2016-11-16',
'2016-12-1','2016-12-2','2016-12-15','2016-12-16',
'2017-10-1','2017-10-2','2017-10-15','2017-10-16',
'2017-11-1','2017-11-2','2017-11-15','2017-11-16',
'2017-12-1','2017-12-2','2017-12-15','2017-12-16',
'2018-10-1','2018-10-2','2018-10-15','2018-10-16',
'2018-11-1','2018-11-2','2018-11-15','2018-11-16',
'2018-12-1','2018-12-2','2018-12-15','2018-12-16',
'2019-10-1','2019-10-2','2019-10-15','2019-10-16',
'2019-11-1','2019-11-2','2019-11-15','2019-11-16',
'2019-12-1','2019-12-2','2019-12-15','2019-12-16']),
'lower_window': 0,
'upper_window': 0,
})
#model
m = Prophet( growth='linear',
holidays=promotions,
seasonality_mode='multiplicative',
changepoint_prior_scale=15,
holidays_prior_scale=25,
seasonality_prior_scale=25,
)
m.fit(df)
future = m.make_future_dataframe(periods=365)
forecast = m.predict(future)
fig1 = m.plot(forecast) ```
[1]: https://i.stack.imgur.com/SKvbq.png