Iris, version 2 : une précision plus robuste.
Dans cet exercice, vous allez entraîner des SVM linéaires pour 100 partitions apprentissage/test distinctes du jeu de données iris. Vous évaluerez ensuite les performances de votre modèle en calculant la précision moyenne et l’écart-type. Cette procédure, assez générale, vous donnera une mesure bien plus robuste des performances du modèle que celle obtenue à partir d’une seule partition.
Cet exercice fait partie du cours
Machines à vecteurs de support en R
Instructions
- Pour chaque itération :
- Partitionnez le jeu de données en ensembles d’entraînement et de test selon un découpage aléatoire 80/20.
- Entraînez un SVM linéaire avec le coût par défaut sur l’ensemble d’entraînement.
- Évaluez la précision de votre modèle (
accuracya été initialisée dans votre environnement).
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
for (i in 1:___){
#assign 80% of the data to the training set
sample_size <- ___(___ * nrow(iris))
train <- ___(seq_len(nrow(iris)), size = ___)
trainset <- iris[train, ]
testset <- iris[-train, ]
#build model using training data
svm_model <- svm(Species~ ., data = ___,
type = "C-classification", kernel = "linear")
#calculate accuracy on test data
pred_test <- predict(svm_model, ___)
accuracy[i] <- mean(pred_test == ___$Species)
}
mean(___)
sd(___)