ja-thomas / autoxgboost

autoxgboost - Automatic tuning and fitting of xgboost
Other
121 stars 19 forks source link

Different results of recommended parameters #67

Open AsiaHenzel opened 4 years ago

AsiaHenzel commented 4 years ago

I've run your example code:

iris.task = makeClassifTask(data = iris, target = "Species")
ctrl = makeMBOControl()
ctrl = setMBOControlTermination(ctrl, iters = 1L) #Speed up Tuning by only doing 1 iteration
res = autoxgboost(iris.task, control = ctrl, tune.threshold = FALSE)

When printing results I get:

> res
Autoxgboost tuning result

Recommended parameters:
              eta: 0.193
            gamma: 6.423
        max_depth: 8
 colsample_bytree: 0.831
colsample_bylevel: 0.800
           lambda: 21.812
            alpha: 0.007
        subsample: 0.639
          nrounds: 1

Preprocessing pipeline:
dropconst(rel.tol = 1e-08, abs.tol = 1e-08, ignore.na = FALSE)

With tuning result: mmce = 0.000

but when I go inside a named list of proposed optimal parameters I get different values:

> res$optim.result$x
$eta
[1] 0.19314

$gamma
[1] 2.683274

$max_depth
[1] 8

$colsample_bytree
[1] 0.8307879

$colsample_bylevel
[1] 0.7996119

$lambda
[1] 4.447074

$alpha
[1] -7.151554

$subsample
[1] 0.6385641

For example gamma value are different in both listings.

Which set of parameters is a correct list of optimal parameters?