一.k近邻算法
二.k近邻模型
xi,xj的Lp距离定义Lp(xi,xj)=(∑i=1n∣xi(l)−xj(l)∣p)1/p
当p=2时称为欧氏距离,
L2(xi,xj)=(∑i=1n∣xi(l)−xj(l)∣p)1/2
当p=1时称为曼哈顿距离,
L1(xi,xj)=(∑i=1n∣xi(l)−xj(l)∣p)
当p=oo时,
Loo(xi,xj)=(∑i=1n∣xi(l)−xj(l)∣p)1/oo
三.k值的选择
k值的选择会对k近邻法的结果产生重大的影响,当k=1时选择距离为1的点作为分类:
误分类率为
1/k∑xi∈Nk(x)I(yi!=cj)=1−1/k∑xi∈Nk(x)I(yi=xi)
四.kd树
实现k近邻法主要是对训练数据进行快速k近邻搜索,k近邻最简单实现方法是线性扫描,当数据量大时,计算非常耗时,所以有了kd树。
kd树是一种对k维空间中进行存储以便对其进行快速检索的树形的数据结构。kd树是二叉树,表示k维空间的一个划分