【机器学习】K-近邻算法(KNN)

点击关注上方“小田学python”,获取更多精彩内容

机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的核心,是使计算机具有智能的根本途径。

那么多余的内容就不说了,想必大家都明白,网上内容实在太多了。接下来进入正题,第一个机器学习算法——KNN。

01

原理透析 

KNN算法即K-近邻算法,是机器学习算法当中相对较为简单的一个分类算法,它属于上图分类中的监督学习算法,监督学习是指利用一组已知类别的样本进行训练,来推断新的数据,也就是用打过标签的数据来训练。

它的判决是通过特征值的欧几里得距离:

欧式距离是最常见的距离量度,衡量的是多维空间中各个点之间的绝对距离。

具体判别方法是:一个样本在其特征空间里的K个最邻近的样本中进行投票,该样本属于投票数量较多的那个类别,K的取值要结合具体内容来调节。单凭文字看的很懵,那就上图吧:

上图描述的就是一个KNN算法的过程(数据位置随机,仅为介绍原理),其中五角星是待测数据,三角形和正方形分别是两个类别,K-近邻算法是在K个最近的样本中进行投票。例如,设置K=3,那么就计算得所有样本的欧氏距离,进行排序,取最近的3个,那么也就是其中的蓝色圈范围。其中包括两个三角形,一个正方形,其概率也就是:三角形 2/3,正方形 1/3,因此可以判别出该五角星属于三角形一类。

下面通过一个例子告诉你,KNN算法该如何实现:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值