ForecastingPipelineWrapperBase Класс
Базовый класс для оболочки модели прогнозирования.
Конструктор
ForecastingPipelineWrapperBase(ts_transformer: TimeSeriesTransformer | None = None, y_transformer: Pipeline | None = None, metadata: Dict[str, Any] | None = None)
Параметры
| Имя | Описание |
|---|---|
|
ts_transformer
|
Default value: None
|
|
y_transformer
|
Default value: None
|
|
metadata
|
Default value: None
|
Методы
| align_output_to_input |
Выровняйте преобразованный кадр выходных данных с входным кадром данных. Примечание. Преобразование будет изменено по ссылке, копирование не создается. :p aram X_input: входной кадр данных. :p aram преобразован: кадр данных после преобразования. :возвращает: трансфотмированный кадр данных с исходным индексом, но отсортирован как в X_input. |
| fit |
Вместите модель с входными данными X и y. |
| forecast |
Выполните прогноз в кадре данных X_pred. |
| forecast_quantiles |
Получите прогноз и квантили из установленного конвейера. |
| is_grain_dropped |
Возвращает значение true, если зерно будет удалено. |
| preaggregate_data_set |
Агрегирует набор данных прогнозирования. Заметка: Этот метод не гарантирует, что набор данных будет агрегирован. Это произойдет только в том случае, если набор данных содержит повторяющиеся метки времени или даты вне сетки. :p aram df: набор данных для агрегирования. :p atam y: целевые значения. :p aram is_training_set: если верно, данные представляют набор обучения. :return: агрегированный или нетронутый набор данных, если агрегирование не требуется. |
| preprocess_pred_X_y |
Предварительная обработка прогнозирования X и y. |
| rolling_evaluation |
"Создание прогнозов по последовательному источнику по заданному тестовом набору. Каждая итерация делает прогноз для следующих периодов "max_horizon" относительно текущего источника, а затем перемещает источник по продолжительности времени горизонта. Контекст прогнозирования для каждого прогноза устанавливается таким образом, чтобы прогнозист использовал фактические целевые значения до текущего времени источника для создания признаков задержки. Эта функция возвращает объединенный кадр данных для скользящего прогноза, присоединенного к фактическим данным из тестового набора. Этот метод устарел и будет удален в будущем выпуске. Вместо этого используйте rolling_forecast(). |
| rolling_forecast |
Создание прогнозов по скользящей основе по тестовой группе. Каждая итерация делает прогноз максимальных периодов горизонта вперед, используя информацию до текущего источника, а затем перемещает источник на "шаг" периоды времени. Контекст прогнозирования для каждого прогноза устанавливается таким образом, чтобы прогнозировщик использовал фактические целевые значения до текущего времени источника для создания функций обратного просмотра. Эта функция возвращает кадр данных для скользящего прогноза, присоединенного к фактическим данным из тестового набора. Столбцы в возвращаемом кадре данных приведены следующим образом:
|
| short_grain_handling |
Возвращает значение true, если для модели включена короткая или отсутствующая обработка зерна. |
| static_preaggregate_data_set |
Агрегирует набор данных прогнозирования. Заметка: Этот метод не гарантирует, что набор данных будет агрегирован. Это произойдет только в том случае, если набор данных содержит повторяющиеся метки времени или даты вне сетки. :p aram ts_transformer: таймерий tranformer, используемый для обучения. :p aram time_column_name: имя столбца времени. :p aram grain_column_names: список имен столбцов зерна. :p aram df: набор данных для агрегирования. :p atam y: целевые значения. :p aram is_training_set: если верно, данные представляют набор обучения. :return: агрегированный или нетронутый набор данных, если агрегирование не требуется. |
align_output_to_input
Выровняйте преобразованный кадр выходных данных с входным кадром данных.
Примечание. Преобразование будет изменено по ссылке, копирование не создается. :p aram X_input: входной кадр данных. :p aram преобразован: кадр данных после преобразования. :возвращает: трансфотмированный кадр данных с исходным индексом, но отсортирован как в X_input.
align_output_to_input(X_input: DataFrame, transformed: DataFrame) -> DataFrame
Параметры
| Имя | Описание |
|---|---|
|
X_input
Обязательно
|
|
|
transformed
Обязательно
|
|
fit
Вместите модель с входными данными X и y.
fit(X: DataFrame, y: ndarray) -> ForecastingPipelineWrapperBase
Параметры
| Имя | Описание |
|---|---|
|
X
Обязательно
|
Входные данные X. |
|
y
Обязательно
|
Входные данные y. |
forecast
Выполните прогноз в кадре данных X_pred.
forecast(X_pred: DataFrame | None = None, y_pred: ndarray | DataFrame | None = None, forecast_destination: Timestamp | None = None, ignore_data_errors: bool = False) -> Tuple[ndarray, DataFrame]
Параметры
| Имя | Описание |
|---|---|
|
X_pred
|
кадр данных прогнозирования, объединяющий X_past и X_future в непрерывном режиме. Пустые значения в X_pred будут вменяться. Default value: None
|
|
y_pred
|
целевое значение, объединяющее определенные значения для y_past и отсутствующих значений для Y_future. Если прогнозы не будут сделаны для каждого X_pred. Default value: None
|
|
forecast_destination
|
<xref:pandas.Timestamp>
Forecast_destination: значение метки времени. Прогнозы будут сделаны до forecast_destination времени для всех зерен. Входные данные словаря { grain -> timestamp } не будут приняты. Если forecast_destination не дано, оно будет вменяться в качестве последнего времени, возникавшего в X_pred для каждого зерна. Default value: None
|
|
ignore_data_errors
|
Игнорировать ошибки в пользовательских данных. Default value: False
|
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Y_pred с подфреймом, соответствующим Y_future, заполненным соответствующими прогнозами. Все отсутствующие значения в Y_past будут заполнены ими. |
forecast_quantiles
Получите прогноз и квантили из установленного конвейера.
forecast_quantiles(X_pred: DataFrame | None = None, y_pred: ndarray | DataFrame | None = None, quantiles: float | List[float] | None = None, forecast_destination: Timestamp | None = None, ignore_data_errors: bool = False) -> DataFrame
Параметры
| Имя | Описание |
|---|---|
|
X_pred
|
кадр данных прогнозирования, объединяющий X_past и X_future в непрерывном режиме. Пустые значения в X_pred будут вменяться. Default value: None
|
|
y_pred
|
целевое значение, объединяющее определенные значения для y_past и отсутствующих значений для Y_future. Если прогнозы не будут сделаны для каждого X_pred. Default value: None
|
|
quantiles
|
Список квантилей, с которыми мы хотим прогнозировать. Default value: None
|
|
forecast_destination
|
<xref:pandas.Timestamp>
Forecast_destination: значение метки времени. Прогнозы будут сделаны до forecast_destination времени для всех зерен. Входные данные словаря { grain -> timestamp } не будут приняты. Если forecast_destination не дано, оно будет вменяться в качестве последнего времени, возникавшего в X_pred для каждого зерна. Default value: None
|
|
ignore_data_errors
|
Игнорировать ошибки в пользовательских данных. Default value: False
|
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Кадр данных, содержащий столбцы и прогнозы, сделанные при запрошенных квантилях. |
is_grain_dropped
Возвращает значение true, если зерно будет удалено.
is_grain_dropped(grain: Tuple[str] | str | List[str]) -> bool
Параметры
| Имя | Описание |
|---|---|
|
grain
Обязательно
|
Зерно для проверки, если оно будет удалено. |
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Значение true, если зерно будет удалено. |
preaggregate_data_set
Агрегирует набор данных прогнозирования.
Заметка: Этот метод не гарантирует, что набор данных будет агрегирован. Это произойдет только в том случае, если набор данных содержит повторяющиеся метки времени или даты вне сетки. :p aram df: набор данных для агрегирования. :p atam y: целевые значения. :p aram is_training_set: если верно, данные представляют набор обучения. :return: агрегированный или нетронутый набор данных, если агрегирование не требуется.
preaggregate_data_set(df: DataFrame, y: ndarray | None = None, is_training_set: bool = False) -> Tuple[DataFrame, ndarray | None]
Параметры
| Имя | Описание |
|---|---|
|
df
Обязательно
|
|
|
y
|
Default value: None
|
|
is_training_set
|
Default value: False
|
preprocess_pred_X_y
Предварительная обработка прогнозирования X и y.
preprocess_pred_X_y(X_pred: DataFrame | None = None, y_pred: ndarray | DataFrame | None = None, forecast_destination: Timestamp | None = None) -> Tuple[DataFrame, DataFrame | ndarray, Dict[str, Any]]
Параметры
| Имя | Описание |
|---|---|
|
X_pred
|
Default value: None
|
|
y_pred
|
Default value: None
|
|
forecast_destination
|
Default value: None
|
rolling_evaluation
"Создание прогнозов по последовательному источнику по заданному тестовом набору.
Каждая итерация делает прогноз для следующих периодов "max_horizon" относительно текущего источника, а затем перемещает источник по продолжительности времени горизонта. Контекст прогнозирования для каждого прогноза устанавливается таким образом, чтобы прогнозист использовал фактические целевые значения до текущего времени источника для создания признаков задержки.
Эта функция возвращает объединенный кадр данных для скользящего прогноза, присоединенного к фактическим данным из тестового набора.
Этот метод устарел и будет удален в будущем выпуске. Вместо этого используйте rolling_forecast().
rolling_evaluation(X_pred: DataFrame, y_pred: DataFrame | ndarray, ignore_data_errors: bool = False) -> Tuple[ndarray, DataFrame]
Параметры
| Имя | Описание |
|---|---|
|
X_pred
Обязательно
|
кадр данных прогнозирования, объединяющий X_past и X_future в непрерывном режиме. Пустые значения в X_pred будут вменяться. |
|
y_pred
Обязательно
|
целевое значение, соответствующее X_pred. |
|
ignore_data_errors
|
Игнорировать ошибки в пользовательских данных. Default value: False
|
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Y_pred с подфреймом, соответствующим Y_future, заполненным соответствующими прогнозами. Все отсутствующие значения в Y_past будут заполнены ими. |
rolling_forecast
Создание прогнозов по скользящей основе по тестовой группе.
Каждая итерация делает прогноз максимальных периодов горизонта вперед, используя информацию до текущего источника, а затем перемещает источник на "шаг" периоды времени. Контекст прогнозирования для каждого прогноза устанавливается таким образом, чтобы прогнозировщик использовал фактические целевые значения до текущего времени источника для создания функций обратного просмотра.
Эта функция возвращает кадр данных для скользящего прогноза, присоединенного к фактическим данным из тестового набора. Столбцы в возвращаемом кадре данных приведены следующим образом:
Столбцы идентификаторов таймерий (необязательно). При указании пользователем указанных имен столбцов будут использоваться.
Столбец источника прогноза, предоставляющий время источника для каждой строки.
Имя столбца: хранится как переменная члена объекта forecast_origin_column_name.
Столбец времени. Будет использоваться имя столбца, заданное пользователем.
Столбец прогнозируемых значений. Имя столбца: хранящееся в качестве члена объекта forecast_column_name
Фактический столбец значений. Имя столбца: хранится в качестве элемента объекта actual_column_name
rolling_forecast(X_pred: DataFrame, y_pred: ndarray, step: int = 1, ignore_data_errors: bool = False) -> DataFrame
Параметры
| Имя | Описание |
|---|---|
|
X_pred
Обязательно
|
<xref:pd.DataFrame>
Кадр данных прогнозирования |
|
y_pred
Обязательно
|
<xref:np.ndarray>
целевые значения, соответствующие строкам в X_pred |
|
step
|
Количество периодов для продвижения окна прогнозирования в каждой итерации. Default value: 1
|
|
ignore_data_errors
|
Игнорировать ошибки в пользовательских данных. Default value: False
|
Возвращаемое значение
| Тип | Описание |
|---|---|
|
<xref:pd.DataFrame>
|
Кадр данных для скользящего прогноза |
short_grain_handling
Возвращает значение true, если для модели включена короткая или отсутствующая обработка зерна.
short_grain_handling() -> bool
static_preaggregate_data_set
Агрегирует набор данных прогнозирования.
Заметка: Этот метод не гарантирует, что набор данных будет агрегирован. Это произойдет только в том случае, если набор данных содержит повторяющиеся метки времени или даты вне сетки. :p aram ts_transformer: таймерий tranformer, используемый для обучения. :p aram time_column_name: имя столбца времени. :p aram grain_column_names: список имен столбцов зерна. :p aram df: набор данных для агрегирования. :p atam y: целевые значения. :p aram is_training_set: если верно, данные представляют набор обучения. :return: агрегированный или нетронутый набор данных, если агрегирование не требуется.
static static_preaggregate_data_set(ts_transformer: TimeSeriesTransformer, time_column_name: str, grain_column_names: List[str], df: DataFrame, y: ndarray | None = None, is_training_set: bool = False) -> Tuple[DataFrame, ndarray | None]
Параметры
| Имя | Описание |
|---|---|
|
ts_transformer
Обязательно
|
|
|
time_column_name
Обязательно
|
|
|
grain_column_names
Обязательно
|
|
|
df
Обязательно
|
|
|
y
|
Default value: None
|
|
is_training_set
|
Default value: False
|
Атрибуты
actual_column_name
forecast_column_name
forecast_origin_column_name
grain_column_list
max_horizon
Возвращает максимальное значение hiorizon, используемое в модели.
origin_col_name
Возвращает имя исходного столбца.
target_lags
Возвращает задержки целевого объекта, если таковые есть.
target_rolling_window_size
Возвращает размер скользящего окна.
time_column_name
Возвращает имя столбца времени.
user_target_column_name
y_max_dict
Возвращает словарь с максимальными целевыми значениями по идентификатору временных рядов
y_min_dict
Возвращает словарь с минимальными целевыми значениями по идентификатору временных рядов
FATAL_NO_TARGET_IMPUTER
FATAL_NO_TARGET_IMPUTER = 'No target imputers were found in TimeSeriesTransformer.'
FATAL_NO_TS_TRANSFORM
FATAL_NO_TS_TRANSFORM = 'The time series transform is absent. Please try training model again.'