RNN 분류 모델 평가하기
PyBooks 팀은 이제 여러분이 Newsgroup 데이터셋으로 만들고 실행한 RNN 모델을 평가해 주길 원해요. 목표는 기사를 다음 세 가지 범주 중 하나로 분류하는 것이었죠:
rec.autos, sci.med, comp.graphics.
모델은 이미 학습되었고, 각 에포크의 손실값을 출력했어요.
이제 torchmetrics를 사용해 모델의 다양한 성능 지표를 평가하세요. 다음 지표가 로드되어 있어요: Accuracy, Precision, Recall, F1Score.
이전 연습 문제에서 학습한 rnn_model 인스턴스도 미리 로드되어 있어요.
이 연습은 강의의 일부입니다
PyTorch로 배우는 텍스트 딥러닝
연습 안내
- 각 지표에 대해 다중 클래스 분류용 인스턴스를 만들고,
num_classes는 범주 수와 같게 지정하세요. - 테스트 데이터
X_test_seq를 사용해rnn_model의 예측값을 생성하세요. - 예측 클래스와 실제 레이블을 사용해 지표를 계산하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Create an instance of the metrics
accuracy = Accuracy(task="multiclass", ____)
precision = Precision(____, num_classes=____)
recall = Recall(task=____, num_classes=____)
f1 = F1Score(____, ____)
# Generate the predictions
outputs = ____(X_test_seq)
_, predicted = ____.____(outputs, 1)
# Calculate the metrics
accuracy_score = accuracy(____, y_test_seq)
precision_score = precision(____, y_test_seq)
recall_score = recall(____, y_test_seq)
f1_score = f1(____, y_test_seq)
print("RNN Model - Accuracy: {}, Precision: {}, Recall: {}, F1 Score: {}".format(accuracy_score, precision_score, recall_score, f1_score))