LoslegenKostenlos loslegen

Iris reloaded – eine robustere Genauigkeit.

In dieser Übung baust du lineare SVMs für 100 unterschiedliche Trainings-/Testaufteilungen des iris-Datensatzes. Anschließend bewertest du die Leistung deines Modells, indem du die mittlere Genauigkeit und die Standardabweichung berechnest. Dieses sehr allgemeine Vorgehen liefert dir eine deutlich robustere Kennzahl der Modellgüte als eine Bewertung auf nur einer einzigen Aufteilung.

Diese Übung ist Teil des Kurses

Support Vector Machines in R

Kurs anzeigen

Anleitung zur Übung

  • Für jeden Durchlauf:
    • Teile den Datensatz zufällig im Verhältnis 80/20 in Trainings- und Testdaten.
    • Baue eine lineare SVM mit Standardkosten auf dem Trainingsdatensatz.
    • Werte die Genauigkeit deines Modells aus (accuracy wurde in deiner Umgebung initialisiert).

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

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(___)
Code bearbeiten und ausführen