В python 3, Fbprophet 0.6, я заметил странный факт или ошибку (?) В Fbprohet. Я заметил, что если значения ограничения намного больше, чем значения тренда, он просто обнулит все значения прогноза:
Частичные данные для первой цифры, которая является нормальной и работает:
ds y cap
147 2020-04-27 994171.0 1299997.0
148 2020-04-28 994171.0 1299997.0
149 2020-04-29 994171.0 1299997.0
150 2020-04-30 994171.0 1299997.0
151 2020-05-01 994171.0 1299997.0
Частичные данные для 2-го числа, где все исторические и прогнозные значения странным образом становятся нулями, когда значения ограничения намного превышают тенденцию
ds y cap
147 2020-04-27 5114514.0 1.046000e+09
148 2020-04-28 5121244.0 1.046000e+09
149 2020-04-29 5128124.0 1.046000e+09
150 2020-04-30 5135264.0 1.046000e+09
151 2020-05-01 5141464.0 1.046000e+09
вот мой код
m=Prophet(growth = 'logistic', interval_width=1)
m.fit(df)
future = m.make_future_dataframe(periods=365)
future['cap'] = float(max)
forecast = m.predict(future)
pd.plotting.register_matplotlib_converters()
components_fig = m.plot_components(forecast)
axes = components_fig.get_axes()
axes[0].set_xlabel('Date')
axes[0].set_ylabel('Count')
axes[0].set_title(title)
Однако, если я уберу столбец cap и не буду использовать logisti c подходит, 2-й случай станет нормальным.
m=Prophet(interval_width=1)
m.fit(df)
future = m.make_future_dataframe(periods=365)
#future['cap'] = float(max)
forecast = m.predict(future)
pd.plotting.register_matplotlib_converters()
components_fig = m.plot_components(forecast)
axes = components_fig.get_axes()
axes[0].set_xlabel('Date')
axes[0].set_ylabel('Count')
axes[0].set_title(title)
Есть мысли, почему это происходит? Как мы можем это исправить? Комментарии? 2 цента? Спасибо!