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(___)