Iris znovu – robustnější měření přesnosti.
V tomto cvičení sestavíš lineární SVM pro 100 různých rozdělení datasetu iris na trénovací a testovací sadu. Výkonnost modelu pak vyhodnotíš výpočtem průměrné přesnosti a směrodatné odchylky. Tenhle postup je velmi univerzální a dá ti spolehlivější obrázek o výkonnosti modelu než výsledky z jediného rozdělení.
Toto cvičení je součástí kurzu
Support Vector Machines v R
Pokyny k cvičení
- Pro každé opakování:
- Rozděl dataset náhodně na trénovací a testovací sadu v poměru 80/20.
- Natrénuj lineární SVM s výchozí hodnotou cost na trénovacím datasetu.
- Vyhodnoť přesnost modelu (proměnná
accuracyje již inicializována v prostředí).
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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(___)