Geaggregeerde metingen definiëren
Nu ga je prestatiemaatstaven definiëren.
De gegevensset knowledge_train_data is al voor je geladen, net als de pakketten mlr en tidyverse. En de volgende code is ook al uitgevoerd:
task <- makeClassifTask(data = knowledge_train_data,
target = "UNS")
lrn <- makeLearner(cl = "classif.nnet", fix.factors.prediction = TRUE)
param_set <- makeParamSet(
makeIntegerParam("size", lower = 1, upper = 5),
makeIntegerParam("maxit", lower = 1, upper = 300),
makeNumericParam("decay", lower = 0.0001, upper = 1)
)
ctrl_random <- makeTuneControlRandom(maxit = 10)
Deze oefening maakt deel uit van de cursus
Hyperparameterafstelling in R
Oefeninstructies
- Gebruik de functie
setAggregation, die de standaarddeviatie van prestatiemetrieken aggregeert. - Pas
setAggregationtoe op de gemiddelde misclassificatiefout en accuracy na resampling. - Optimaliseer je model op basis van de gemiddelde misclassificatiefout. Onthoud dat het eerste argument wordt gebruikt voor optimalisatie.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Create holdout sampling
holdout <- makeResampleDesc("Holdout", predict = "both")
# Perform tuning
lrn_tune <- tuneParams(learner = lrn,
task = task,
resampling = holdout,
control = ctrl_random,
par.set = param_set,
measures = list(___, ___(___, train.mean), ___, ___(___, train.mean)))