Utiliser `tune.svm()`
Cet exercice vous permet de vous entraîner à utiliser la fonction tune.svm(). Vous allez l’employer pour obtenir les valeurs optimales des paramètres cost, gamma et coef0 pour un modèle SVM basé sur le jeu de données radialement séparable que vous avez créé plus tôt dans ce chapitre. Les données d’entraînement sont dans le dataframe 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 se trouve dans la troisième colonne de trainset et testset.
Souvenez-vous également 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.
Cet exercice fait partie du cours
Machines à vecteurs de support en R
Instructions
- 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: l’une des valeurs suivantes : 0,1, 1 et 10.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
#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$___