AI目录:sheng的学习笔记-AI目录-CSDN博客
什么是k近邻学习
k近邻(k-Nearest Neighbor,简称kNN)学习是一种常用的监督学习方法,是一种基本的分类与回归方法。
- 分类问题:对新的样本,根据其 k 个最近邻的训练样本的类别,通过多数表决等方式进行预测。
- 回归问题:对新的样本,根据其 k 个最近邻的训练样本标签值的均值作为预测值。
原理
基本原理
给定测试样本,基于某种距离度量找出训练集中与其最靠近的k个训练样本,然后基于这k个“邻居”的信息来进行预测。
通常,在分类任务中可使用“投票法”,即选择这k个样本中出现最多的类别标记作为预测结果;
在回归任务中可使用“平均法”,即将这k个样本的实值输出标记的平均值作为预测结果;
还可基于距离远近进行加权平均或加权投票,距离越近的样本权重越大
k近邻学习是惰性学习的代表
懒惰学习
在训练阶段仅仅是把样本保存起来,训练时间开销为零,待收到测试样本后再进行处理
急切学习
在训练阶段就对样本进行学习处理的方法
示意图
k是一个重要参数,当k取不同值时,分类结果会有显著不同。另一方面,若采用不同的距离计算方式,则找出的“近邻”可能有显著差别,从而也会导致分类结果有显著不同
错误概率
下面一坨公式,看得懂就看,看不懂记住结论:
最近邻分类器虽简单,但它的泛化错误率不超过贝叶斯最优分类器的错误率的两倍!
优缺点
-
k近邻模型具有非常高的容量,这使得它在训练样本数量较大时能获得较高的精度。
-
它的缺点有:
参考文章
5.knn - 一、k 近邻算法 - 《AI算法工程师手册》 - 书栈网 · BookStack
机器学习 书