Python knn.score参数说明
在下面的代码(最后一行)中,使用X_测试和y_测试,根据文档: 返回给定测试数据和标签的平均精度 问题是,由于Python knn.score参数说明,python,scikit-learn,knn,Python,Scikit Learn,Knn,在下面的代码(最后一行)中,使用X_测试和y_测试,根据文档: 返回给定测试数据和标签的平均精度 问题是,由于X_测试具有来自测试数据的数据,而y_测试具有这些数据的标签,因此具体计算了什么 检查预测标签与实际标签是有意义的 你能告诉我最后一行中第一个场景是如何工作的吗 X_train, X_test, y_train, y_test = train_test_split(iris_dataset['data'], iris_dataset['target'], random_state=0)
X_测试
具有来自测试数据的数据,而y_测试
具有这些数据的标签,因此具体计算了什么
检查预测标签与实际标签是有意义的
你能告诉我最后一行中第一个场景是如何工作的吗
X_train, X_test, y_train, y_test = train_test_split(iris_dataset['data'], iris_dataset['target'],
random_state=0)
knn = KNeighborsClassifier(n_neighbors=1)
knn.fit(X_train, y_train)
print("Test set score: {:.2f}".format(knn.score(X_test, y_test)))
如果您选中以下选项:
后面发生了什么?
它是预测:knn.predict(X_检验)
,然后使用这些值计算knn.predict(X_检验)
和y_检验之间的平均精度。
您应该通过以下方式获得相同的输出:
Parameters:
X : array-like, shape = (n_samples, n_features)
Test samples.
y : array-like, shape = (n_samples) or (n_samples, n_outputs)
True labels for X.
sample_weight : array-like, shape = [n_samples], optional
Sample weights.
Returns:
score : float
Mean accuracy of self.predict(X) wrt. y.
from sklearn.metrics import accuracy_score
y_predict = knn.predict(X_test)
accuracy_score(y_test, y_predict)