실무자들과 대화를 하며 문제를 발견한다.
문제와 관련된 데이터를 발견한다.
데이터 처리, 시각화, 머신러닝 및 통계
데이터 문제 해결을 통해 실무자들과 함께 해결.
지도학습(Supervised Learning)에서는 예측할 타겟을 먼저 정한다.
이산형, 순서형, 범주형 타겟 특성도 회귀문제 또는 다중클래스분류 문제로도 볼 수 있다.
회귀나 다중클래스 분류 문제들도 이진분류로 바꿀 수 있다.
위의 경우 정보의 누수가 일어나 과적합을 일으키고 실제 테스트 데이터에서 성능이 급격하게 떨어진다.
sklearn에서 train_test_split
이라는 method를 제공해주긴하지만 해당 method는 random subset을 만들어주는 방법이기 때문에 현실에서 사용하기에는 한계점들이 많다.
How (and why) to create a good validation set
데이터가 Time Series인 경우, 예측하고자 하는 날의 데이터를 살펴보면 굳이 머신러닝을 사용할 필요가 없기도 하고 많은 비즈니스 맥락에서 시간열 데이터를 자주 사용하지 않는다고 한다. 또한 내가 예측하고자 하는 데이터가 내가 가지고 있는 훈련 검증 세트와 질적으로 다르다면 train_test_split
가 유용하지 않을 것이다.
sklearn이 검증세트도 나누는 method가 없는 이유는 cross-validation을 할 것이라고 가정하기 때문이다. 하지만 cross-validation의 문제는 실제 문제에 적용하기 어렵다는 점에 있다. cross-validation은 데이터를 랜덤으로 뽑을 수 있는 경우에 유용하다.
훈련/ 검증/ 테스트 세트의 역할