探索 K 近邻 (KNN) 如何通过其直观的、非参数的方法简化机器学习,以用于分类和回归任务。
K-Nearest Neighbors (KNN) 是一种非参数的有监督学习算法,被广泛应用于计算、分析和预测、 监督学习算法,广泛用于 分类和回归任务。通常被称为 通常被称为 "懒惰学习器 "或基于实例的学习方法,KNN 在训练阶段不会从训练数据中生成判别函数。 在训练阶段,KNN 不会从训练数据中生成一个判别函数。相反 而是记忆整个数据集,只有在对新实例进行预测时才执行计算。这种方法 假定相似数据点在特征空间中的位置非常接近,从而允许算法根据多数类classify 。 新输入的分类是基于其最近邻居的多数类或平均值。
K-Nearest Neighbors 的运行机制依靠距离度量来量化数据点之间的相似性。 点之间的相似性。最常用的指标是 欧几里得距离,也可以使用 曼哈顿距离或明考斯基距离等。 根据问题领域的不同,也可以使用其他指标,如曼哈顿距离或明考斯基距离。预测过程包括几个不同的步骤:
KNN 的简单性使其成为许多机器学习问题的有效基线。 机器学习问题的有效基准。下面是一个简明的 示例来演示基本的分类工作流程。 演示基本分类工作流程。
import numpy as np
from sklearn.neighbors import KNeighborsClassifier
# distinct classes: 0 and 1
X_train = np.array([[1, 1], [1, 2], [2, 2], [5, 5], [5, 6], [6, 5]])
y_train = np.array([0, 0, 0, 1, 1, 1])
# Initialize KNN with 3 neighbors
knn = KNeighborsClassifier(n_neighbors=3)
knn.fit(X_train, y_train)
# Predict class for a new point [4, 4]
prediction = knn.predict([[4, 4]])
print(f"Predicted Class: {prediction[0]}")
# Output: 1 (Closer to the cluster at [5,5])
尽管 K-近邻法很简单,但在各种复杂的领域中都有应用,在这些领域中,可解释性和基于实例的推理非常重要。 基于实例的推理非常重要。
要为计算机视觉或数据分析项目选择合适的工具,了解 KNN 与其他算法的区别至关重要。 计算机视觉或数据分析项目选择合适的工具至关重要。
虽然 KNN 在较小的数据集上非常强大,但在大数据中却面临着可扩展性的挑战。 由于每次查询都要计算距离的计算成本,KNN 距离。对于高性能 实时推理,如 对象检测等任务中的高性能实时推理,现代深度学习 架构,如 YOLO11等现代深度学习架构因其 YOLO11 等现代深度学习架构因其卓越的速度和准确性而受到青睐。

