評估 RNN 分類模型
PyBooks 的團隊現在希望你評估先前以 Newsgroup 資料集建立並執行的 RNN 模型。回想一下,目標是將文章分類到下列三個類別之一:
rec.autos、sci.med、comp.graphics。
模型已完成訓練,且你已列印每個 epoch 的 loss。
請使用 torchmetrics 來評估模型的多項指標。以下指標已為你載入:Accuracy、Precision、Recall、F1Score。
上一題訓練完成的 rnn_model 實例也已預先載入,供你使用。
本練習屬於課程
Deep Learning for Text with 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))