Utiliser `tune.svm()`
Cet exercice vous permet de vous pratiquer avec la fonction tune.svm(). Vous l'utiliserez pour obtenir les valeurs optimales des paramètres cost, gamma et coef0 pour un modèle SVM basé sur l'ensemble de données radialement séparables que vous avez créé plus tôt dans ce chapitre. Les données d'entraînement se trouvent dans le tableau de données trainset, les données de test dans testset, et la bibliothèque e1071 a déjà été chargée pour vous. Rappelez-vous que la variable de classe y est stockée dans la troisième colonne de trainset et testset.
Rappelez-vous aussi que dans la vidéo, Kailash a utilisé cost=10^(1:3) pour obtenir une plage du paramètre cost allant de 10=10^1 à 1000=10^3 par multiples de 10.
Cette activité fait partie du cours
Machines à vecteurs de support en R
Instructions de l’exercice
- Définissez les plages de recherche des paramètres comme suit :
cost- de 0,1 (10^(-1)) à 100 (10^2) par multiples de 10.gammaetcoef0- une des valeurs suivantes : 0,1, 1 et 10.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
#tune model
tune_out <-
tune.svm(x = trainset[, -3], y = trainset[, 3],
type = "C-classification",
kernel = "polynomial", degree = 2, cost = 10^(___:___),
gamma = c(___, ___, ___), coef0 = c(0.1, 1, 10))
#list optimal values
tune_out$best.parameters$___
tune_out$best.parameters$___
tune_out$best.parameters$___