Skip to contents

Auto ARIMA model. Calls forecast::auto.arima() from package forecast.

Dictionary

This mlr3::Learner can be instantiated via the dictionary mlr3::mlr_learners or with the associated sugar function mlr3::lrn():

mlr_learners$get("fcst.auto_arima")
lrn("fcst.auto_arima")

Meta Information

  • Task type: “fcst”

  • Predict Types: “response”, “quantiles”

  • Feature Types: “logical”, “integer”, “numeric”

  • Required Packages: mlr3, mlr3forecast, forecast

Parameters

IdTypeDefaultLevelsRange
dintegerNA\([0, \infty)\)
DintegerNA\([0, \infty)\)
max.pinteger5\([0, \infty)\)
max.qinteger5\([0, \infty)\)
max.Pinteger2\([0, \infty)\)
max.Qinteger2\([0, \infty)\)
max.orderinteger5\([0, \infty)\)
max.dinteger2\([0, \infty)\)
max.Dinteger1\([0, \infty)\)
start.pinteger2\([0, \infty)\)
start.qinteger2\([0, \infty)\)
start.Pinteger2\([0, \infty)\)
start.Qinteger2\([0, \infty)\)
stationarylogicalFALSETRUE, FALSE-
seasonallogicalFALSETRUE, FALSE-
iccharacteraiccaicc, aic, bic-
stepwiselogicalFALSETRUE, FALSE-
nmodelsinteger94\([0, \infty)\)
tracelogicalFALSETRUE, FALSE-
approximationuntyped--
methoduntypedNULL-
truncateuntypedNULL-
testcharacterkpsskpss, adf, pp-
test.argsuntypedlist()-
seasonal.testcharacterseasseas, ocsb, hegy, ch-
seasonal.test.argsuntypedlist()-
allowdriftlogicalTRUETRUE, FALSE-
allowmeanlogicalTRUETRUE, FALSE-
biasadjlogicalFALSETRUE, FALSE-
parallellogicalFALSETRUE, FALSE-
num.coresinteger2\([1, \infty)\)
include.meanlogicalTRUETRUE, FALSE-
include.driftlogicalFALSETRUE, FALSE-
include.constantlogicalFALSETRUE, FALSE-
lambdauntypedNULL-
bootstraplogicalFALSETRUE, FALSE-
npathsinteger5000\([1, \infty)\)
transform.parslogicalTRUETRUE, FALSE-
fixeduntypedNULL-
inituntypedNULL-
SSinitcharacterGardner1980Gardner1980, Rossignol2011-
n.condinteger-\([1, \infty)\)
optim.methodcharacterBFGSNelder-Mead, BFGS, CG, L-BFGS-B, SANN, Brent-
optim.controluntypedlist()-
kappanumeric1e+06\((-\infty, \infty)\)

References

Hyndman, J. R, Khandakar, Yeasmin (2008). “Automatic Time Series Forecasting: The forecast Package for R.” Journal of Statistical Software, 27(3), 1–22. doi:10.18637/jss.v027.i03 , https://www.jstatsoft.org/index.php/jss/article/view/v027i03.

Wang, Xiaozhe, Smith, Kate, Hyndman, Rob (2006). “Characteristic-based clustering for time series data.” Data Mining and Knowledge Discovery, 13, 335–364.

See also

Other Learner: LearnerFcst, mlr_learners_fcst.adam, mlr_learners_fcst.arfima, mlr_learners_fcst.arima, mlr_learners_fcst.auto_adam, mlr_learners_fcst.auto_ces, mlr_learners_fcst.bats, mlr_learners_fcst.ces, mlr_learners_fcst.ets, mlr_learners_fcst.nnetar, mlr_learners_fcst.tbats

Methods

Inherited methods


Method new()

Creates a new instance of this R6 class.

Usage


Method clone()

The objects of this class are cloneable with this method.

Usage

LearnerFcstAutoArima$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples

# Define the Learner and set parameter values
learner = lrn("fcst.auto_arima")
print(learner)
#> 
#> ── <LearnerFcstAutoArima> (fcst.auto_arima): Auto ARIMA ────────────────────────
#> • Model: -
#> • Parameters: list()
#> • Packages: mlr3, mlr3forecast, and forecast
#> • Predict Types: [response] and quantiles
#> • Feature Types: logical, integer, and numeric
#> • Encapsulation: none (fallback: -)
#> • Properties: exogenous, featureless, and missings
#> • Other settings: use_weights = 'error'

# Define a Task
task = tsk("airpassengers")

# Create train and test set
ids = partition(task)

# Train the learner on the training ids
learner$train(task, row_ids = ids$train)

# Print the model
print(learner$model)
#> Series: as.ts(task) 
#> ARIMA(1,1,0)(1,1,0)[12] 
#> 
#> Coefficients:
#>           ar1     sar1
#>       -0.2250  -0.2274
#> s.e.   0.1076   0.1081
#> 
#> sigma^2 = 92.5:  log likelihood = -304.98
#> AIC=615.97   AICc=616.27   BIC=623.22

# Importance method
if ("importance" %in% learner$properties) print(learner$importance)

# Make predictions for the test rows
predictions = learner$predict(task, row_ids = ids$test)

# Score the predictions
predictions$score()
#> regr.mse 
#> 700.7478