threshold는 어떻게 정해야 할까? 개인적인 간단한 생각
2019. 5. 4. 23:52ㆍ관심있는 주제/분석 고려 사항
우리가 어떤 모델링을 하고 나오는 값은 결국 확률 값으로 나오게 된다.
보통은 argmax 나 max f1 , 대충 0.5 같은 기준을 통해서 예측 타깃 값을 구한 다음
Confusion Matrix를 구해서 Accuracy 도 보고 Recall , Precision 같은 것을 확인해서 모델을 평가하게 된다.
그러면 이러한 기준이 되는 threshold(=cut off)는 어떻게 정해야 할까?
- 최근 겪고 있는 문제는 데이터가 imbalance 할 때 모델의 확률 값을 봤을 때 0의 경우에는 확실히 0이지만 1인 경우에는 0.01 ~ 0.001 이러한 부근에 있다.
- 보통 이러한 cut off 문제를 완화하기 위해 추천하는 방법은 undersampling, oversampling, sensitive cost function(f1,misclassification) , change model(gbm이 좋다고 한다) , add new feature , cross validation ,으로 애초에 cut off를 높게 잡을 수 있게 모델 성능을 높이는 방법이 있다.
- 만약 별 짓 다해도 cut off가 낮다면, 이럴 때 우리는 cut off를 0.005 이런 식으로 줘도 되는 걸까?
- 과연 이것이 납득이 되게 할 수 있을까?
이렇게 데이터의 불균형 때문이기라기보다 모델 자체의 성능이 아쉬워서 그런 것일 수도 있지만,
만약 고정된 모델 안에서 해야 할 때 이런 것들에 대해서 어떻게 하면 상대방을 잘 설득할지가 참 애매한 것 같다.
그래서 결국 결론은 이렇게 나왔을 때는 타당성을 잘 밝히도록 해야 한다.
왜 이런 불균형이 발생하게 되고, 왜 이렇게 밖에 나올 수 없는지?
나는 아직 실력이 부족해서 잘 모르겠다...
결국 말을 잘 해서 상대방을 납득시켜야 하는 방법 뿐이라면.... 책을 읽자!
728x90
'관심있는 주제 > 분석 고려 사항' 카테고리의 다른 글
어떻게 언제 왜 Normalize Standardize Rescale 해주는지??! (3) | 2019.05.18 |
---|---|
Overfit? or dissimilar train and test? (medium 번역 및 생각) (2) | 2019.05.08 |
Feature engineering ( 글 리뷰 및 내 생각 ) (0) | 2019.05.06 |
Design Thinking에 대하여 (0) | 2019.05.06 |
Andrew NG Regularization 중 인상깊었던 것만 (0) | 2019.05.04 |