文章目录
KNN工作原理
直观的解释:给定一个训练数据集,对于新的输入实例,在训练集中找到与该实例最近邻的 k 个实例,这 k 个实例的多数属于哪个类,则该实例就属于哪个类。
KNN的工作原理大致分为三步:
- 计算待分类物体与其他物体之间的距离;
- 统计距离最近的 K 个邻居;
- 对于 K 个最近的邻居,它们属于哪个分类最多,待分类物体就属于哪一类。
算法关键点
该算法的几个关键点:
一.是找到与该实例最近邻的实例,这里就涉及到如何找到,即在特征向量空间中,我们要采取何种方式来对距离进行度量。
二.是 k 个实例,这个 k 值的大小如何
三.是 k 个实例距离权重
距离问题
在 KNN 算法中,两个样本点之间的距离代表了这两个样本之间的相似度。距离越大,差异性越大;距离越小,相似度越大。
度量距离的方式:
欧拉距离: d = ∑ i = 1 n ( x i − y i ) 2 d=\sqrt{\sum_{i=1}^{n}\left(x_{i}-y_{i}\right)^{2}} d=∑i=1n(xi−yi)2
曼哈顿距离: ∑ i = 1 n ∣ X i ( a ) − X i ( b ) ∣ \sum_{i=1}^{n}\left|X_{i}^{(a)}-X_{i}^{(b)}\right| ∑i=1n∣∣∣Xi(a)−Xi(b)∣∣∣
明可夫斯基距离: ( ∑ i = 1 n ∣ X i ( a ) − X