14.降维(Dimensionality reduction)
2019-03-23 本文已影响0人
justinwei
第八周 - Lecture 14
降维的目的:
- 减少内存和存储
- 加快运算速度
- 可视化(降到2维或3维)
PCA方法(Principal Component Anglysis)
找到x到某个维度的投影
image.pngReduce from 2-dimension to 1-dimension:Find a direction(a vector ) onto which to project the data so as to minimize the projection error;
Reduce from n-dimension to k-dimension:Find k vectors ) onto which to project the data so as to minimize the projection error;
PCA方法不是线性回归
线性回归
PCA
算法描述
- 数据预处理,数据缩放(feature scaling/mean normalization)
2.计算协方式矩阵(covariance matrix)
1.)
对应octave
sigma = (1/m) * X' * X
// X为m*n的矩阵 sigma为n*n的矩阵
矩阵乘法
A*B = (B' * A')'
2.) [U,S,V] = svd(sigma)
U为n*n的矩阵
3.) 降维z值的计算(k个分类)
U是一个n*n的矩阵
octave代码:
Z = X * U(:,1:k)
//X为m*n的矩阵;U(:,1:k)是n*k的矩阵
4.) 降维还原(reconstruction from compressed)
会失真,但从编程题的效果看失真很小
PCA正确应用
- 图形压缩
PCA错误应用
- 用于处理过拟合
- PCA并不是必要过程,建议先用原始数据