PCA− 主成分分析
本文由 @lonelyrains出品,转载请注明出处。
文章链接: http://blog.csdn.net/lonelyrains/article/details/49615105
想法来源:数据压缩、可视化
PCA
:主成分分析。目的就是把有意义的样本点数据适当地降维表达。如果是降到
3
维或者
PCA 的算法
- 样本属性缩放归一化,计算样本向量集的协方差矩阵
- 计算协方差矩阵的特征向量矩阵
U
,将明显差异的左起
K 列挑出来 UReduce ,不明显的余下部分则近似认为是常数,以达到降维的目的 - 提出来的
K
个特征向量与原样本集相乘,得到映射的K维样本集
上图中的U是一个n∗n 的矩阵。要度量降维保真效果,可以用方差与模长平方比。如下图,则称保真度 ≥ 99%:
其中, svd 函数( octave 和 matlab 都支持)返回的第二个矩阵 S ,斜对角值就是方差。如下图:
- 有降维肯定也要涉及怎么还原。还原公式如下图右下角手写部分:
PCA 与线性回归的不同
线性回归是不改变样本输入参数
x⃗
的情况下对结果集的拟合,所以如下图左侧;而
PCA
是同时改变
x⃗
和对应的结果集。至于为什么二维降一维时是如下右图垂线方向,因为涉及到复杂的数学推导,这里不作详细说明。会用就行了。
PCA 的补充材料
PCA 作用
因为
PCA
的本质作用就是降维,所以除了数据压缩、可视化,还可以在监督学习时降低维度以减小计算负担、提高计算速度。
但是如果监督学习时过度拟合,是不推荐用
PCA
来降低过拟合的,因为可以调参以增强正规化的效果、减少监督学习时的属性类型等来达到抑制过拟合。
特征向量
特征向量是个非常重要的概念。向量是变换的特征向量。变换所在的空间越高维,可能的特征向量就越多。
参考链接 Wikipedia、博客(该博客说明有误导性:特征向量的长度值经A矩阵变换之后是可变的,而方向不变。当且仅当特征值 λ 为1时,特征向量才长度不变)、百度百科。