在当今的技术领域,机器学习算法如繁星般璀璨,其中k近邻算法(k - nearest neighbors,简称kNN)凭借其简单易用且广泛适用的特点,在金融、医疗、推荐系统等众多现实场景中占据了一席之地。本文将深入探讨kNN算法是什么、如何工作以及在机器学习项目中怎样实现它。
一、k近邻分类器是什么?
k近邻分类器(kNN)是一种非参数的监督式机器学习算法。它基于距离进行分类,也就是说,它根据对象与邻近样本的类别来对对象进行分类。kNN最常用于分类问题,但也可应用于回归问题。
这里解释一下监督式机器学习模型,在监督式模型中,学习过程是由训练集中的标签引导的。若想更深入理解其工作原理,可以查阅关于监督学习原理的详细解释。
而“非参数”意味着在模型的训练步骤中,无需对参数进行微调。尽管在某种意义上,k可以被视为算法参数,但实际上它是一个超参数。它是手动选择的,并且在训练和推理阶段都保持固定。
同时,k近邻算法也是非线性的。与像线性回归这样更简单的模型不同,当自变量(x)和因变量(y)之间的关系不是直线时,kNN对这类数据能处理得很好。
二、kNN中的k是什么?
kNN中的参数k指的是在分类时所考虑的带标签点