Ошибка при построении доверительных интервалов с помощью NeuralProphet

Я следую руководству по квантильной регрессии в NeuralProphet, но при построении прогноза возникла проблема.

confidence_lv = 0.9
quantile_list = [round(((1 - confidence_lv) / 2), 2), round((confidence_lv + (1 - confidence_lv) / 2), 2)]


m = NeuralProphet(
    yearly_seasonality=True,
    weekly_seasonality=True,
    daily_seasonality=False,  
    quantiles=quantile_list,
    n_lags=30,
    epochs=10,
    n_forecasts=30,
)

m.set_plotting_backend('plotly')
metrics = m.fit(df)

df_future = m.make_future_dataframe(
    df, 
    n_historic_predictions=True,   
    periods=30, 
)

forecast = m.predict(df_future)

m.plot(forecast, forecast_in_focus=30)

Я получаю ошибку ниже. Я не нашел параметра, упомянутого в этих функциях выше (я использую версию 0.6.2).

in NeuralProphet.plot(self, fcst, df_name, ax, xlabel, ylabel, figsize, forecast_in_focus, plotting_backend)
   1886 if len(self.config_train.quantiles) > 1:
   1887     if (self.highlight_forecast_step_n) is None and (
   1888         self.n_forecasts > 1 or self.n_lags > 0
   1889     ):  # rather query if n_forecasts >1 than n_lags>1
-> 1890         raise ValueError(
   1891             "Please specify step_number using the highlight_nth_step_ahead_of_each_forecast function"
   1892             " for quantiles plotting when auto-regression enabled."
   1893         )
   1894     if (self.highlight_forecast_step_n or forecast_in_focus) is not None and self.n_lags == 0:
   1895         log.warning("highlight_forecast_step_n is ignored since auto-regression not enabled.")

ValueError: Please specify step_number using the highlight_nth_step_ahead_of_each_forecast function for quantiles plotting when auto-regression enabled.
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
0
153
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Если я правильно понимаю, ошибка означает, что вы пропустили шаг в своем коде. Когда вы начинаете:

m = NeuralProphet(
    yearly_seasonality=True,
    weekly_seasonality=True,
    daily_seasonality=False,  
    quantiles=quantile_list,
    n_lags=30,
    epochs=10,
    n_forecasts=30,
)

Вы ставите n_forecasts=30. При этом активируется следующий оператор if:

if (self.highlight_forecast_step_n) is None and (
    self.n_forecasts > 1 or self.n_lags > 0

Вы не смогли установить highlight_forecast_step_n и установили n_forecasts=30. Таким образом, утверждение if равно True, потому что highlight_forecast_step_n равно None, а n_forecasts больше, чем 1. Т

Чтобы это исправить, вам нужно установить атрибут highlight_forecast_step_n вашей модели. Это можно сделать с помощью функции класса highlight_nth_step_ahead_of_each_forecast.

Что-то вроде этого будет работать:

m.highlight_nth_step_ahead_of_each_forecast(step_number=10)

Ссылка: Highlight_nth_step_ahead_of_each_forecast

Другие вопросы по теме

Что вызывает ошибку ValueError: не удалось интерпретировать идентификатор: потеря?
Объект «Изображение» не имеет атрибута «форма»
Преобразователи видения: RuntimeError: формы mat1 и mat2 не могут быть умножены (32x1000 и 768x32)
Преобразование модели SNPE: синтаксис для ввода модели с нулевыми измерениями
Как я могу исправить ошибку input_shape, возникающую при выполнении руководства TensorFlow «Переобучение и недостаточное соответствие»?
Как удалить слои в предварительно обученных моделях трансформеров Huggingface GPT2?
После загрузки предварительно обученного файла модели pytorch .pt: ModuleNotFoundError: нет модуля с именем «модели»
Модели глубокого обучения, обеспечивающие высокую точность обучения, но низкую производительность при тестировании данных при классификации двоичного текста
Как создать нейронную сеть с несколькими выходами (и несколькими классами) с помощью pytorch?
Seq2Seq LSTM не обучается должным образом