李航老师《统计学习方法》第二版第三章课后题答案 | 您所在的位置:网站首页 › 统计学第二版第二章课后题答案 › 李航老师《统计学习方法》第二版第三章课后题答案 |
其他章节答案请参考我的汇总统计学习方法答案汇总,都是自己写的。 1、参照图3.1,在二维空间中给出实例点,画出 k k k 为1和2时的 k k k 近邻法构成的空间划分,并对其进行比较,体会 k k k 值的选择与模型复杂度及预测准确率的关系。解: 唉,这一题花了很长时间才搞明白到底是要干啥。下面先简单的介绍一下,到底要干嘛,和k近邻的关系是啥。 我们知道,k近邻算法在对一个新的数据点 A A A 进行分类的时候(这里就以分类来介绍),需要以 A A A为中心,寻找距离 A A A最近的k个点,这k个点是由训练集给出的。然后我们计算这k个点里面,数量最多的类别,作为 A A A的类别,完成分类。该题的意思就是,先根据训练集提前将区域划分好,当有新的数据点 A A A时,我们可以根据 A A A落在哪个区域,从而快速的得出距离点 A A A最近的k个点,下面举个栗子。 栗子: 已知训练集 T = { x 1 , x 2 , . . . , x N } T = \{x_{1},x_{2},...,x_{N}\} T={x1,x2,...,xN} 设k近邻算法的 k = k 0 k = k_{0} k=k0,在划分区域的时候,假设根据数据 T T T已经划分了下面的 n n n 区域 R = { R 1 , R 2 , . . . , R n } R=\{R_{1}, R_{2},...,R_{n}\} R={R1,R2,...,Rn} 划分好了区域,其实就是相当于“训练”好了模型,每个子区域 R i R_{i} Ri 都是由 k 0 k_{0} k0个数据点决定的,只不过这个模型只是称为 k 0 k_{0} k0近邻法,对于别的不同的 k k k还要重新划分区域(建立模型)。 假设现在来一个新的点 A A A,我们需要根据 k 0 k_{0} k0近邻判断出数据点 A A A的类别。假设点 A A A落在我们划分的的区域的第 i 0 i_{0} i0个子区域 R i 0 R_{i{0}} Ri0,决定 R i 0 R_{i{0}} Ri0的 k 0 k_{0} k0个点是 x i 01 , x i 02 , . . . , x i 0 k 0 x_{i01},x_{i02},...,x_{i0k_{0}} xi01,xi02,...,xi0k0,那么我们就知道了距离 A A A的最近的 k 0 k_{0} k0个点了,就是 x i 01 , x i 02 , . . . , x i 0 k 0 x_{i01},x_{i02},...,x_{i0k_{0}} xi01,xi02,...,xi0k0,接着我们就可以统计 x i 01 , x i 02 , . . . , x i 0 k 0 x_{i01},x_{i02},...,x_{i0k_{0}} xi01,xi02,...,xi0k0里面的类别数量嘴的类别标签为 A A A的类别。分类完成。 那么问题来了,我们改如何划分区域呢?答案是,使用两点
a
,
b
a,b
a,b的垂直平分线,因为垂直平分线上的点距离
a
,
b
a,b
a,b的距离相同的。 下面我们开始正式解题:
k
0
=
1
k_{0} = 1
k0=1的栗子: 这样画出垂直平分线之后,使得整个二维平面有了一个区域的划分,其实我们“训练”的k近邻模型,就是对训练数据在高维空间中进行划分。假设上图是我们已经得到的 k = 1 近邻算法模型,现在我们需要对图中的数据点
A
A
A 进行分类,因为我们在图中使用的都是垂直平分线进行的区域划分,当点
A
A
A落在数据点2和4的垂直平分线
L
24
L24
L24下侧的时候,相对于点2来说,
A
A
A更加的靠近点4,又因为在点1和4的垂直平分线
L
14
L14
L14的右侧,所以
A
A
A到点4的距离比到点1的距离更近,所以点
A
A
A的类别由点4的类别决定,这是因为当
k
=
1
k = 1
k=1是模型是最近邻模型。完成分类。 有同学可能会问,为什么没有画出数据点3和4的垂直平分线?这是因为3到1和2的距离比3到4的距离更近,当新的数据点靠近3时,因为点1和2距离3更近,新的数据点可能会到1的距离或者到2的距离比3更近,那么就需要做出23和13的垂直平分线,而不是做出34的垂直平分线。其实画出来也可以,这样更加的规范一些,因为直观上的感觉,为了图省事,我就省略了。所以你明白了吗? 不知道经过上面的讨论之后,你是否对这个区域的划分有了新的理解,如果还是有点懵的话,下面我们在列举一个
k
=
2
k = 2
k=2的栗子进行讲解。
k
=
2
k = 2
k=2的栗子:此时我们得到的区域划分就是2近邻模型。下面先给出划分之后的图像。首先我们要明白划分的区域的目的是什么,也就是在某个子区域内有一个新的数据点,我们能保证在该子区域内只有两个点距离新的数据点更近,也就是2近邻模型。 好了,这个题就是这个意思!!!唉,我要吐槽一下,李航老师的书上并没有对这个题进行介绍,直接在后面给了一个习题,需要了解很多额外的知识才行。 2、利用例题3.2构造的kd树求点(3,4.5)的最近邻点。解: 我们定位到点(3,4.5)所在叶子节点。这里取距离度量为p=2的欧式距离 因为34,所以在节点的(5,4)的右子节点上,我们先以点(4,7)为点(3,4.5)的当前最近邻点,当前距离为L((4,7),(3,4.5)) = 2.6926 接着向上回退到点(5,4),两点距离为L((5,4),(3,4.5)) = 2.06 |
CopyRight 2018-2019 实验室设备网 版权所有 |