Zacznij terazZacznij za darmo

Iris od nowa – bardziej wiarygodna dokładność.

W tym ćwiczeniu zbudujesz liniowe SVM dla 100 różnych podziałów zbioru danych iris na część treningową i testową. Następnie ocenisz wydajność modelu, obliczając średnią dokładność i odchylenie standardowe. Ta ogólna procedura da ci znacznie bardziej wiarygodną miarę jakości modelu niż wyniki uzyskane z jednego podziału.

To ćwiczenie jest częścią kursu

Maszyny wektorów nośnych w R

Zobacz kurs

Instrukcje do ćwiczenia

  • Dla każdej próby:
    • Podziel zbiór danych na zbiór treningowy i testowy w losowym stosunku 80/20.
    • Zbuduj domyślne liniowe SVM z parametrem cost na zbiorze treningowym.
    • Oceń dokładność modelu (zmienna accuracy została już zainicjalizowana w twoim środowisku).

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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(___)
Edytuj i uruchom kod