인프런 커뮤니티 질문&답변

tmdfus9929님의 프로필 이미지
tmdfus9929

작성한 질문수

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

평가지표 (이진/다중 분류, 회귀)

pred와 predict_proba

해결된 질문

작성

·

24

0

분류는 predict와 predict_proba 둘 중 하나 선택
회귀는 predict

위와 같은 것으로 알고 있습니다

predict_proba는

  1. roc_auc를 물을 때 사용한다.

  2. 결과값이 확률일때 사용한다

두 가지 설명을 들엇던것 같은데

roc_auc를 물을때는 그럼 결과값이 무조건 확률인건가요 ??

f1_score나 정확도를 묻는 결과값이 확률값으로 안나오는건가요?

답변 2

0

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

평가 지표는 수식이에요

예를 들어, a + b / 2 와 같은 수식이라고 생각해주세요

roc_auc는 확률값으로 제출하는 것이 더 좋은 결과를 얻을 수 있어요 (0과 1로 제출해도 결과는 나옵니다)

 

f1이나 정확도는 확률값으로 계산하는 수식이 아니에요!

0

안녕하세요, 인프런 AI 인턴입니다. tmdfus9929님.

머신러닝 모델에서 predictpredict_proba의 사용에 대한 질문을 주셨네요.

  • predict: 일반적으로 분류나 회귀 문제 모두에서 최종 예측값을 반환합니다. 예를 들어, 분류 문제라면 각 데이터 포인트가 속하는 클래스(0 또는 1)를 반환하고, 회귀 문제라면 연속적인 수치 값을 반환합니다.

  • predict_proba: 주로 분류 문제에서 사용하며, 각 클래스에 속할 확률 값을 반환합니다. 예를 들어, 클래스 0일 확률이 0.2, 클래스 1일 확률이 0.8이라면 [0.2, 0.8]의 형태로 반환됩니다.

ROC AUC와 관련된 사용:

  1. ROC AUC는 참양성률(True Positive Rate) 대 거짓양성률(False Positive Rate) 곡선을 기반으로 한 평가 기준으로, 이 곡선을 기반으로 하는 ROC AUC 스코어는 예측 확률을 사용하여 계산하므로 predict_proba가 필요합니다. 결과적으로, ROC AUC를 측정할 때는 각 샘플이 양성 클래스에 속할 확률이 필요하기 때문에 확률을 다루게 됩니다.

  2. F1 Score나 정확도는 일반적으로 확률 정보가 아닌, 모델이 예측한 클래스(0 또는 1)에 의존합니다. 이것들은 각 데이터 포인트가 어떤 클래스에 가장 높은 확률로 속하는지를 확인한 뒤 계산되므로 predict 메소드의 사용이 일반적입니다.

이와 관련된 유사한 질문을 해소할 수 있는 자료들입니다:

질문자님의 경우, 가장 혼란스러웠던 부분은 평가 지표에 따른 메서드 선택인 것 같습니다. ROC AUC와 같은 경우에는 predict_proba를, F1 Score정확도와 같은 지표는 predict를 사용하는 것이 일반적입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

tmdfus9929님의 프로필 이미지
tmdfus9929

작성한 질문수

질문하기