12-Dimensionality Reduction
来源:互联网 发布:vscode如何打开网页 编辑:程序博客网 时间:2024/06/04 18:01
数据的降维处理
1 - Motivation I Data Compression II Visualization 数据压缩|可视化
2 - Principal Component Analysis Problem Formulation
降维:
- 2维到1维:找到一个向量
u(1)∈R2 ,让平面上的2维数据投影到这个向量上,并且投影误差最小 - n维到k维:找到k个向量
u(1),u(2),…,u(k) ,使得投影误差最小
- 2维到1维:找到一个向量
PCA 不是 linear regression:PCA 的中的是投影
左边是 linear regression ,右边是 PCA
3 - Principal Component Analysis Algorithm 具体算法
数据预处理:feature scaling / mean normalization
从 n 维
- 计算 X 的协方差矩阵(covariance matrix):
∑=1m∑i=1n(x(i))(x(i))T,x(i)∈Rn×1,∑∈Rn×n - 计算协方差矩阵
∑ 的特征向量(eigenvector):[U,S,V]=svd(∑)(svd:Singularvaluedecomposition单值分解)U=⎡⎣⎢⎢⎢⎢|u(i)||u(2)|⋮⋮⋮|u(m)|⎤⎦⎥⎥⎥⎥,U∈Rn×n - 取出矩阵 U 的前 K 个向量
u(1),u(2),…,u(k) 组成Ureduce zi=UTreducex(i),z(i)∈Rk×1 - 完成了从
x(i)→z(i) 的降维转变
代码表示如下:
4 - Choosing the Number of Principal Components 选择 K 的方法
principal components 的数量 K 的选择方法:
- Average squared projection error:
1m∑i=1m∥x(i)−x(i)approx∥2 - Total variation:
1m∑i=1m∥x(i)∥2 - 选择条件:
1m∑i=1m∥x(i)−x(i)approx∥21m∑i=1m∥x(i)∥2≤0.01(or0.05,0.1,…) - 上面的方法比较麻烦,利用之前的 svg 函数的结果能比较简便的计算:
其中,那么判断条件可以变为:S=⎡⎣⎢⎢⎢⎢⎢S11S22⋱Snn⎤⎦⎥⎥⎥⎥⎥ 1−∑i=1kSii∑i=1nSii≤0.01or∑i=1kSii∑i=1nSii≥0.99
综上所述,选择 k 的方法如下:
- 尝试 K =1,2,3 …
- 计算
Ureduce,z(1),z(2),…,z(m),x(1)approx,x(1)approx,…,x(m)approx - 检查:
∑i=1kSii∑i=1nSii≥0.99 是否满足条件
5 - Advice for Applying PCA
- Mapping
x(i)→z(i) should be defined by running PCA only on the training set. This mapping can be applied as well to the examplesx(i)cv andx(i)test in the cross validation and test sets - PCA的应用:
- Compression
- Reduce memory/disk needed to store data
- Speed up learning algorithm
- Visualization
- Compression
- 不要为了避免 overfitting 而去使用 PCA,最好用 regulization 来实现
- 在使用PCA之前,首先要尝试用原始的数据
x(i) ,只有当它不能达到你想要的结果的时候,才可以去考虑使用z(i) .
Before implementing PCA, first try running whatever you want to do with the original/raw datax(i) . Only if that doesn’t do what you want, then implement PCA and consider usingz(i) .
0 0
- 12-Dimensionality Reduction
- 【Stanford机器学习笔记】12-Dimensionality Reduction
- Clustering (番外篇): Dimensionality Reduction
- Week3-4Dimensionality reduction
- 降维 Dimensionality Reduction
- Dimensionality Reduction(降维)
- Dimensionality Reduction—PCA
- 漫谈 Clustering (番外篇): Dimensionality Reduction
- Matlab Toolbox for Dimensionality Reduction
- Matlab Toolbox for Dimensionality Reduction
- 漫谈 Clustering (番外篇): Dimensionality Reduction
- Stanford 机器学习 Dimensionality Reduction
- Matlab Toolbox for Dimensionality Reduction
- Unsupervised dimensionality reduction via PCA
- Stanford ML - Lecture 10 - Dimensionality Reduction
- Machine Learning week 8 Dimensionality Reduction
- Dimensionality Reduction and the Singular Value Decomposition
- The Matlab Toolbox for Dimensionality Reduction
- HDU 2131 水
- OpenGL坐标变换及其数学原理,两种摄像机交互模型(附源程序)
- 80 cell子控件布局 为frame设置实现分类
- Unity3D之NGUI的5种点击事件的实现方式及在3D场景中点透的情况
- Hessian入门相关
- 12-Dimensionality Reduction
- iOS8 毛玻璃效果实现
- 9.1总结
- 零java基础搞定微信Server_3:搭建微信Server本地开发环境
- OpenGL阴影,Shadow Volumes(附源程序,使用 VCGlib )
- 13-Anomaly Detection
- 81 设备支持方向
- OpenGL管线(用经典管线代说着色器内部)
- 前言