10. 개발 데이터셋과 평가지표로 개발 순환 사이클 속도 향상
새로운 문제에 대하여 어떤 접근법이 가장 효과적인지를 미리 파악하는 것은 상당히 어렵습니다. 기계 학습 전문 연구자조차도 일반적으로 만족스러운 결과를 얻기까지 수집가지 아이디어를 시도해 봅니다. 기계 학습 시스템을 구축할 때 필자는 다음과 같은 절차로 작업을 수행합니다.
- 시스템 구축 방법에 대한 몇 가지 아이디어로 시작
- 코드로 아이디어를 구현
- 아이디어가 얼마나 잘하는지 실험. (보통 처음 몇 가지 아이디어는 작동하지 않습니다!)
- 이러한 학습 과정에서 더 많은 아이디어를 만들어 적용
- 이 과정을 반복
이와 같은 접근법은 반복적인 프로세스입니다. 이 반복을 빠르게 진행하면, 전체적인 진행 속도는 더 빨라집니다. 이것이 바로 개발 데이터셋와 테스트 데이터셋, 평가 지표가 중요한 이유입니다. 새로운 아이디어를 시도해 볼 때마다, 개발 데이터셋으로 이 새로운 시도의 성능을 측정하면, 올바른 방향으로 가고 있는지를 바로 확인할 수 있습니다.
반대로 개발 데이터셋과 평가 지표가 없다고 가정해 보겠습니다. 새로운 고양이 분류기를 개발할 때마다, 새 분류기를 앱에 통합하고 몇 시간 동안 앱을 사용한 후, 새로운 분류기의 개선 여부를 파악해야 합니다. 이와 같은 개발 프로세스는 너무너무 느립니다. 또한 분류기의 정확도를 95.0%에서 95.1%로 향상하는 경우, 앱을 사용하는 것으로는 0.1% 향상을 감지하지 못할 수도 있습니다. 그러나 시스템은 이런 0.1% 개선이 누적되어 발전합니다. 개발 데이터셋 및 측정 항목을 사용하면, 어떤 아이디어가 만드는 작은 (또는 큰) 성능 변화도 바로 감지할 수 있습니다. 이 아이디어를 더 고민하고 개선할 것인지, 아니면 이 아이디어를 폐기할 것인지를 바로 결정할 수 있습니다.
이 문서는 Andrew NG 교수님께서 집필 중인 Machine Learning Yearning의 10장 번역입니다. 원제는 “10. Having a dev set and metric speeds up iterations” 입니다. 원문 Ebook은 http://www.mlyearning.org [↗NW] 에서 내려받을 수 있습니다.