特点:(1)分类、回归
(2)判别模型
(3)有监督
思想:K近邻法不具有显式的学习过程,训练数据的类别已知,当我们需要判断新的样本x属于哪一个类别时,在训练集中根据距离度量找出距离x最近的K个样本,用投票法对x的类别进行判断。
模型:利用训练数据集对特征空间进行划分,并将其作为分类的“模型”。
策略:多数表决规则等价于经验风险最小化。
算法:
输入:训练数据集
输出:实例x所属的类别y
(1)根据距离度量找出距离x最近的K个点;
(2)多数表决法(分类);计算距离的均值(回归)。
实现:kd树
细节:(1)K值的选择:K越小模型越复杂,越容易过拟合;K值太大误差会很大。应用中一般选择一个比较小的整数值,用交叉验证法选择最优的K值。
(2)距离度量:欧氏距离、Lp距离、Minkowski距离。
优点:简单,分类与回归均可操作,可用于非线性分类,复杂度为O(n),对outlier不敏感。
缺点:K需预先设定,对大小不平衡的数据集易偏向大容量数据。