编程语言
首页 > 编程语言> > KNN/K近邻/K-nearest neighbor 算法

KNN/K近邻/K-nearest neighbor 算法

作者:互联网

本质:人以类聚,物以群分,趣味相同的人总是会在一起
一,k为1即只寻找离它最近的情况
这个时候它的公式就是我们初中学的两点距离公式
其原理就是勾股定理,这个很简单就不推导了
在这里插入图片描述

二,按民主的方式,投票分
假定目前只有0与1两个类别,有个要分类的点A
直接划分比如K=3,那么取离A距离最近的三个,好此时有2个1类的,1个0类的
2>1,那么此时就判断A为1类

三,KNN关键点(超参数/Hyperparameter)的探讨

关于超参数

定义

在机器学习的上下文中,超参数是在开始学习过程之前设置值的参数。 相反,其他参数的值通过训练得出。
超参数:

定义关于模型的更高层次的概念,如复杂性或学习能力。
不能直接从标准模型培训过程中的数据中学习,需要预先定义。
可以通过设置不同的值,训练不同的模型和选择更好的测试值来决定

超参数的一些示例:

树的数量或树的深度
矩阵分解中潜在因素的数量
学习率(多种模式)
深层神经网络隐藏层数
k均值聚类中的簇数

那么由此,我们就来想下
这个超参数K要满足什么条件
1,K为奇数,只有是奇数才能保证投票中不会出现各类型数量相等的情况
2k的大小,首先,k如果太小,会影响模型的精度,单纯的来说,如果我们要判断一个动物是不是猫,那么如果我们只用眼睛,鼻子,嘴巴判断,那大象也是有眼睛鼻子嘴巴的,那么如果K太大,会冲淡周围的数据对最终种类判断的影响,比如A刚刚做推销,那么知道A是推销员的只有他已经推销过的少数几个人,但是大多数人不知道。

四,欧几里得(.Euclidean)距离

欧几里得度量(euclidean metric)(也称欧氏距离)是一个通常采用的距离定义,指在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。在二维和三维空间中的欧氏距离就是两点之间的实际距离

公式:
在这里插入图片描述

标签:KNN,nearest,那么,定义,模型,距离,学习,参数,neighbor
来源: https://blog.csdn.net/CSDNXXCQ/article/details/114456115