BigData
roc_curve와 roc_auc_score는 각각 언제 사용할까?
Lcoding
2024. 10. 31. 08:51
반응형
안녕하세요, 오늘은 모델 성능평가와 관련하여 roc_curve와 roc_auc_score의 차이에 대하여 알아보겠습니다.
roc_curve와 roc_auc_score는 둘 다 분류 모델의 성능을 평가하는 데 사용되지만, 서로 다른 정보를 제공합니다. 이 둘의 사용처와 역할을 비교하면 다음과 같습니다.
1. roc_curve
- 정의: roc_curve는 다양한 분류 임곗값(threshold)에 대해 **True Positive Rate (TPR, 재현율)**와 **False Positive Rate (FPR)**를 계산하여 ROC (Receiver Operating Characteristic) 곡선을 생성하는 함수입니다.
- 사용처:
- 모델의 성능을 시각적으로 평가하고 싶을 때 유용합니다.
- 임곗값에 따라 TPR과 FPR이 어떻게 변하는지를 직접 확인할 수 있어, 모델이 임곗값에 따라 분류 성능이 어떻게 변하는지 분석하고자 할 때 사용합니다.
- 특히, 임곗값을 최적화하여 특정 TPR이나 FPR을 달성하고 싶은 경우에 도움이 됩니다.
2. roc_auc_score
- 정의: roc_auc_score는 ROC 곡선 아래 면적(AUC, Area Under the Curve)을 계산해 하나의 숫자로 모델 성능을 요약해줍니다. AUC 값은 0.5에서 1 사이로 나타나며, 1에 가까울수록 성능이 좋은 모델임을 의미합니다.
- 사용처:
- 모델의 성능을 간단히 수치로 요약하고 싶을 때 사용합니다.
- 다양한 모델 간 정량적인 성능 비교가 필요할 때 유용합니다. 예를 들어, 여러 모델의 AUC를 비교해 가장 성능이 좋은 모델을 선정하는 데 사용할 수 있습니다.
- AUC는 ROC 곡선의 모든 임곗값을 고려한 성능 지표이므로, 모델의 전반적인 성능을 종합적으로 평가할 때 적합합니다.
정리
- roc_curve는 임곗값별 모델 성능 변화를 시각적으로 분석하는 데 유용하고, roc_auc_score는 모델의 전반적인 성능을 하나의 값으로 요약하여 비교할 때 적합합니다.
반응형