k近邻法不具有显式的学习过程。k近邻法利用训练数据集对特征向量空间进行划分,并作为其分类的“模型”。
k值的选择,距离度量及分类决策规则是k近邻法得三个基本要素。
k近邻算法
k近邻法
- 根据给定的距离度量,在训练集T中找出与x最领进的k个点,涵盖这k个点的x的邻域记作 Nk(x) ;
- 在 Nk(x) 中根据分类决策规则(如多数表决)决定x的类别y:
y=argmaxcjI(yi=cj),i=1,...,N;j=1,...,K(3.1)
式(3.1)中, I 为指示函数,即当yi=cj 时 I 为1,否则I 为0。
距离度量
闵科夫斯基距离
Lp(xi,xj)=(∑l=1N|x(l)i−x(l)j|p)1p
这里
p≥1
。当p=2时,称为欧式距离。
当
p=1
时,称为曼哈顿距离。
当
p=∞
时,它是各个坐标举例的最大值,即
L∞(xi,xj)=maxl|x(l)i−x(l)j|
k值的选择
k值小,整体模型复杂,容易过拟合。
分类决策规则
多数表决规则等价于经验风险最小化。
k近邻法的实现:kd树
参考文献
《统计学习方法》第3章