Kom igångKom igång gratis

Iris redux – en mer robust noggrannhet.

I den här övningen bygger du linjära SVM:er för 100 olika tränings- och testpartitioner av iris-datamängden. Du utvärderar sedan modellens prestanda genom att beräkna medelnoggranhet och standardavvikelse. Det här förfarandet, som är helt generellt, ger dig ett mycket mer robust mått på modellens prestanda än vad en enskild partition kan ge.

Den här övningen är en del av kursen

Support Vector Machines i R

Visa kurs

Övningsinstruktioner

  • För varje försök:
    • Dela upp datamängden i tränings- och testmängder med en slumpmässig 80/20-uppdelning.
    • Bygg en linjär SVM med standardkostnad på träningsdatamängden.
    • Utvärdera noggrannheten hos din modell (accuracy har initierats i din miljö).

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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(___)
Redigera och kör kod