강의

멘토링

커뮤니티

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

lenamuto 님의 프로필 이미지
lenamuto

작성한 질문수

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

F1 Score와 ROC-AUC 이해 - 02

roc_auc_score관해 질문드립니다

작성

·

487

1

선생님 좋은강의 감사합니다

다른성능지표와는달리 roc score는 pedict_proba로 예측된 y_score를 쓰는데 다른지표(accuracy..precision score...)값들은 confusion행렬의 값에 기반해서 변환된 값이니 정확한 formular가 있어보이는데 roc score는 어떻게 연산되길래 확률값을 인자로 주는건지 궁금합니다

Roc score는 그래프아래의 적분값이지만 각각의 점들은  fpr 과 tpr에 기반한 값이니 pred 예측타겟값이 와도 되는게 아닐런지요

어떤 이유로 fpr 에 따른 tpr의 값이 결정되며 왜 y_pred가 아니라 y_score 확률값이 오는지 궁금합니다 어떤 가중치가 있나요?

또한 이건 좀 다른영역이긴 한데요..

F1값은 마치 recall 과 precision의 조화평균값 같은데 막연한 저의 추측 말고 이와관련한 통계학이나 가우시안분포나 특성함수 등등의 전공서적을 읽어두어야하는건지,어느정도의 이론배경이 필요한건지, 그냥 프레임워크의 운용만 배우면 되는건지 잘 모르겠습니다

제가 수학을 전공했는데 해석학이나 미분방정식등의 내용도 필요한건지요? 아님 회귀분석의 이론통계학을 좀더 심화해야하는지 고견을  청해봅니다

꼼꼼하신 강의 섬세한 집필에 성의가득한 내용에 늘 감사해요!

답변 1

0

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

안녕하십니까,

1. ROC AUC가 분류 결정 임계값(threshold)의 변화에 따른 fpr, tpr 값을 기반으로 하기 때문입니다.

만일 threshold가 0.5 이면 1일 확률이 0.7로 예측하면  1로 예측할 것이지만 Threshold가 0.8 이면 1일 확률을 0.7로 예측하면 결국 예측값은 0이 됩니다. 이렇게 threshold의 변화시키면서 값을 계산해야 하기 때문에 예측 확률이 필요하게 됩니다.

2. f1값을 적어주신대로 조화평균(조화로운 평균?) 정도로 이해하시면 어떨지요? precision, recall 중 어느 한 값이 극단으로 흐를 경우 penalty를 부여하기 위해서 일반 평균값을 개선한 식정도로 이해하면 좋을 것 같습니다.

수학과를 전공하셨기 때문에 수학적인 능력은 저보다도 뛰어나실 것 같습니다. 다만 머신러닝을 시작하신다면 어려운 기반 이론을 먼저 학습하시는 것 보다는 실제적으로 어떻게 적용되었는지 다양한 구현을 먼저 해보시는 게 더 빠르게 머신러닝을 학습하는 방법이라고 생각합니다. 그렇게 열심히 구현하시고 (가령 kaggle 문제를 10~20개 이상 끝까지 도전 해보신다면) 어느 정도 수준에 이르신다면 이제 전문적인 영역에서 뭐가 부족한지 스스로 깨닫게 되실 겁니다. 그 뒤에 말씀하신 전문 이론서에 도전하셔도 늦지 않을 것 같습니다.

강의에 대한 좋은 평가, 감사드립니다.

lenamuto 님의 프로필 이미지
lenamuto

작성한 질문수

질문하기