【问题标题】:K-Nearest Neighbor in Sci-Kit LearnScikit Learn 中的 K-最近邻
【发布时间】:2021-11-04 13:19:15
【问题描述】:

我正在尝试使用 Sci-Kit Learn 练习使用 Iris 数据集进行 K-Nearest Neighbor 预测模型。这是我写的:

import sklearn
from sklearn import datasets
from sklearn.neighbors import KNeighborsClassifier
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
plt.style.use('ggplot')
import seaborn as sns
iris = datasets.load_iris()

X = iris.data
y = iris.target


knn =KNeighborsClassifier(n_neighbors=6)


knn.fit(X, y)

这是我的输出>>> KNeighborsClassifier(n_neighbors=6)

但是,我想我应该得到:KNeighborsClassifer(algorithm = 'auto', leaf_size =30, metric ='minkowski, metric_params=None, n_jobs=1, n_neighbors=6, p=2, weights='uniform')

另外,我尝试根据新的 X 值数组 (X_new) 预测目标值,如下所示:

X_new = np.array([[5.6,2.8,3.9,1.1],[5.7,2.6,3.8,1.3],[4.7,3.2,1.3,0.2]])

Pred = knn.predict(X_new)

print(Pred)

但是,它根本没有提供任何输出。任何帮助/建议将不胜感激!

【问题讨论】:

  • 第一期见stackoverflow.com/q/65334145/10495893stackoverflow.com/a/66380057/10495893。后者令人惊讶。 type(Pred)Pred.shape 是什么?
  • @BenReiniger,下面这两行都返回错误“Pred 未定义”```Pred.dtype Pred.shape()'''
  • 然后Pred = knn.predict(X_new) 行甚至还没有运行。前面的所有行都跑完了吗?
  • 如果我运行你的代码它可以工作,所以再次检查你是否可以重现错误
  • 我确认代码是正确的,Prednumpy.ndarray 作为array([1, 1, 0]) 返回。

标签: python numpy scikit-learn knn


【解决方案1】:

考虑到我是在 Google Colab 上运行的,我认为您的代码运行良好(笔记本链接 - https://colab.research.google.com/drive/1FROuNe4NMD6D2HCCEtz6TePlCccbGFZm?usp=sharing)。 请检查一下,也许您可​​以尝试重现错误。

【讨论】:

    猜你喜欢
    • 2018-09-06
    • 1970-01-01
    • 2016-09-26
    • 1970-01-01
    • 1970-01-01
    • 2013-03-21
    • 2014-04-12
    • 2012-07-19
    • 2011-12-06
    相关资源
    最近更新 更多