지난번 포스팅에 이어 교차 검증에 대해 적습니다. Cross validation training set이 적을 때 사용하는 좋은 방법 training data의 사이즈가 작을 경우에는 교차검증이라 불리는 더 정교한 튜닝기술을 사용할 수 있다.복수의 fold를 각각 검사하여 평균적인 성능을 낸다. 그 후에 어떤 k가 더 좋고 noise가 적은 결과를 낼지 예측하는 것이다. n-fold cross-validation이 있는데, 여기에서 fold는 하나의 그룹이라고 보면 된다. 5-fold cross-validation ᄋ일반ᆯ 예시로. Training Data를 n개의 fold로 나누고 1개는 validation set, n-1개는 training으로 사용한다. 5개를 예로 들면, 1.fold5가 validation set이라고 하자.A, B, C, D는 training set로서 쓰고, E를 test set처럼 사용한다.그러면(A,B,C,D),E에서 성능을 낸다. 다음에 정밀도 A1을 요구한다.2.fold4가 validation set이라고 하자.(A, B, C, E), D로 성능을 다시 낸다. 다음으로 정밀도 A2를 구하는 3.fold 3에 대해 같은 작업수행 4.fold 2에 대해 같은 작업수행 5.fold 1에 대해 같은 작업수행 그렇게 되면 5개의 정밀도가 나오고 그것의 평균을 구한다.그렇게 하면 최종 분류 정도가 나오게 된다. 이하의 결과를 보고 이해해 보는 것이 좋다. 5-fold 이므로 각 k별로 5가지 결과가 나올 것이다.각 점(dot)은 결과이며, 봉은 표준편차를 나타낸다. 선은 평균을 나타낸다. k마다 점이 5개이고, k=7정도에 가장 평균도 높고 accuracy가 0.31정도 되는걸 볼수있다.따라서, kNN에 대해 최적인 k라고 생각하고 사용하면 된다. 그렇게 하면 k-fold cross validation만 쓰면 되지 않을까?라고 생각할 수 있다.Cross validation만 쓰면 되는 거 아니야?안 된다. 왜 그럴까?60%...