開始使用免費開始

Iris 再訪——更穩健的正確率。

在這個練習中,你會為 iris 資料集的 100 個不同訓練/測試切分建立線性 SVM。接著,你會計算平均正確率與標準差來評估模型表現。這個相當通用的流程,會比只用單一次切分得到的結果,更能穩健地衡量模型效能。

本練習屬於課程

R 的支援向量機

檢視課程

練習說明

  • 每次試驗:
    • 將資料集以隨機 80/20 比例切分為訓練集與測試集。
    • 在訓練資料集上建立使用預設 cost 的線性 SVM。
    • 評估模型的正確率(accuracy 已在你的環境中初始化)。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

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(___)
編輯並執行程式碼