机器学习--K-NN分类&回归

K近邻:从字面上理解,就是:近朱者赤,近墨者黑。和谁离得近和谁归为一类。

1 算法原理

(1)计算测试数据与各个训练数据之间的距离,方法:闵可夫斯基距离

(曼哈顿距离和欧几里得距离的总和升级)

(2)按照距离的递增顺序排序

(3)选取距离最小的k个点

(4)确定前k个点所在类别的出现频率(即为各个类别出现次数)

(5)返回前K个点所在类别的出现频率,测试集的类别就为频率出现次数最大的那一类。

图一,为k=1时的图,两个小星星为测试集,k=1意味着和自己里的最近的那个归为一类所以就离得近的颜色相同归为一类。

图二,k=3时,就是和测试集里的最近的三个点,明显看黄色星星,离他近的有两个黄色三角形,剩下只有一个蓝色圆圈,所以未知种类的小星星就归为黄色三角形那一组啦。

2.算法优缺点

(1)思想简单

(2)可用于线性分类

(3)训练时间复杂度为O(n)

(4)计算量大,运算速度慢,不能处理具有很多特征的数据集

(5)不利于处理数据不平衡的情况

(6)需要大量内存

4、小tips

(1)k值取奇数,偶数会出现两类数量相同的尴尬,不知道去哪

(2)使用更少的邻居对应更高的模型复杂度,使用更多的邻居对应更低的模型复杂度

(鳄鱼书上的打了个比方,如果K值为n,那就不需要分类,就一大类,所以模型十分简单啦。那如果k值为1就要分n类,明显模型变得更复杂了)

5、K-NN用于回归

在这里重新理一下回归和分类的区别:

分类可以分为二分类和多分类,二分类中通常有一个正类一个反类;

回归的任务就是预测一个连续值,编程术语叫做浮点数,数学中叫做实数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小菜鸡变形记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值