k近邻算法
k近邻算法处理的是分类问题,在分类算法中是一种比较简单而且经典的算法。
k近邻算法简单叙述:给定一个训练数据集,这个训练数据集由其特征向量x和已知分类y组成。这个数据集的每一个样本可以想象成空间中的点,当给出一个新的实例时,在训练数据集中找出与该实例最近的k个实例,找出这k个实例中所属类别最多的哪一类,那么就把这个输入实例分为这个类。
那么如何去找出最近的k个实例,这个距离怎么计算呢?
一般情况使用欧式距离,不过,也可以用Lp距离和Minkowski距离。
Lp距离公式如下:
p>=1,
当p=2时,相当于欧式距离,
当p=1时,就是曼哈顿距离,
当p等于无穷时,它是各个坐标距离的最大值。