个人感觉k近邻应该是所有统计学习方法里最好理解的了,通俗来说就是在数据集中找距离测试数据x最近的k个数据样本,如果A类的数量大于B类的数量,则将测试数据x归为A类,书中也仅用了不到10页来论述这个理论,除基本k近邻理论,还有kd树的阐述。

k近邻法

  • 输入:训练集T={(x1,y1),(x2,y2),...,(xN,yN)}T=\{(x_1,y_1),(x_2,y_2),...,(x_N,y_N)\},其中,xiXRnx_i \in X\sube \R^n为实例特征向量,yiY{c1,c2,...,cK}y_i\in Y\sube \{c_1,c_2,...,c_K\}为实例的类别;实例xx
  • 输出:实例xx的类别
    (1) 计算距离,在TT中找出与xx最近邻的k个点,以及包含着k个点的xx的邻域Nk(x)N_k(x);
    (2) 在Nk(x)N_k(x)中根据分类决策规则(如少数服从多数)决定xx的类别yy;

1、常见的距离度量方法都有哪些?

  • LpL_p距离定义为:Lp(xi,xj)=(l=1nxi(l)xj(l)p)1pL_p(x_i,x_j)=\Big(\sum_{l=1}^{n}|x_i^{(l)}-x_j^{(l)}|^p\Big)^{\frac{1}{p}}
  • 曼哈顿距离,此时p=1p=1
    L1(xi,xj)=(l=1nxi(l)xj(l))L_1(x_i,x_j)=\Big(\sum_{l=1}^{n}|x_i^{(l)}-x_j^{(l)}|\Big)
  • 欧氏距离,此时p=2p=2
    L2(xi,xj)=(l=1nxi(l)xj(l)2)12L_2(x_i,x_j)=\Big(\sum_{l=1}^{n}|x_i^{(l)}-x_j^{(l)}|^2\Big)^{\frac{1}{2}}

2、影响k近邻法的三个要素是什么?

  • 距离度量方法
  • k值的选择:一般取一个较小的数值,通常采用交叉验证法来选取最优的k值。
    • 当选择的k值较小时,近似误差(approximation error)会减小,估计误差(estimation error)会变大,k值的减小意味着整体模型变得复杂,容易发生过拟合。
    • k值的增大与上述正好相反,估计误差变小,同时近似误差变大,意味着模型变得太简单。当模型过于简单,会忽略掉数据中大量有用的信息。
  • 分类决策规则:一般采用多数表决规则。

3、给定一个二维空间的数据集:T={(2,3)T,(5,4)T,(9,6)T,(4,7)T,(8,1)T,(7,2)T}T=\{(2,3)^T,(5,4)^T,(9,6)^T,(4,7)^T,(8,1)^T,(7,2)^T\},构造一个平衡kd树?

假设每个数据样本对应x(1),x(2)x^{(1)},x^{(2)}两个坐标轴,
(1) 先选择x(1)x^{(1)}轴的中位数建立超平面,将样本空间分成两个子空间a,ba,b;
(2) 针对子空间aa,选择子空间中样本的x(2)x^{(2)}轴的中位数建立超平面,进一步划分子空间;针对子空间bb,选择子空间中样本的x(2)x^{(2)}轴的中位数建立超平面,进一步划分子空间;
(3) 递归调用(1)、(2),直到每个子空间中均无样本点为止,即所有样本点都在分割超平面上。
【统计学习方法读书笔记】(三)k近邻法

4、在上述kd树空间中,利用kd树搜索中求点x=(3,4,5)Tx=(3,4,5)^T的最近邻点?

相关文章:

  • 2022-12-23
  • 2021-04-26
  • 2021-12-29
  • 2021-12-14
  • 2022-12-23
  • 2021-12-02
  • 2021-09-16
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-12-21
  • 2021-07-31
  • 2021-09-23
  • 2021-11-26
  • 2021-04-02
  • 2021-09-24
相关资源
相似解决方案