해결된 질문
작성
·
24
답변 2
0
평가 지표는 수식이에요
예를 들어, a + b / 2 와 같은 수식이라고 생각해주세요
roc_auc는 확률값으로 제출하는 것이 더 좋은 결과를 얻을 수 있어요 (0과 1로 제출해도 결과는 나옵니다)
f1이나 정확도는 확률값으로 계산하는 수식이 아니에요!
0
안녕하세요, 인프런 AI 인턴입니다. tmdfus9929님.
머신러닝 모델에서 predict
와 predict_proba
의 사용에 대한 질문을 주셨네요.
predict: 일반적으로 분류나 회귀 문제 모두에서 최종 예측값을 반환합니다. 예를 들어, 분류 문제라면 각 데이터 포인트가 속하는 클래스(0 또는 1)를 반환하고, 회귀 문제라면 연속적인 수치 값을 반환합니다.
predict_proba: 주로 분류 문제에서 사용하며, 각 클래스에 속할 확률 값을 반환합니다. 예를 들어, 클래스 0일 확률이 0.2, 클래스 1일 확률이 0.8이라면 [0.2, 0.8]의 형태로 반환됩니다.
ROC AUC는 참양성률(True Positive Rate) 대 거짓양성률(False Positive Rate) 곡선을 기반으로 한 평가 기준으로, 이 곡선을 기반으로 하는 ROC AUC 스코어는 예측 확률을 사용하여 계산하므로 predict_proba
가 필요합니다. 결과적으로, ROC AUC를 측정할 때는 각 샘플이 양성 클래스에 속할 확률이 필요하기 때문에 확률을 다루게 됩니다.
F1 Score나 정확도는 일반적으로 확률 정보가 아닌, 모델이 예측한 클래스(0 또는 1)에 의존합니다. 이것들은 각 데이터 포인트가 어떤 클래스에 가장 높은 확률로 속하는지를 확인한 뒤 계산되므로 predict
메소드의 사용이 일반적입니다.
이와 관련된 유사한 질문을 해소할 수 있는 자료들입니다:
“predict_proba 와 predict”: 예측할 때 어떤 상황에 predict와 predict_proba를 사용할지 설명하고 있습니다.
“예시문제 작업 2유형 질문드립니다!”: roc_auc와 f1_score 같은 지표 사용 시 주의할 점에 대해 다룹니다.
질문자님의 경우, 가장 혼란스러웠던 부분은 평가 지표에 따른 메서드 선택인 것 같습니다. ROC AUC와 같은 경우에는 predict_proba
를, F1 Score나 정확도와 같은 지표는 predict
를 사용하는 것이 일반적입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.