سلام. من برای محاسبه متریک های precision و recall در کدم با کراس از classification_report استفاده کردم ولی در نتیجه جواب درستی دریافت نمیکنم و لیبل دیتام رو انگار نمیشناسه، من از یک دیتای دو کلاسه استفاده میکنم و دارای لیبل های 0 و 1 هست. میشه بهم بگین مشکل کجاست؟ و چرا اینجوره؟ به جای classification_rport ایا راه دیگه ای برای محاسبه این متریک ها هست؟ کد:
targets = ['0', '1']
predictions = model.predict(X_Test, batch_size=32)``
print(classification_report(Y_Test.argmax(axis=1), predictions.argmax(axis=1), target_names=targets, digits=4))
Accuracy = accuracy_score(Y_Test, predictions.round(), normalize = True)
print("Accuracy: %.2f%%" % (Accuracy * 100.0))
نتیجه:
acc: 67.83%
precision recall f1-score support
0 1.0000 1.0000 1.0000 2008
avg / total 1.0000 1.0000 1.0000 2008
Accuracy: 67.83%
/usr/local/lib/python3.6/dist-packages/sklearn/metrics/classification.py:1428: UserWarning: labels size, 1, does not match size of target_names, 2
.format(len(labels), len(target_names))