二者都是在PCA和LDA的基础上加入了核函数,从线性变化到非线性变化,因此建议先搞懂什么是PCA、LDA和核函数。
KPCA
我们先来看一个实际问题,图b是样本在二维空间中的分布,称为本真二维结构,然后以S形曲面嵌入到三维空间中,形成图a的空间结构,如果使用线性降维的方法,会丢失低维结构,得到一个图c这样的二维空间结构。
面对上述问题,我们就不能采用传统的线性降维方法了,这时候就要使用我们的核主成分分析KPCA来实现非线性降维。
KPCA算法其实很简单,数据在低维度空间不是线性可分的,但是在高维度空间就可以变成线性可分的了。利用这个特点,KPCA只是将原始数据通过核函数(kernel)映射到高维度空间,再利用PCA算法进行降维,所以叫做K PCA降维。因此KPCA算法的关键在于这个核函数。
总结一下KPCA算法的计算过程
1.去除平均值,进行中心化。
2.利用核函数计算核矩阵K。
3.计算核矩阵的特征值和特征向量。
4.将特征相量按对应特征值大小从上到下按行排列成矩阵,取前k行组成矩阵P。
5.P即为降维后的数据。