【发布时间】: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”