KNN算法在训练阶段做什么?

问题描述 投票:4回答:4

[与线性回归等其他算法不同,KNN在训练阶段似乎不执行任何计算。像线性回归一样,它可以在训练阶段找到系数。但是KNN呢?

machine-learning knn
4个回答
5
投票

[在训练阶段,KNN整理数据(建立索引的过程),以便在推理阶段有效地找到最接近的邻居。否则,它必须将推理期间的每个新案例与整个数据集进行比较,从而使其效率很低。

您可以在https://scikit-learn.org/stable/modules/neighbors.html#nearest-neighbor-algorithms上了解更多信息>


2
投票

KNN属于惰性学习者组。与诸如logistic regressionsvmsneural nets之类的渴望学习者相反,懒惰学习者只是将训练数据存储在内存中。然后,在推理过程中,它会从训练数据中找到K个最近的邻居,以便对新实例进行分类。


0
投票

KNN是基于实例的方法,它完全依赖于训练示例,换句话说,它会记住所有训练示例。因此,在分类的情况下,只要出现任何示例,它都会计算输入示例与所有训练示例之间的欧式距离,并根据距离返回最接近的训练示例的标签。


0
投票

Knn是个懒惰的学习者。这意味着,像其他算法在训练阶段(线性回归等)学习一样,Knn在训练阶段学习。实际上,它只是在训练时将数据点存储在RAM中。

© www.soinside.com 2019 - 2024. All rights reserved.