質問: epoch_corrects.double() / len(test_dl.dataset) print('テストデータ{}個での正解率:{:.4f}'.format(len(test_dl.dataset),epoch_acc)) ```
回答: * 機械学習で実現しようとしているタスクは文書分類で * 機械学習モデルは学習済み * testのデータセットには正解のラベルがない そして、やりたいことは機械学習の分類結果だけ見る ということなので、 下記で、ラベルをデータセットから読み取るのをやめる > > > ``` > labels = batch.Label.to(device) # ラベル > > ``` > > 下記で、正解率を出すことをやめる ``` # 結果の計算 # 正解数の合計を更新 epoch_corrects += torch.sum(preds == labels.data) # 正解率 epoch_acc = epoch_corrects.double() / len(test_dl.dataset) ``` のが正しい対応だと思いました。 学習が終わっていれば正解データは不要で、また未知のデータであるので正解率も出すことができません。機械学習モデルが十分に汎化されていればtestのデータセットでもきちんと分類できているはずです。