Choose your ML problems
- 초콜릿 바 평점 데이터세트 사용
1 |
|
데이터 과학자 실무 프로세스
- 비즈니스 문제
- 실무자들과 대화를 통해 문제를 발견
- 데이터 문제
- 문제와 관련된 데이터를 발견
- 데이터 문제 해결
- 데이터 처리, 시각화
- 머신러닝/통계
- 비즈니스 문제 해결
- 데이터 문제 해결을 통해 실무자들과 함께 해결
- 캐글 대회를 수행은 여러 모델을 검증해보며 기술을 익히는데 훌륭한 방법이지만 이 과정도 데이터 과학 업무의 한 부분이다.
- 문제정의과정은 누군가에 의해 정해져 있었고 기술적으로 데이터로의 문제해결에만 집중했다.
Choose Target
- 지도학습에서는 예측해야하는 타겟을 명확히 정하고 그 분포를 살펴본다.
- 어떤 문제는 회귀/분류가 쉽게 구분되지 않는다.
- 이산형, 순서형, 범주형 타겟특성도 회귀문제 또는 다중클래스분류문제로 볼 수 있다.
- 회귀, 다중클래스분류 문제들도 이진분류문제로 바꿀 수 있다.
1 |
|
1 |
|
1 |
|
1 |
|
정보의 누수(Leakage) 확인
- 모델을 만들고 평가했을 때 예측을 100% 가깝게 잘 하는 경우를 보게 된다.
- 이 때 정보의 누수가 존재할 가능성이 크다.
- 타겟변수 외의 예측시점에 사용할 수 없는 데이터가 포함되어 학습
- 훈련데이터와 검증데이터를 분리하지 못한 경우
- 정보의 누수가 일어나 과적합을 일으키고 실제 테스트 데이터에서 성능이 급격히 떨어진다.
1 |
|
1 |
|
문제에 적합한 평가지표 선택
- 예측모델 평가는 문제의 상황에 따라 다르다. 특히, 분류 & 회귀 모델의 평가지표는 더욱 다르다.
- 분류문제에서 타겟 클래스 비율이 70% 이상 차이날 경우 정확도만 사용하면 판단을 정확히 할 수 없다.
- Precision, Recall, ROC curve, AUC 등을 같이 사용해야 한다.
1 |
|
1 |
|
불균형 클래스
- 타겟 특성의 클래스 비율이 차이가 나는 경우가 많다.
- Scikit-learn 분류기들은
class_weight
같은 클래스의 밸런스를 맞추는 파라미터를 갖고 있다.- 데이터가 적은 범주의 손실을 계산할 때 가중치를 곱하여 데이터의 균형을 맞추거나
- 적은 범주 데이터를 추가샘플링(Oversampling)하거나 반대로 많은 범주 데이터를 적게 샘플링(Undersampling)하는 방법이 있다.
1 |
|
- 완화되었다.
1 |
|
타겟의 분포
- 회귀문제에서 타겟 분포를 주의깊게 살펴야한다.
1 |
|
비대칭 형태인지 확인
- 선형회귀모델은 일반적으로 특성과 타겟간의 선형관계를 가정한다.
- 특성 변수들과 타겟변수의 분포가 정규분포일때 좋은 성능을 보인다.
- 타겟변수가 왜곡된 형태의 분포(skewed)일때 예측 성능에 부정적인 영향을 미친다.
- 등분산성
- 분산이 같다는 것이고, 특정한 패턴없이 고르게 분포했다는 의미
- 등분산성의 주체는 잔차
1 |
|
1 |
|
로그변환(Log-Transform)
- 로그변환 사용 시 비대칭 분포형태를 정규분포형태로 변환시켜준다.
1 |
|
Transformed TargetRegressor
1 |
|