12. 정리: 개발/테스트 데이터셋 구성

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] 에서 내려받을 수 있습니다.


  1. <역자주> Matrix를 “평가 지표“와 “평가 항목“으로 구분하여 번역하였습니다. “평가 지표“는 평가 공식을 통해서 단일 숫자 평가 지표로 만들어진 결과 값을 의미합니다. “평가 항목“은 평가 공식에 입력되는 평가 요소를 의미합니다. 모델을 평가하는 두 개의 수치인 “정밀도(Precision)“와 “재현률(Recall)“이 있을 때, 두 수치의 조화 평균을 단일 평가 지표로 정의한다면, “정밀도(Precision)“와 “재현률(Recall)“은 “평가 항목“이되고, 조화평균은 “평가 지표“가 됩니다. [return]
Last updated on 26 Dec 2018 / Published on 26 Dec 2018
김태완 avatar
작성자: 김태완
1999년 부터 Java, Framework, Middleware, SOA, DB Replication, Cache, CEP, NoSQL, Big Data, Cloud를 키워드로 살아왔습니다. 현재는 빅데이터와 Machine Learning을 중점에 두고 있습니다.
E-mail: taewanme@gmail.com

Powered by http://taewan.kim