【问题标题】:Call predict function for nearest neighbor (knn) classifier with Python scikit sklearn使用 Python scikit sklearn 调用最近邻(knn)分类器的预测函数
【发布时间】:2016-08-20 13:18:33
【问题描述】:

我尝试调用最近邻的预测函数并得到以下错误:

AttributeError: 'NearestNeighbors' object has no attribute 'predict'

代码是:

from sklearn.neighbors import NearestNeighbors
samples = [[0., 0., 0.], [0., .5, 0.], [1., 1., .5]]
neigh = NearestNeighbors()
neigh.fit(samples)
neigh.predict([[1., 1., 1.]]) # this cause error

我已阅读文档,它具有预测功能: http://scikit-learn.org/stable/modules/generated/sklearn.neighbors.KNeighborsClassifier.html

如何进行预测?

【问题讨论】:

    标签: python machine-learning scikit-learn


    【解决方案1】:

    您混淆了 NearestNeighbors 类和 KNeighborsClassifier 类。只有第二个有predict 函数。

    注意您发布的link 中的示例:

    X = [[0], [1], [2], [3]]
    y = [0, 0, 1, 1]
    from sklearn.neighbors import KNeighborsClassifier
    neigh = KNeighborsClassifier(n_neighbors=3)
    neigh.fit(X, y) 
    print(neigh.predict([[1.1]]))
    print(neigh.predict_proba([[0.9]]))
    

    NearestNeighbors 类是无监督的,不能用于分类,只能用于最近邻搜索。

    【讨论】:

      猜你喜欢
      • 2017-12-11
      • 1970-01-01
      • 1970-01-01
      • 2016-09-26
      • 1970-01-01
      • 1970-01-01
      • 2015-05-12
      • 2023-01-24
      • 1970-01-01
      相关资源
      最近更新 更多