学习《python machine learning》chapter5——Compressing data via dimensionality reduction
PCA链接 https://blog.csdn.net/Amy_mm/article/details/79812241
主要内容如下:
(1)主要成分分析 Principal Component Analysis (PCA) ——非监督学习
(2)线性判别分析 Linear Discriminant Analysis (LDA) ——监督学习
(3)核主成分分析 Kernel Principal Component Analysis ——非线性降维
源码 git 地址:https://github.com/xuman-Amy/compressing-data
对于非线性数据的降维有以下方法:
方法一:首先将非线性数据映射到一个新的高维特征空间,然后运用标准PCA对数据进行降维,从而将数据集转换为线性可分的数据集。
但是这样不高效,computationally very expensive
方法二就是KPDA~~
KPDA可以计算高维数据集中两个特征向量在原始数据集中的相似性。
【KPDA】
定义映射函数
在PCA中计算两个特征值的协方差如下:
因为数据标准化后,均值为0,所以公式简化为
一般的协方差计算公式:
计算非线性数据集的协方差矩阵,将样本特征向量换成经过函数转换的特征向量:
为特征值,v为特征向量,a可以通过从kernel 矩阵K中提取特征向量得到
【kernel matrix】
其中,为n*k维矩阵
等式可以写成: