【问题标题】:Predicting label with KNN in Python在 Python 中使用 KNN 预测标签
【发布时间】:2020-11-14 12:54:54
【问题描述】:

我正在尝试使用 KNN 预测正确的标签;但由于某种原因它不起作用。有人可以告诉我我做错了什么吗?

def eucledian_dist(dist1, dist2):
  return(np.sqrt(np.sum((dist1- dist2)**2)))

def knn(val, k, train, labels):
    distances = [eucledian_dist(val, img) for img in train]
    nearest = np.argsort(distances)[:k]
    class = np.bincount(labels[nearest])
    prediction = np.argmax(class)
    return prediction

【问题讨论】:

  • class 是 python 中的保留字,所以你不应该在这种情况下使用它。为变量使用其他名称,例如“nearest_classes”

标签: python knn


【解决方案1】:

您不能使用class 作为变量的名称,因为它用于定义class in Python

您始终可以在代码中更改它并选择其他名称。或者有一种常用的方法来使用它。只需在关键字末尾添加_,例如:class_

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-10-14
    • 2020-01-14
    • 2016-10-15
    • 2016-04-04
    • 2016-09-02
    • 2017-11-01
    • 2020-07-16
    相关资源
    最近更新 更多