BrownExponentialSmoothing

class hana_ml.algorithms.pal.tsa.exponential_smoothing.BrownExponentialSmoothing(alpha=None, delta=None, forecast_num=None, adaptive_method=None, accuracy_measure=None, ignore_zero=None, expost_flag=None, prediction_confidence_1=None, prediction_confidence_2=None)

Brown exponential smoothing is suitable to model the time series with trend but without seasonality. Both non-adaptive and adaptive brown linear exponential smoothing are provided in PAL.

Parameters:
alphafloat, optional

The smoothing constant alpha for brown exponential smoothing or the initialization value for adaptive brown exponential smoothing (0 < alpha < 1).

  • Defaults to 0.1 when Brown exponential smoothing

  • Defaults to 0.2 when Adaptive brown exponential smoothing

deltafloat, optional

Value of weighted for At and Mt.

Only valid when adaptive_method is True.

Defaults to 0.2

forecast_numint, optional

Number of values to be forecast.

Defaults to 0.

adaptive_methodbool, optional
  • False: Brown exponential smoothing.

  • True: Adaptive brown exponential smoothing.

Defaults to False.

accuracy_measurestr or a list of str, optional

The metric to quantify how well a model fits input data. Options: "mpe", "mse", "rmse", "et", "mad", "mase", "wmape", "smape", "mape".

No default value.

Note

Specify a measure name if you want the corresponding measure value to be reflected in the output statistics self.stats_.

ignore_zerobool, optional
  • False: Uses zero values in the input dataset when calculating "mpe" or "mape".

  • True: Ignores zero values in the input dataset when calculating "mpe" or "mape".

Only valid when accuracy_measure is "mpe" or "mape".

Defaults to False.

expost_flagbool, optional
  • False: Does not output the expost forecast, and just outputs the forecast values.

  • True: Outputs the expost forecast and the forecast values.

Defaults to True.

prediction_confidence_1float, optional

Prediction confidence for interval 1.

Only valid when the upper and lower columns are provided in the result table.

Defaults to 0.8.

prediction_confidence_2float, optional

Prediction confidence for interval 2.

Only valid when the upper and lower columns are provided in the result table.

Defaults to 0.95.

Examples

>>> brown_exp_smooth = BrownExponentialSmoothing(alpha=0.1,
                                                 delta=0.2,
                                                 forecast_num=6,
                                                 adaptive_method=False,
                                                 accuracy_measure='mse',
                                                 ignore_zero=0,
                                                 expost_flag=1)

Perform fit_predict():

>>> brown_exp_smooth.fit_predict(data=df)

Output:

>>> brown_exp_smooth.forecast_.collect()
>>> brown_exp_smooth.stats_.collect()
Attributes:
forecast_DateFrame

Forecast values.

stats_DataFrame

Statistics.

Methods

fit_predict(data[, key, endog])

Fit and predict based on the given time series.

get_model_metrics()

Get the model metrics.

get_score_metrics()

Get the score metrics.

fit_predict(data, key=None, endog=None)

Fit and predict based on the given time series.

Parameters:
dataDataFrame

Input data. At least two columns, one is ID column, the other is raw data.

keystr, optional

The ID column.

Defaults to the first column of data if the index column of data is not provided. Otherwise, defaults to the index column of data.

endogstr, optional

The column of series to be fitted and predicted.

Defaults to the first non-ID column.

Returns:
DataFrame

Forecast values.

get_model_metrics()

Get the model metrics.

Returns:
DataFrame

The model metrics.

get_score_metrics()

Get the score metrics.

Returns:
DataFrame

The score metrics.

Inherited Methods from PALBase

Besides those methods mentioned above, the BrownExponentialSmoothing class also inherits methods from PALBase class, please refer to PAL Base for more details.