시작하기무료로 시작하기

Iris 다시 보기 - 더 견고한 정확도

이 연습 문제에서는 iris 데이터셋에 대해 서로 다른 100개의 학습/테스트 분할을 생성하고, 각 분할에 대해 선형 SVM을 학습합니다. 그런 다음 평균 정확도와 표준편차를 계산하여 모델 성능을 평가해요. 이 절차는 매우 일반적이며, 단일 분할에서 얻는 결과보다 훨씬 더 견고한 모델 성능 지표를 제공합니다.

이 연습은 강의의 일부입니다

R에서의 Support Vector Machine

강의 보기

연습 안내

  • 각 시행에 대해:
    • 데이터셋을 무작위 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(___)
코드 편집 및 실행