《统计学习方法》-k近邻法

date: 2018-1-19
k近邻算法不需要显示学习判别模型,属于懒惰学习的一种,这样要素变成了:k值的选取、距离度量和分类决策规则。

K值选择

k值决定了有多少个点参与决策,拿最简单的欧式距离(距离度量)来说,就是先选择一个固定的K值,然后比较带测试点与所有点的距离,然后将对应最小的k个距离的点选出来,选用投票法(分类决策)来决定带测试点的类别。

k值的选取与模型有很大的关系,小了容易发生过拟合,大了可以减小学习的估计误差,但会增大近似误差。一般是取一个比较小的数值,然后采用交叉验证的方法来选取最优的k值(书上原话)。

距离度量

这里需要数学上的概念:范数,P范数定义是这样的:
P范数:L_p(x_i,x_j)=(\sum_{l=1}^n \vert x_i^{(l)}-x_j^{(l)}\vert^p)^{\frac{1}{p}},p\geqslant 1

当然,是存在0范数的,零范数:\left\| \boldsymbol{a}\right\|_0表示向量\boldsymbol{a}有多少个非零点,在作为约束条件时比L_2范数稀疏性更好,但求解麻烦,所以之前一般是用的L_1范数求解,但根据我导师说L_0范数求解貌似有了很大的进展,所以如果大家有兴趣的化可以看下相关的文章。

这样子的话,当p=1时,称为曼哈顿距离,p=2称为欧式距离,p=\infty称为无穷范数,是各个坐标距离的最大值。
L_\infty (x_i,x_j)=\max_l \vert x_i^{(l)}-x_j^{(l)} \vert
这个用高等代数的知识可以推出来,不同的p值对应的解空间是不同的,这里就不多说了。

分类决策规则

书上只讲了多数表决规则,也就是看分类数目的多少,哪种多就选哪个,普遍选择这个的原因是该规则等价于经验风险最小化,书上写了证明。

搜索方法

当样本容量比较大时,一个个的去判断距离无疑是一件很耗时的事情,所以大量的科研工作者做了很多的改进工作,书上介绍了kd树,也就是将包含整个样本的空间划分出一个个超矩形区域,一般以中心点划分,直到再进一步划分的超矩形区域内部没有样本点。详细的算法再书上有。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 01 分类需求 K近邻法(KNN)是一种基本的分类与回归方法 分类这种需求,渗透到我们生活的方方面面:根据学生德智...
    Sudden阅读 3,126评论 0 1
  • 机器学习是做NLP和计算机视觉这类应用算法的基础,虽然现在深度学习模型大行其道,但是懂一些传统算法的原理和它们之间...
    在河之简阅读 20,928评论 4 65
  • 接触机器学习时间也不短了, 趁国庆放假, 做一下深度整理. 1. 大纲 若想在企业胜任算法相关岗位知识, 除了掌握...
    婉妃阅读 3,525评论 2 92
  • 快到该去实习的日子了,原本计划中的顺利完成项目交接,写完一到两篇文章一类的计划通通没有完成。习惯性地拖延症,让事情...
    看见野火阅读 252评论 0 0
  • 这本书很难读,提出了一个新的概念--反脆弱。与我们惯常的对世界的稳定性认知方式不同,作者站在一个新的角度--不确定...
    赵秀丽阅读 495评论 2 0

友情链接更多精彩内容