평가 지표·연습 문제

F-beta 점수

문제 설명PROBLEM

preview

F-beta 점수

29번 F1 의 일반화. β 파라미터로 recall/precision 가중치 를 조절합니다:

Fβ=(1+β2)PRβ2P+RF_\beta = (1 + \beta^2) \, \frac{P \cdot R}{\beta^2 P + R}

  • β = 1 → 표준 F1 (P/R 동등)
  • β > 1recall 을 더 중시 (예: 암 진단 — 놓치면 안 됨)
  • β < 1precision 을 더 중시 (예: 스팸 필터 — 오경보 최소화)

β=2β = 2 의 F2 는 정보 검색, 생물정보학에서 자주 사용.

과제

함수 f_beta(y_pred, y_true, beta) 를 완성하세요.

  • 이진 {0, 1}.
  • 반환: Python float.
  • 분모 0 방어.

테스트 케이스

#이름검증
1β=1 == F1sklearn F1 과 일치
2완벽 → 1.0
3β=2 는 recall 선호P=0.5, R=1 인 모델이 F2 > F1
4β=0.5 는 precision 선호P=1, R=0.5 인 모델이 F0.5 > F1
5sklearn fbeta 일치무작위 입력
개념 노트와 실수 포인트

평가 지표

  • ⚠️ 정확도는 클래스 불균형에 약함(99% 음성이면 다 음성 찍어도 99%).
  • 정밀도(예측한 양성 중 진짜) vs 재현율(실제 양성 중 잡은 것) 트레이드오프, F1=조화평균.