机器学习中的 K-近邻 算法
k-近邻(k-Nearest Neighbor, 简称kNN)算法是一种常用的监督学习方法,其工作机制:给定测试样本,基于某种距离度量找出训练集中与其最靠近的k个训练样本,然后基于这k个“邻居”的信息进行预测
距离度量是什么呢?
拿欧氏距离来说, 假如给定两个样本a, b:
那么最终的欧式距离就是
根号下(a1特征值 - b1特征值)^2 + (a1特征值 - b1特征值)^2 + …
当然数据越累似, 特征值的差(a1-b1)就越小…
算出与每个样本的欧式距离之后, k-近邻算法会根据与每个样本的欧式距离由小到大排序, 取出前k个样本, 大多数样本属于一个类别, 则这个样本也属于该类别