例如 -
X = iris.data
y = iris.target
from sklearn.nighbors import KNeighborsClassifier
knn = KNeighborsClassifier()
knn.fit(X,y)
pred = knn.predict([3,5,4,2])
print(pred)
输出:[2] ...这里2代表一个类值 如何计算此预测的准确性?
答案 0 :(得分:1)
如果您的意思是概率而不是准确性,因为您无法在单点计算准确度。
而不是
pred = knn.predict([3,5,4,2])
使用
pred = knn.predict_proba([3,5,4,2])
它应该给你属于类的数据点的概率。
如果您正在寻找整体模型准确性,可以进行交叉验证。
from sklearn.neighbors import KNeighborsClassifier
from sklearn.metrics import cross_val_score
from sklearn import datasets
iris = datasets.load_iris()
X = iris.data
y = iris.target
knn = KNeighborsClassifier()
scores = cross_val_score(knn, X, y, cv=10)
print(score.mean())
输出
0.96666666666666679