Skip to contents

Fit a linear model with a response-surface component. Calls rsm::rsm() from rsm.

Custom mlr3 parameters

  • modelfun: This parameter controls how the formula for rsm::rsm() is created. Possible values are:

    • "FO" - first order

    • "TWI" - wo-way interactions, this is with 1st oder terms

    • "SO" - full second order

Dictionary

This Learner can be instantiated via lrn():

lrn("regr.rsm")

Meta Information

  • Task type: “regr”

  • Predict Types: “response”

  • Feature Types: “integer”, “numeric”, “factor”, “ordered”

  • Required Packages: mlr3, rsm

Parameters

IdTypeDefaultLevels
modelfuncharacter-FO, TWI, SO

References

Lenth, V R (2010). “Response-surface methods in R, using rsm.” Journal of Statistical Software, 32, 1–17.

See also

Author

sebffischer

Super classes

mlr3::Learner -> mlr3::LearnerRegr -> LearnerRegrRSM

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

LearnerRegrRSM$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples

# Define the Learner
learner = mlr3::lrn("regr.rsm")
print(learner)
#> <LearnerRegrRSM:regr.rsm>: Response Surface Model
#> * Model: -
#> * Parameters: modelfun=FO
#> * Packages: mlr3, rsm
#> * Predict Types:  [response]
#> * Feature Types: integer, numeric, factor, ordered
#> * Properties: -

# Define a Task
task = mlr3::tsk("mtcars")

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

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

print(learner$model)
#> 
#> Call:
#> rsm(formula = mpg ~ FO(am, carb, cyl, disp, drat, gear, hp, qsec, 
#>     vs, wt), data = data)
#> 
#> Coefficients:
#>                                               (Intercept)  
#>                                                   9.72867  
#>   FO(am, carb, cyl, disp, drat, gear, hp, qsec, vs, wt)am  
#>                                                   1.24489  
#> FO(am, carb, cyl, disp, drat, gear, hp, qsec, vs, wt)carb  
#>                                                  -0.01942  
#>  FO(am, carb, cyl, disp, drat, gear, hp, qsec, vs, wt)cyl  
#>                                                   0.50008  
#> FO(am, carb, cyl, disp, drat, gear, hp, qsec, vs, wt)disp  
#>                                                   0.01408  
#> FO(am, carb, cyl, disp, drat, gear, hp, qsec, vs, wt)drat  
#>                                                   1.37211  
#> FO(am, carb, cyl, disp, drat, gear, hp, qsec, vs, wt)gear  
#>                                                   0.61796  
#>   FO(am, carb, cyl, disp, drat, gear, hp, qsec, vs, wt)hp  
#>                                                  -0.04577  
#> FO(am, carb, cyl, disp, drat, gear, hp, qsec, vs, wt)qsec  
#>                                                   0.96912  
#>   FO(am, carb, cyl, disp, drat, gear, hp, qsec, vs, wt)vs  
#>                                                  -1.38576  
#>   FO(am, carb, cyl, disp, drat, gear, hp, qsec, vs, wt)wt  
#>                                                  -4.39074  
#> 


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

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