PredictionIntervalContextIgnorantAbstractModel#
- class PredictionIntervalContextIgnorantAbstractModel[source]#
Bases:
AbstractModel
Interface for models that support prediction intervals and don’t need context for prediction.
Methods
fit
(ts)Fit model.
forecast
(ts[, prediction_interval, ...])Make predictions.
Get internal model/models that are used inside etna class.
load
(path)Load an object.
Get grid for tuning hyperparameters.
predict
(ts[, prediction_interval, ...])Make predictions with using true values as autoregression context if possible (teacher forcing).
save
(path)Save the object.
set_params
(**params)Return new object instance with modified parameters.
to_dict
()Collect all information about etna object in dict.
Attributes
This class stores its
__init__
parameters as attributes.Context size of the model.
- abstract fit(ts: TSDataset) AbstractModel [source]#
Fit model.
- Parameters:
ts (TSDataset) – Dataset with features
- Returns:
Model after fit
- Return type:
AbstractModel
- abstract forecast(ts: TSDataset, prediction_interval: bool = False, quantiles: Sequence[float] = (0.025, 0.975), return_components: bool = False) TSDataset [source]#
Make predictions.
- Parameters:
ts (TSDataset) – Dataset with features
prediction_interval (bool) – If True returns prediction interval for forecast
quantiles (Sequence[float]) – Levels of prediction distribution. By default 2.5% and 97.5% are taken to form a 95% prediction interval
return_components (bool) – If True additionally returns forecast components
- Returns:
Dataset with predictions
- Return type:
- abstract get_model() Any | Dict[str, Any] [source]#
Get internal model/models that are used inside etna class.
Internal model is a model that is used inside etna to forecast segments, e.g.
catboost.CatBoostRegressor
orsklearn.linear_model.Ridge
.
- classmethod load(path: Path) Self [source]#
Load an object.
- Parameters:
path (Path) – Path to load object from.
- Returns:
Loaded object.
- Return type:
Self
- params_to_tune() Dict[str, BaseDistribution] [source]#
Get grid for tuning hyperparameters.
This is default implementation with empty grid.
- Returns:
Empty grid.
- Return type:
- abstract predict(ts: TSDataset, prediction_interval: bool = False, quantiles: Sequence[float] = (0.025, 0.975), return_components: bool = False) TSDataset [source]#
Make predictions with using true values as autoregression context if possible (teacher forcing).
- Parameters:
ts (TSDataset) – Dataset with features
prediction_interval (bool) – If True returns prediction interval for forecast
quantiles (Sequence[float]) – Levels of prediction distribution. By default 2.5% and 97.5% are taken to form a 95% prediction interval
return_components (bool) – If True additionally returns prediction components
- Returns:
Dataset with predictions
- Return type:
- set_params(**params: dict) Self [source]#
Return new object instance with modified parameters.
Method also allows to change parameters of nested objects within the current object. For example, it is possible to change parameters of a
model
in aPipeline
.Nested parameters are expected to be in a
<component_1>.<...>.<parameter>
form, where components are separated by a dot.- Parameters:
**params (dict) – Estimator parameters
- Returns:
New instance with changed parameters
- Return type:
Self
Examples
>>> from etna.pipeline import Pipeline >>> from etna.models import NaiveModel >>> from etna.transforms import AddConstTransform >>> model = model=NaiveModel(lag=1) >>> transforms = [AddConstTransform(in_column="target", value=1)] >>> pipeline = Pipeline(model, transforms=transforms, horizon=3) >>> pipeline.set_params(**{"model.lag": 3, "transforms.0.value": 2}) Pipeline(model = NaiveModel(lag = 3, ), transforms = [AddConstTransform(in_column = 'target', value = 2, inplace = True, out_column = None, )], horizon = 3, )