我在尝试预测结果时遇到了一个错误。我的完整代码如下,并且我还附上了一张截图。
from sklearn.preprocessing import LabelBinarizerfrom sklearn.metrics import classification_reportbb = LabelBinarizer()train_y = bb.fit_transform(train_y)test_y = bb.transform(test_y)predictions = model.predict(test_x, batch_size=32)print(classification_report(test_y.argmax(axis=1), predictions.argmax(axis=1), target_names = bb.classes_))
错误:TypeError: object of type ‘numpy.int64’ has no len()
回答:
您的类名需要是字符串。我建议(暂时)将最后一行更改为:
class_names = ['Class '+str(i) for i in bb.classes_]print(classification_report(test_y.argmax(axis=1), predictions.argmax(axis=1), target_names = class_names))