python 观察具有不同k值的训练和测试集的准确度分数如何不同

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 观察具有不同k值的训练和测试集的准确度分数如何不同相关的知识,希望对你有一定的参考价值。

# Setup arrays to store train and test accuracies
neighbors = np.arange(1, 9)
train_accuracy = np.empty(len(neighbors))
test_accuracy = np.empty(len(neighbors))

# Loop over different values of k
for i, k in enumerate(neighbors):
    # Setup a k-NN Classifier with k neighbors: knn
    knn = KNeighborsClassifier(n_neighbors=k)

    # Fit the classifier to the training data
    knn.fit(X_train, y_train)
    
    #Compute accuracy on the training set
    train_accuracy[i] = knn.score(X_train, y_train)

    #Compute accuracy on the testing set
    test_accuracy[i] = knn.score(X_test, y_test)

# Generate plot
plt.title('k-NN: Varying Number of Neighbors')
plt.plot(neighbors, test_accuracy, label = 'Testing Accuracy')
plt.plot(neighbors, train_accuracy, label = 'Training Accuracy')
plt.legend()
plt.xlabel('Number of Neighbors')
plt.ylabel('Accuracy')
plt.show()

以上是关于python 观察具有不同k值的训练和测试集的准确度分数如何不同的主要内容,如果未能解决你的问题,请参考以下文章

python 用弹性大小的X,Y分别计算训练/测试集的准确性

相同训练测试集的 ANN 不同结果

监督分类:绘制不同样本大小和 k 值的 K-NN 精度

sklearn:计算测试数据集上k-means的准确度得分

具有不同虹膜模型K值的KNN模型的统计指标?

训练集验证集和测试集的作用和区别