1. 학습
  2. /
  3. 강의
  4. /
  5. Keras로 배우는 언어 모델링을 위한 순환 신경망(RNN)

Connected

연습 문제

Precision-Recall 트레이드오프

분류 작업을 할 때 Precision-Recall 트레이드오프라는 용어를 자주 보게 돼요. 이 말은 어디에서 온 걸까요?

보통은 확률이 가장 높은 클래스로 문서를 할당합니다. 그런데 최댓값이 0.1이라면 어떨까요? 해당 문서가 어떤 클래스에 속할 확률이 10%에 불과한데, 그래도 그 클래스로 간주해야 할까요?

정답은 문제에 따라 달라집니다. 분류를 받아들이기 위한 최소 임계값을 두는 방식이 가능하고, 임계값을 조정하면 precision과 recall 값이 서로 반대 방향으로 움직여요.

변수 y_true와 모델 model은 로드되어 있습니다. 또한, 확률이 임계값보다 낮으면 문서는 DEFAULT_CLASS(클래스 2로 지정)에 할당돼요.

지침

100 XP
  • .predict() 메서드를 사용해 각 클래스의 확률을 구하고 pred_probabilities 변수에 저장하세요.
  • 최댓 확률이 0.5 이상일 때만 받아들이고, 그 결과를 y_pred_50 변수에 저장하세요.
  • 임계값을 0.8로 했을 때도 동일하게 처리하도록 np.argmax()와 np.max() 함수를 사용하세요.
  • 모든 지표가 담긴 trade_off 변수를 출력하세요.