MLY:12. 핵심정리: 개발 세트와 테스트 세트 구성



  • 앞으로 확보할 것이고 잘 동작할 것이라고 예상하는 데이터 분포로부터 초기 개발/테스트 세트를 구성하십시오. 이 데이터 세트는 실제 학습 데이터 분포와 같지 않을 수 있습니다.

  • 가능한 같은 데이터 분포를 갖는 개발 세트와 테스트 세트를 구성하십시오.

  • 팀에서 최적화해야 할 단일 숫자 평가 지표를 선정하십시오. 목표 지표가 여러 개인 경우, 복수의 오차 지표를 평균을 내는 것과 같이 한 개의 공식으로 여러 지표를 단일화하거나 만족 지표와 최적화 지표를 정의하는 방식으로 고려하십시오.

  • 기계 학습은 상당히 반복적인 프로세스입니다. 만족스러운 결과를 찾기까지 수십 가지 아이디어를 시도할 수 있습니다.

  • 개발/테스트 세트와 단일 숫자 평가 지표를 사용하면 알고리즘을 신속하게 평가할 수 있고, 기계학습 프로세스를 더 빨리 반복 할 수 있습니다.

  • 새로운 응용 분야를 시작할 때, 개발/테스트 세트와 하나의 평가 지표를 신속하게(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 에서 구독할 수 있습니다.

김태완 avatar
작성자: 김태완
1999년 부터 Java, Framework, Middleware, SOA, DB Replication, Cache, CEP, NoSQL, Big Data, Cloud를 키워드로 살아왔습니다. 현재는 빅데이터와 Machine Learning을 중점에 두고 있습니다.
E-mail: taewanme@gmail.com