kNN和MDS降维
kNN与MDS降维内容对应西瓜书的降维与度量学习前两节。
kNN
k近邻算法是一种懒惰学习而不是急切学习算法,没有显式的训练。实现非常的容易,以前也学过了,下面从理论层面分析一下kNN算法。
kNN理想情况下的泛化误差
考察特例,即k=1的情况
我们可以看到,相比贝叶斯最优分类器,kNN理想情况下的泛化误差与之的比可以被常数2控制。
kNN的维度灾难和降维
但是实际情况下,kNN没有这样的优越性能,主要原因是,在维度比较高的时候,做到数据足够密集是不可能的,这就是维度灾难,高维度下的数据十分稀疏。所以先降维再做度量学习是一个不错的主意,就是西瓜书中这一章节的主线——先降维再度量学习。我先挑出kNN和MDS进行学习推导,以后再推导PCA,核化降维和度量学习。
MDS降维
MDS降维的思路很朴素,就是在尽量保距的情况下,进行降维。对于度量学习,保距是一个很重要的要求。下面是推导,可以看出,推导除非是解线性方程组的技巧。