始める無料で始める

RNN分類モデルの評価

PyBooksのチームは、Newsgroupデータセットを使って作成・実行したRNNモデルを評価してほしいと考えています。目的は、記事を次の3つのカテゴリのいずれかに分類することでした。

rec.autossci.medcomp.graphics

モデルはすでに学習済みで、各エポックの損失を出力しました。

torchmetricsを使って、モデルのさまざまな指標を評価してください。以下が読み込まれています:AccuracyPrecisionRecallF1Score

前の演習で学習したrnn_modelのインスタンスも事前に用意されています。

この演習はコースの一部です

PyTorch で学ぶテキストの Deep Learning

コースを見る

演習の手順

  • 複数クラス分類向けに、各メトリクスのインスタンスを作成し、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))
コードを編集して実行