统计学习方法 --- k近邻法

一.k近邻算法

二.k近邻模型

x i , x j 的 L p 距 离 定 义 L p ( x i , x j ) = ( ∑ i = 1 n ∣ x i ( l ) − x j ( l ) ∣ p ) 1 / p x_i,x_j的L_p距离定义 L_p(x_i,x_j)=(\sum_{i=1^n} |x_i^{(l)}-x_j^{(l)}|^p)^{1/p} xi,xjLpLp(xi,xj)=(i=1nxi(l)xj(l)p)1/p
当p=2时称为欧氏距离, L 2 ( x i , x j ) = ( ∑ i = 1 n ∣ x i ( l ) − x j ( l ) ∣ p ) 1 / 2 L_2(x_i,x_j)=(\sum_{i=1^n} |x_i^{(l)}-x_j^{(l)}|^p)^{1/2} L2(xi,xj)=(i=1nxi(l)xj(l)p)1/2
当p=1时称为曼哈顿距离, L 1 ( x i , x j ) = ( ∑ i = 1 n ∣ x i ( l ) − x j ( l ) ∣ p ) L_1(x_i,x_j)=(\sum_{i=1^n} |x_i^{(l)}-x_j^{(l)}|^p) L1(xi,xj)=(i=1nxi(l)xj(l)p)
当p=oo时, L o o ( x i , x j ) = ( ∑ i = 1 n ∣ x i ( l ) − x j ( l ) ∣ p ) 1 / o o L_{oo}(x_i,x_j)=(\sum_{i=1^n} |x_i^{(l)}-x_j^{(l)}|^p)^{1/oo} Loo(xi,xj)=(i=1nxi(l)xj(l)p)1/oo

三.k值的选择

k值的选择会对k近邻法的结果产生重大的影响,当k=1时选择距离为1的点作为分类:
误分类率为 1 / k ∑ x i ∈ N k ( x ) I ( y i ! = c j ) = 1 − 1 / k ∑ x i ∈ N k ( x ) I ( y i = x i ) 1/k\sum_{x_i \in N_k(x)} I(y_i !=c_j)=1-1/k \sum_{x_i \in N_k(x)}I(y_i=x_i) 1/kxiNk(x)I(yi!=cj)=11/kxiNk(x)I(yi=xi)

四.kd树

实现k近邻法主要是对训练数据进行快速k近邻搜索,k近邻最简单实现方法是线性扫描,当数据量大时,计算非常耗时,所以有了kd树。
kd树是一种对k维空间中进行存储以便对其进行快速检索的树形的数据结构。kd树是二叉树,表示k维空间的一个划分

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值