问题引入

熟悉PCA的都知道其是一个降维的算法,那么也知道KPCA是一个降维的算法,这个算法是基于核的,那么KPCA和PCA的区别是啥呢?

问题解答

应用PCA算法前提是假设存在一个线性超平面,进而投影。那如果数据不是线性的呢?该怎么办?这时候就需要KPCA,数据集从 n维映射到线性可分的高维 ,然后再从 n维降维到一个低维度。

PCA所做的是对坐标轴线性变换,即变换后的新基还是一条直线。而KPCA对坐标轴做了非线性变换,数据所映射的新基就不再是一条直线了,而是一条曲线或者曲面,如下图所示: KPCA用到了核函数思想,使用了核函数的主成分分析一般称为核主成分分析(Kernelized PCA, 简称KPCA)。 假设高维空间数据由 n 维空间的数据通过映射 产生。 维空间的特征分解为: 其映射为 通过在高维空间进行协方差矩阵的特征值分解,然后用和PCA一样的方法进行降维。由于KPCA需要核函数的运算,因此它的计算量要比PCA大很多。 参考: [1] https://baijiahao.baidu.com/s?id=1625132587851239521&wfr=spider&for=pc 喜欢就关注一下啦~~~