如何找出准确性?

问题描述 投票:4回答:4

我想知道sklearn中是否有一个功能对应于准确度(实际和预测数据之间的差异)以及如何将其打印出来?

from sklearn import datasets 
iris = datasets.load_iris()
from sklearn.naive_bayes import GaussianNB
naive_classifier= GaussianNB()
y =naive_classifier.fit(iris.data, iris.target).predict(iris.data)
pr=naive_classifier.predict(iris.data)
python scikit-learn naivebayes
4个回答
8
投票

scikit中的大多数分类器都有内置的score()函数,您可以在其中输入X_test和y_test,它将为该估计器输出适当的度量。对于分类估计,它主要是'mean accuracy'

此外sklearn.metrics有许多功能可以输出不同的指标,如accuracyprecisionrecall等。

对于您的具体问题,您需要accuracy_score

from sklearn.metrics import accuracy_score
score = accuracy_score(iris.target, pr)

3
投票

你可以使用accuracy_score,找到文档here

像这样实施 -

from sklearn.metrics import accuracy_score
accuracy = accuracy_score(prediction, labels_test)

这将返回一个浮点值。浮点值描述(正确分类的点数)/(测试集中的总点数)


0
投票

对于分类问题,请使用“metrics.accuracy_score”,使用“metrics.r2_score”进行回归。


0
投票

您必须从sklearn.metrics导入accuracy_score。它应该如下所示,来自sklearn.metrics import accuracy_score print accuracy_score(预测,测试标签集)

准确度的公式是正确分类的点数/测试集中的所有点

© www.soinside.com 2019 - 2024. All rights reserved.