강의

멘토링

커뮤니티

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

liob_reverse님의 프로필 이미지
liob_reverse

작성한 질문수

[개정판] 파이썬 머신러닝 완벽 가이드

F1 Score와 ROC-AUC 이해 - 02

ROC커브질문입니다.

작성

·

281

0

ROC 커브 부분에서

Threshold 값이 1.965...값을 갖는 경우가 나왔습니다.

같은 파라미터로 precision_recall_curve는 정상적으로

0 ~ 1사이로 값을 갖는데 왜 이러는건지 모르겠습니다.

참고로 sklearn버전은 0.23.1입니다..

sklearn 이전 버전 documetation을 봐도 내용은

아래와 같이 동일한데요

(0번째값은 의미없는 값을 갖는거 같습니다.)

Decreasing thresholds on the decision function used to compute fpr and tpr. thresholds[0] represents no instances being predicted and is arbitrarily set to max(y_score) + 1.

그런데,

max(y_score)+1이면 무조건 1보다 커야하는데

왜 강의 및 documentation 예제는 0.xx값을 갖는 걸까요...?

답변 1

0

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까,

말씀하신대로(그리고 문서에 나와있는대로) thresholds[0](즉 thresholds 배열에서 첫번째 값) 의미 없는 값을 가집니다. max(y_score) + 1 값을 가지는데 y_score는 예측값(또는 예측 확률) 입니다. 

threshold만 그렇습니다. fpr, tpr은 아무렇지 않으므로 큰 영향이 없습니다.

그런데 질문 중에 아래 내용을 이해하지 못했습니다. 말씀하신 대로 max(y_score) + 1은 무조건 1보다 커야 하고, 그래서 강의와 documentation 예제 모두 thresholds[0]은 1보다 큽니다.  예제에서 어떤 부분이 0.xx를 가졌는지 말씀해 주시면 보다 상세하게 답변이 가능할 것 같습니다. 감사합니다.

'max(y_score)+1이면 무조건 1보다 커야하는데

왜 강의 및 documentation 예제는 0.xx값을 갖는 걸까요...?'

liob_reverse님의 프로필 이미지
liob_reverse

작성한 질문수

질문하기