Threshod
ML과 최적화에서 임계값 설정은 성능 향상과 공정성 등 다양한 목적을 위해 꼭 조정하는 요소
기본적인 0.5 임계값 대신 성능 지표 최적화, 비용 분석, 그룹 적응형 임계값 조정, 후처리 임계값 튜닝 등 다양한 기법이 존재하며, 이를 적절히 활용하여 모델의 예측 결정 성능을 크게 개선할 수 있음
머신러닝(ML)이나 최적화(optimization)에서 Threshold(임계값, 결정 임계점)은 중요한 역할을 함
이를 정하는 기법이나 테크닉과 이를 활용하는 방법에 대해 정리해 보자.
Threshold 정하는 기법(technician) 및 방법들
기본 임계값 설정
- 대부분의 분류 모델에서 기본적으로 사용하는 임계값은 0.5
- 예를 들어:
- 로지스틱 회귀나 신경망에서 출력하는 확률이 0.5 이상이면 양성 클래스,
- 미만이면 음성 클래스로 분류
성능 지표 기반 임계값 튜닝
- 정확도, 정밀도(precision), 재현율(recall), F1-score, ROC 곡선 아래 면적(AUC) 등과 같은 모델 성능 지표를 기준으로
임계값을 조정하여 최적화할 수 있음
- 예를 들어:
- 여러 임계값을 시도하면서 F1-score를 최대화하는 임계값을 채택하는 방식
- 이 과정은 보통 다음과 같이 진행:
1. 모델 학습 후 테스트 데이터에 예측 확률 출력
2. 가능한 임계값 후보들을 순회
3. 각 임계값에 대해 분류 결과 평가 지표 계산
4. 가장 좋은 성능을 내는 임계값 선택
Adaptive Thresholding (적응적 임계값) 기법
- 데이터 분포나 그룹 특성에 따라 임계값을 다르게 설정
- 예를 들어:
- 특정 집단이나 하위 데이터 그룹마다
최적의 임계값이 다를 수 있으므로 이를 반영하는 기법으로 더 공정(fair)하거나 강건(robust)한 분류를 수행할 수 있음
- 최근에는 개별 인스턴스 혹은 그룹 단위로 임계값을 학습하거나 최적화하는 기법도 제안되고 있음
임계값 최적화(Threshold Optimization)
- 임계값을 직접 최적화하는 알고리즘을 활용 하는 방법
- AUROC 최적화, 비용-이익 균형에 기반한 임계값 최적화, 회귀 불연속 디자인(Regression Discontinuity Design, RDD)
- 이미지 처리에서는 Otsu 방법, Kapur 엔트로피 등 통계적 분산이나 엔트로피를 최대/최소화하는 비모수 기법들이 임계값 결정에 사용
- 메타휴리스틱(metaheuristic) 알고리즘들도 최적 임계값 탐색에 활용
Threshold as a Post-processing Step (후처리 임계값 적용)
- 모델은 클래스 확률만 출력하고, 임계값은 별도의 후처리 단계에서 적용
- 임계값 변경이 유연해지며, 프로덕션 환경에서 임계값 튜닝이 쉬움
Threshold 활용 방법
임계값 이동(Threshold-moving, Threshold-tuning)
- 불균형 데이터셋에서 소수 클래스 예측을 개선하기 위해 임계값을 조정
- 초기 모델을 학습한 후, 테스트 데이터에 대해 여러 임계값을 시험해보고 최적 임계값을 찾음
- 이를 통해 소수 클래스의 재현율을 높일 수 있음
Trade-off 시각화
- 임계값에 따른 정밀도와 재현율, F1-score 등의 변화를 시각화하여 임계값 선택을 직관적으로 표현
- ROC 곡선, Precision-Recall 곡선 등을 활용
비용-효용 분석 기반 임계값 설정
- 임계값 결정 시 오탐(false positives)과 누락(false negatives)에 따른 비용과 효용을 고려해 임계값을 최적화
- 예를 들어:
- 의료 분야에서는 잘못된 진단에 따른 비용과 이득이 명확하므로 이를 수치화하여 임계값 설정
그룹별 임계값 최적화
- 특정 특성이나 그룹별로 임계값을 달리 설정하여 공정성(fairness)을 도모하거나 성능 편차를 줄임