【发布时间】:2020-01-13 21:53:34
【问题描述】:
我正在运行一个朴素贝叶斯模型,可以打印我的测试准确度,但不能打印训练准确度
#import libraries
from sklearn.preprocessing import StandardScaler
from sklearn.naive_bayes import GaussianNB
from sklearn.svm import SVC
from sklearn import metrics
from sklearn.decomposition import PCA
#Naive Bayes model
gNB = GaussianNB()
gNB.fit(X_train, y_train)
nb_predict = gNB.predict(X_test)
print(metrics.classification_report(y_test, nb_predict))
accuracy = metrics.accuracy_score(y_test, nb_predict)
average_accuracy = np.mean(y_test == nb_predict) * 100
print("The average_accuracy is {0:.1f}%".format(average_accuracy))
#PRINTS The average_accuracy is 39.0%
#try to print training accuracy
print(metrics.classification_report(y_train, X_train))
accuracy = metrics.accuracy_score(y_train, X_train)
average_accuracy = np.mean(y_train == X_train) * 100
print("The average_accuracy is {0:.1f}%".format(average_accuracy))
当我尝试将用于测试准确度的代码用于训练准确度时,我收到训练准确度错误。
y_type 上的值不能超过一个 => 不再需要该集合
ValueError: Classification metrics can't handle a mix of multiclass and multiclass-multioutput targets
什么代码有效?
【问题讨论】:
标签: python classification naivebayes