我想用朴素贝叶斯分类器对5个类别进行分类,我可以做,但我不能创建混淆矩阵。我研究了很多,但我找不到。这些是我的代码,请教我如何在这些代码上创建一个混淆矩阵:
nb_classifier = NaiveBayesClassifier.train(trainData)
print(accuracy(nb_classifier, testData))
#Output is 0.8152876648699048
print(nb_classifier.labels())
#Output is ['cat1', 'cat2', 'cat3', 'cat4', 'cat5']
答案 0 :(得分:0)
使用以下方法构建分类器可能是值得的。混淆矩阵也包括在内。
from sklearn.naive_bayes import MultinomialNB # or any other NB model
from sklearn.metrics import accuracy_score
from sklearn.metrics import confusion_matrix
nb_classifier = MultinomialNB()
nb_classifier.fit(X_train, y_train)
y_pred = nb_classifier.predict(X_test)
acc_score = accuracy_score(y_test, y_pred)
conf_mat = confusion_matrix(
y_test, y_pred, labels = ['cat1', 'cat2', 'cat3', 'cat4', 'cat5'])
print(acc_score)
print(conf_mat)