1부 딥러닝의 기초
4장 머신 러닝의 기본 요소
4.2 머신 러닝 모델 평가
훈련, 검증, 테스트 세트
모델 평가의 핵심은 가용한 데이터를 항상 훈련, 검증, 테스트 3개의 세트로 나누는 것
훈련 세트 - 모델 훈련 / 검증 세트 - 모델 평가 / 테스트 세트 - 출시 준비가 완료된 모델을 최종적으로 딱 한 번 테스트
3개로 나누는 이유는 모델을 개발할 때 항상 모델의 설정을 튜닝하기 때문
정보 누설
검증 세트의 모델 성능에 기반하여 모델의 하이퍼파라미터를 조정할 때마다 검증 데이터에 관한 정보가 모델로 새는 것
이를 막기 위해 검증 세트와 테스트 세트를 구분
단순 홀드아웃 검증
데이터의 일정량을 테스트 세트로 떼어놓음.
남은 데이터에서 훈련하고 테스트 세트로 평가함.
정보 누설을 막기 위해 테스트 세트로 모델을 튜닝하면 안됨.
단점 : 데이터가 적을 때 검증 세트와 테스트 세트의 샘플이 너무 적어 주어진 전체 데이터를 통계적으로 대표하지 못할 수 있음.
이러한 단점을 해결하기 위해 K-겹 교차 검증과 반복 K-겹 교차 검증이 나옴.
K-겹 교차 검증
데이터를 동일한 크기를 가진 K개로 분할
각 분할 i에 대해 남은 K-1개의 분할로 모델을 훈련하고 분할 i에서 모델을 평가
최종 점수는 이렇게 얻은 K개의 점수를 평균
이 방법은 모델의 성능이 데이터 분할에 따라 편차가 클 때 도움이 됨.
3-겹 교차 검증
반복 K-겹 교차 검증
셔플링을 사용하며 비교적 가용 데이터가 적고 가능한 정확하게 모델을 평가하고자 할 때 사용
K-겹 교차 검증을 여러 번 적용하되 K개의 분할로 나누기 전에 매번 데이터를 무작위로 섞음.
최종 점수는 모든 K-겹 교차 검증을 실행해서 얻은 점수의 평균이 됨.
많이 하면 비용이 매우 많이 듦.
평가 방식을 선택할 때 유의해야 하는 사항
- 대표성 있는 데이터
훈련 세트와 테스트 세트가 주어진 데이터에 대한 대표성이 있어야 함.
훈련 세트와 테스트 세트로 나누기 전에 데이터를 무작위로 섞는 것이 일반적 - 시간의 방향
과거로부터 미래를 예측하고자 할 때 데이터를 분할하기 전에 무작위로 섞으면 안됨.
훈련 세트에 있는 데이터보다 테스트 세트에 있는 모든 데이터가 미래의 것이어야 함. - 데이터 중복
한 데이터셋에 어떤 데이터 포인트가 두 번 등장하면, 데이터를 섞고 훈련 세트와 검증 세트로 나누었을 때 훈련 세트와 검증 세트에 데이터 포인트가 중복될 수 있음.
따라서 훈련 세트와 검증 세트가 중복되지 않는지를 꼭 확인해야 함.
'MLOps 프로젝트 > 도서 '케라스 창시자에게 배우는 딥러닝'' 카테고리의 다른 글
1부 4.4 과대적합과 과소적합 (0) | 2021.08.31 |
---|---|
1부 4.3 데이터 전처리, 특성 공학, 특성 학습 (0) | 2021.08.31 |
1부 4.1 머신 러닝의 네 가지 분류 (0) | 2021.08.30 |
1부 3.6 주택 가격 분류: 회귀 문제 (0) | 2021.08.29 |
1부 3.5 뉴스 기사 분류: 다중 분류 예제 (0) | 2021.08.29 |