12. 정리: 개발/테스트 데이터셋 구성
앞으로 모델에 유입될 것으로 예상되고 모델이 잘 동작하기를 희망하는 데이터의 특성을 반영한 데이터 분포로 초기 개발/테스트 데이터셋을 구성하십시오. 이 개발/테스트 데이터셋는 실제 학습 데이터 분포와 같지 않을 수 있습니다.
가능한 같은 데이터 분포를 갖는 개발/테스트 데이터셋을 구성하십시오.
최적화해야 할 단일 숫자 평가 지표를 선정하십시오. 목표 지표가 여러 개인 경우, 여러 오차 지표의 평균을 내는 것과 같이 공식을 정의하여 여러 지표를 단일화하거나 만족 지표와 최적화 지표를 정의하는 방식으로 고려하십시오.
기계 학습은 상당히 반복적인 프로세스입니다. 만족스러운 결과를 찾기까지 수십 가지 아이디어를 시도할 수 있습니다.
개발/테스트 데이터셋과 단일 평가 지표1를 사용하면 알고리즘을 신속하게 평가할 수 있고, 기계학습 프로세스를 더 빨리 반복할 수 있습니다.
새로운 응용 분야를 시작할 때, 개발/테스트 세트와 하나의 평가 지표를 신속하게(1주일 이내) 설정하십시오. 이런 작업이 성숙한 분야에서는 더 오래 걸리기도 합니다.
학습/테스트 데이터셋을 70:30 비율로 나누는 오래된 관례는 많은 데이터를 확보하고 있는 곳에서는 적합하지 않습니다. 개발/테스트 데이터셋은 전체 데이터의 30% 미만일 수 있습니다.
개발 데이터셋은 알고리즘의 정확도 변화를 감지할 정도로 커야 합니다. 그러나 지나치게 클 필요는 없습니다. 테스트 데이터셋은 시스템의 모델 성능 평가에 신뢰도를 확보할 정도의 규모여야 합니다.
개발 데이터셋와 평가 지표가 더 이상 올바른 방향을 제시하지 못한다면, 신속하게 변경하십시오.(i)모델이 개발 데이터셋에 과적합 되어 있다면 더 많은 개발 데이터셋를 확보하십시오. (ii)실제 대상 데이터셋과 개발/테스트 데이터셋의 분포와 서로 다르다면, 새로운 개발/테스트 데이터셋을 만드십시오. (iii)모델의 평가 지표가 더 이상 핵심 목표와 정확하게 평가하지 못한다면, 측정 항목을 변경하십시오.
이 문서는 Andrew NG 교수님께서 집필 중인 Machine Learning Yearning의 12장 번역입니다. 원제는 “12. Takeaways: Setting up development and test sets” 입니다. 원문 Ebook은 http://www.mlyearning.org [↗NW] 에서 내려받을 수 있습니다.
- <역자주> Matrix를 “평가 지표“와 “평가 항목“으로 구분하여 번역하였습니다. “평가 지표“는 평가 공식을 통해서 단일 숫자 평가 지표로 만들어진 결과 값을 의미합니다. “평가 항목“은 평가 공식에 입력되는 평가 요소를 의미합니다. 모델을 평가하는 두 개의 수치인 “정밀도(Precision)“와 “재현률(Recall)“이 있을 때, 두 수치의 조화 평균을 단일 평가 지표로 정의한다면, “정밀도(Precision)“와 “재현률(Recall)“은 “평가 항목“이되고, 조화평균은 “평가 지표“가 됩니다. [return]