Categorical Regression Splines.
Calls crs::crs() from crs.
Parameters
| Id | Type | Default | Levels | Range |
| degree | integer | 3 | \([0, \infty)\) | |
| segments | integer | 1 | \([1, \infty)\) | |
| include | integer | - | \((-\infty, \infty)\) | |
| lambda | untyped | - | - | |
| lambda.discrete | logical | FALSE | TRUE, FALSE | - |
| lambda.discrete.num | integer | 100 | \([0, \infty)\) | |
| cv | character | nomad | nomad, exhaustive, none | - |
| cv.threshold | integer | 10000 | \([0, \infty)\) | |
| cv.func | character | cv.ls | cv.ls, cv.gcv, cv.aic | - |
| kernel | logical | TRUE | TRUE, FALSE | - |
| degree.max | integer | 10 | \([0, \infty)\) | |
| segments.max | integer | 10 | \([1, \infty)\) | |
| degree.min | integer | 0 | \([0, \infty)\) | |
| segments.min | integer | 1 | \([1, \infty)\) | |
| cv.df.min | integer | 1 | \((-\infty, \infty)\) | |
| complexity | character | degree-knots | degree-knots, degree, knots | - |
| knots | character | quantiles | quantiles, uniform, auto | - |
| basis | character | auto | auto, additive, tensor, glp | - |
| prune | logical | FALSE | TRUE, FALSE | - |
| restarts | integer | 0 | \([0, \infty)\) | |
| nmulti | integer | 5 | \([0, \infty)\) | |
| singular.ok | logical | FALSE | TRUE, FALSE | - |
| deriv | integer | 0 | \([0, \infty)\) | |
| data.return | logical | FALSE | TRUE, FALSE | - |
| model.return | logical | FALSE | TRUE, FALSE | - |
| random.seed | integer | - | \((-\infty, \infty)\) | |
| tau | numeric | - | \([0, 1]\) | |
| initial.mesh.size.real | untyped | - | - | |
| initial.mesh.size.integer | untyped | - | - | |
| max.bb.eval | untyped | - | - | |
| min.mesh.size.real | untyped | - | - | |
| min.mesh.size.integer | untyped | - | - | |
| min.poll.size.real | untyped | - | - | |
| min.poll.size.integer | untyped | - | - | |
| opts | untyped | - | - |
See also
as.data.table(mlr_learners)for a table of available Learners in the running session (depending on the loaded packages).Chapter in the mlr3book: https://mlr3book.mlr-org.com/chapters/chapter2/data_and_basic_modeling.html#sec-learners
mlr3learners for a selection of recommended learners.
mlr3cluster for unsupervised clustering learners.
mlr3pipelines to combine learners with pre- and postprocessing steps.
mlr3tuning for tuning of hyperparameters, mlr3tuningspaces for established default tuning spaces.
Super classes
mlr3::Learner -> mlr3::LearnerRegr -> LearnerRegrCrs
Methods
Inherited methods
mlr3::Learner$base_learner()mlr3::Learner$configure()mlr3::Learner$encapsulate()mlr3::Learner$format()mlr3::Learner$help()mlr3::Learner$predict()mlr3::Learner$predict_newdata()mlr3::Learner$print()mlr3::Learner$reset()mlr3::Learner$selected_features()mlr3::Learner$train()mlr3::LearnerRegr$predict_newdata_fast()
Examples
# Define the Learner
learner = lrn("regr.crs")
print(learner)
#>
#> ── <LearnerRegrCrs> (regr.crs): Regression Splines ─────────────────────────────
#> • Model: -
#> • Parameters: list()
#> • Packages: mlr3 and crs
#> • Predict Types: [response] and se
#> • Feature Types: integer, numeric, factor, and ordered
#> • Encapsulation: none (fallback: -)
#> • Properties: weights
#> • Other settings: use_weights = 'use', predict_raw = 'FALSE'
# Define a Task
task = tsk("mtcars")
# Create train and test set
ids = partition(task)
# Train the learner on the training ids
learner$train(task, row_ids = ids$train)
#> Calling NOMAD (Nonsmooth Optimization by Mesh Adaptive Direct Search)
#>
#> starting point # 0: ( 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 )
#> starting point # 1: ( 0 0 1 7 5 1 6 0 0 1 4 5 8 7 1 3 6 6 1 1 )
#> starting point # 2: ( 0 0 1 9 8 1 1 3 0 3 8 6 3 6 4 5 2 6 7 7 )
#> starting point # 3: ( 0 3 0 5 1 0 8 8 0 6 3 2 6 2 9 9 8 2 9 9 )
#> starting point # 4: ( 0 1 0 0 6 1 4 5 0 9 7 9 4 3 6 7 5 9 4 3 )
#>
#>
fv = 30.93307
fv = 24.08059
fv = 1.340781e+154
fv = 31.50301
fv = 1.340781e+154
fv = 45.43045
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 58.96551
fv = 24.08059
fv = 1.340781e+154
fv = 37585.42
fv = 45.43045
fv = 1.340781e+154
fv = 15.57703
fv = 42.81706
fv = 1.340781e+154
fv = 15.57703
fv = 1.340781e+154
fv = 54627.51
fv = 1.340781e+154
fv = 365.5604
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 22.71402
fv = 1.340781e+154
fv = 16.3426
fv = 135.5374
fv = 15.57703
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 7397.198
fv = 24748.85
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 7.049976
fv = 1.340781e+154
fv = 2351494678
fv = 10403.06
fv = 1408.489
fv = 1.340781e+154
fv = 1.340781e+154
fv = 23.91605
fv = 23.91605
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1240011
fv = 7.049976
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 13.02543
fv = 36144.31
fv = 1.340781e+154
fv = 2970.84
fv = 529.9696
fv = 44.37739
fv = 10.19364
fv = 1.340781e+154
fv = 1.340781e+154
fv = 23.67564
fv = 22.2823
fv = 1.340781e+154
fv = 5229.276
fv = 81.74339
fv = 137.4631
fv = 76.62366
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 823.9148
fv = 7.049976
fv = 5230.191
fv = 16395.53
fv = 7.049976
fv = 1.340781e+154
fv = 64.12711
fv = 33.53406
fv = 120.2975
fv = 1.340781e+154
fv = 1.340781e+154
fv = 23.67564
fv = 15.43009
fv = 14.02591
fv = 1.340781e+154
fv = 43.65247
fv = 293.9572
fv = 1.340781e+154
fv = 408641097026
fv = 7.049976
fv = 7.049976
fv = 7.049976
fv = 20.85351
fv = 1.340781e+154
fv = 524.5166
run # 0: f=7.049976211
#>
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 7.313395
fv = 44.2155
fv = 1.340781e+154
fv = 1.340781e+154
fv = 44.2155
fv = 7.313395
fv = 9.10542
fv = 10337570
fv = 13.5805
fv = 10.67264
fv = 1.340781e+154
fv = 14.43368
fv = 1.340781e+154
fv = 10.67264
fv = 7.695047
fv = 7.313395
fv = 7.313395
fv = 1.340781e+154
fv = 9.308198
fv = 1.340781e+154
fv = 12.57125
fv = 15.49095
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 8.937809
fv = 7.728258
fv = 9.419391
fv = 11.01891
fv = 1.340781e+154
fv = 26.8259
fv = 10.48043
fv = 10.48043
fv = 10.48043
fv = 7.313395
fv = 9.220462
fv = 7.313395
fv = 11.19456
fv = 11.82529
fv = 5.332136
fv = 44.2155
fv = 1.340781e+154
fv = 31.98721
fv = 25.34807
fv = 118.0502
fv = 115.4622
fv = 24.25064
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 118.0502
fv = 5.332136
fv = 118.0502
fv = 48281.56
fv = 5.332136
fv = 5.332136
fv = 5.332136
fv = 5.332136
fv = 6.250027
fv = 8.0419
fv = 1.340781e+154
fv = 5.332136
fv = 1.340781e+154
fv = 33.04324
fv = 36.57256
fv = 355.231
fv = 1.340781e+154
fv = 1.340781e+154
fv = 5.332136
fv = 5.332136
fv = 5.332136
fv = 10.08572
fv = 5.332136
fv = 5.332136
fv = 6.686286
fv = 6.631107
fv = 5.332136
fv = 5.692341
fv = 1.340781e+154
fv = 38.13175
fv = 6.250027
fv = 5.332136
fv = 25.34807
fv = 5.708494
fv = 11.85399
fv = 11.39565
fv = 25.36585
fv = 44.2155
fv = 44.2155
fv = 6.986238
fv = 5.332136
fv = 5.332136
fv = 5.242753
fv = 53.26464
fv = 1.340781e+154
fv = 1.340781e+154
fv = 7.566203
fv = 3.580007
fv = 3.328494
fv = 3.328494
fv = 1.340781e+154
fv = 3.328494
fv = 3.328494
fv = 27.23788
fv = 1.340781e+154
fv = 3.328494
fv = 3.328494
fv = 4.261176
fv = 3.84233
fv = 3.328494
fv = 3.328494
fv = 6.311959
fv = 5.895068
fv = 5.242753
fv = 27.23788
fv = 6.250027
fv = 1.340781e+154
fv = 1.340781e+154
fv = 43.6165
fv = 43.6165
fv = 3.328494
fv = 3.328494
fv = 1.340781e+154
fv = 12.28016
fv = 6.788089
fv = 3.965158
fv = 3.328494
fv = 3.328494
fv = 1.340781e+154
fv = 1.340781e+154
fv = 3.776111
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 27.57071
fv = 27.57071
fv = 5.727443
fv = 6.339821
fv = 3.328494
fv = 3.328494
fv = 3.328494
fv = 3.328494
fv = 1.340781e+154
fv = 18.41089
fv = 3.893864
fv = 3.328494
fv = 3.328494
fv = 3.328494
fv = 3.328494
fv = 3.328494
fv = 3.328494
fv = 3.328494
fv = 6.250027
fv = 3.580007
run # 1: f=3.32849378
#>
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 8.806593
fv = 44.2155
fv = 182.1211
fv = 10.48043
fv = 28.25012
fv = 8.806593
fv = 1648170
fv = 8.806593
fv = 69.55412
fv = 38032672
fv = 8.806593
fv = 60.67041
fv = 190.0864
fv = 1.340781e+154
fv = 564.7201
fv = 491.2771
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 3754.564
fv = 1.340781e+154
fv = 1.340781e+154
fv = 13.39383
fv = 1.340781e+154
fv = 33.15757
fv = 1.340781e+154
fv = 18.00252
fv = 66.77844
fv = 67.6023
fv = 27.49219
fv = 3312408
fv = 68081690
fv = 8.806593
fv = 781.8793
fv = 127.6174
fv = 2947.185
fv = 8.806593
fv = 59.05828
fv = 153.3953
fv = 8.806593
fv = 373.9001
fv = 22.61097
fv = 1.340781e+154
fv = 44.2155
fv = 44.2155
fv = 44.85753
fv = 1.340781e+154
fv = 42.72758
fv = 20.59402
fv = 10.88013
fv = 6.693238
fv = 18125709
fv = 1.340781e+154
fv = 1.340781e+154
fv = 14231.9
fv = 4059.568
fv = 14.54864
fv = 25.84847
fv = 6.693238
fv = 6.693238
fv = 6.693238
fv = 11.56963
fv = 6.97691
fv = 37.55796
fv = 5.98996
fv = 12.93744
fv = 1.340781e+154
fv = 18.7175
fv = 10.28142
fv = 150.0211
fv = 46.67759
fv = 1.340781e+154
fv = 2155.254
fv = 44.67666
fv = 31.63579
fv = 31.63579
fv = 40.648
fv = 1.340781e+154
fv = 27.38233
fv = 5.98996
fv = 15.82318
fv = 13.94657
fv = 10.28142
fv = 31.63579
fv = 7.378168
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 10.45879
fv = 20.87787
fv = 15.66977
fv = 9.786024
fv = 249.607
fv = 6.058778
fv = 21.64339
fv = 17.40158
fv = 14.68907
fv = 5.98996
fv = 13.07424
fv = 5.98996
fv = 11.63179
fv = 190.1264
fv = 5.98996
fv = 10.15175
fv = 5.98996
fv = 5.98996
fv = 5.98996
fv = 36.82776
run # 2: f=5.989960192
#>
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 420889
fv = 44.2155
fv = 1.340781e+154
fv = 4688520207
fv = 44.2155
fv = 18.44324
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 27.57071
fv = 1.340781e+154
fv = 1.340781e+154
fv = 2052254629
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 18716.7
fv = 1.340781e+154
fv = 1.340781e+154
fv = 44.2155
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 18.44324
fv = 1.340781e+154
fv = 14.04627
fv = 1.340781e+154
fv = 12.66872
fv = 1938.447
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 474.4902
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 30.65098
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 105.5654
fv = 1.340781e+154
fv = 474.4902
fv = 13.07142
fv = 12.66872
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 187180843726
fv = 11.32216
fv = 39.3874
fv = 1.340781e+154
fv = 44.2155
fv = 9.732888
fv = 2698.944
fv = 1.340781e+154
fv = 199548.8
fv = 32.28416
fv = 1.340781e+154
fv = 14.16695
fv = 1.340781e+154
fv = 1.340781e+154
fv = 8.750324
fv = 27.57071
fv = 1.340781e+154
fv = 27.57071
fv = 9.891327
fv = 11.92044
fv = 13.37369
fv = 14.11963
fv = 7.592477
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 10.23969
fv = 88319891404
fv = 24.50213
fv = 18.82873
fv = 408.1843
fv = 7.83189
fv = 7.592477
fv = 7.592477
fv = 39.0888
fv = 8.737168
fv = 8.737168
fv = 9.576144
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 9453.921
fv = 1.340781e+154
fv = 21.84014
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 9.074303
fv = 7.937249
fv = 10.19042
fv = 9.900857
fv = 8.750324
fv = 20.25729
fv = 7.592477
fv = 8.05948
fv = 8.05948
fv = 10.23969
fv = 8.37363
fv = 18.82873
fv = 1.340781e+154
fv = 9.900857
fv = 16.01221
fv = 10.43221
fv = 7.60291
fv = 1.340781e+154
fv = 7.592477
fv = 78689.65
fv = 1.340781e+154
fv = 1.340781e+154
fv = 24.77473
fv = 9.72732
fv = 9.536973
fv = 9.8894
fv = 7.592477
fv = 7.592477
fv = 9.173808
fv = 10.76429
fv = 1.340781e+154
fv = 1.340781e+154
fv = 8.588079
fv = 7.592477
fv = 7.592477
fv = 7.592477
fv = 7.592477
fv = 8.37363
fv = 1.340781e+154
fv = 830722.3
fv = 1.340781e+154
fv = 43.6165
fv = 7.592477
fv = 9.329874
fv = 8.51347
fv = 1.340781e+154
fv = 9.799842
fv = 447.2484
fv = 11.36803
fv = 8.711002
fv = 7.592477
fv = 7.592477
fv = 7.592477
fv = 7.592477
fv = 1.340781e+154
fv = 8.358286
fv = 8.2276
fv = 7.592477
fv = 1.340781e+154
fv = 1.340781e+154
fv = 24.77473
fv = 24.77473
fv = 1.340781e+154
fv = 7.83189
fv = 7.592477
fv = 7.592477
fv = 8.358286
fv = 1.340781e+154
fv = 7.592477
fv = 1.340781e+154
fv = 59.81907
fv = 11.80174
run # 3: f=7.592477483
#>
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 13.67912
fv = 44.2155
fv = 1.340781e+154
fv = 1.340781e+154
fv = 13.67912
fv = 13.67912
fv = 44.2155
fv = 8.470729
fv = 8.470729
fv = 1.340781e+154
fv = 1.340781e+154
fv = 450930343
fv = 1.340781e+154
fv = 10.1983
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 14.02333
fv = 97804222
fv = 12.70661
fv = 14.02333
fv = 13.39535
fv = 24921.74
fv = 14.49978
fv = 8.470729
fv = 15.24402
fv = 7256927
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 1.340781e+154
fv = 12.59661
fv = 40.49604
fv = 14.02333
fv = 10.01566
fv = 6773.113
fv = 1.340781e+154
fv = 870.4093
fv = 11.99564
fv = 13.89314
fv = 21.2204
fv = 1.340781e+154
fv = 1.340781e+154
fv = 8.470729
fv = 12.46946
fv = 55.57582
fv = 8.470729
fv = 8.470729
fv = 8.470729
fv = 9.029846
fv = 14.20632
fv = 41.1085
fv = 1.340781e+154
fv = 10.87938
fv = 1.340781e+154
fv = 12.70466
fv = 12.70661
fv = 13.9422
fv = 16.40249
fv = 8.96397
fv = 9.375971
fv = 1.340781e+154
fv = 1.340781e+154
fv = 8.470729
fv = 8.470729
fv = 8.470729
fv = 8.470729
fv = 8.470729
fv = 8.470729
fv = 8.470729
fv = 8.470729
fv = 11.21988
fv = 37.68424
run # 4: f=8.470729397
#>
#> bb eval : 709
#> best : 3.32849378
#> worst : 8.470729397
#> solution: x = ( 0 0 0 2 0 2 1 0 0 0 3 2 5 6 1 1 1 6 2 1 ) f(x) = 3.32849378
#>
#>
fv = 3.328494
#> Warning: optimal degree equals search maximum (1): rerun with larger degree.max optimal degree equals search maximum (4): rerun with larger degree.max optimal degree equals search maximum (2): rerun with larger degree.max optimal degree equals search maximum (10): rerun with larger degree.max optimal degree equals search maximum (10): rerun with larger degree.max optimal degree equals search maximum (2): rerun with larger degree.max optimal degree equals search maximum (10): rerun with larger degree.max optimal degree equals search maximum (10): rerun with larger degree.max optimal degree equals search maximum (1): rerun with larger degree.max optimal degree equals search maximum (10): rerun with larger degree.max
#> Working...
print(learner$model)
#> Call:
#> crs.formula(formula = formula, data = data, weights = private$.get_weights(task))
# Make predictions for the test rows
predictions = learner$predict(task, row_ids = ids$test)
#> Working...
#> Warning: some 'x' values beyond boundary knots may cause ill-conditioned bases
#>
# Score the predictions
predictions$score()
#> regr.mse
#> 4.053433