前言
PCA运用线性代数进行数据降维,属于无监督学习方法之一。其实现过程为通过寻找k个向量,将数据投影到这k个向量展开的线性子空间上,以最小化投影误差。
一、PAC与线性回归之间的关系
1、线性回归的目的是给定输入特征量x,预测出某变量y的值。因此在线性回归中会拟合一条直线,使得预测值与真实值之间的距离最小。PCA的目的是将数据投影到低维特征空间,使得投影误差最小。 2、线性回归中用所有的x值来预测一个特殊的变量y。而PCA中,所有特征向量
x
1
,
x
2
,
.
.
.
x
n
x_{1},x_{2},...x_{n}
x1?,x2?,...xn?是等价的。
二、PCA算法
训练集:有m个样本,每个样本的特征维度为n
x
(
1
)
,
x
(
2
)
,
.
.
.
x
(
m
)
x^{(1)},x^{(2)},...x^{(m)}
x(1),x(2),...x(m)
数据预处理(特征缩放/均值归一化)
1、计算每个特征的均值
2、每个特征减去其均值
3、如果不同的特征具有不同的尺度,如x1表示房子的大小,x2表示卧室的数量,对特征进行缩放,使其具有相同的范围
特征均值的计算公式为:
μ
j
=
1
m
∑
i
=
1
m
x
j
(
i
)
\mu_{j}=\frac{1}{m}\sum\limits_{i=1}^{m}x_{j}^{(i)}
μj?=m1?i=1∑m?xj(i)?
将n维数据降到k维:
1、计算协方差矩阵
2、求解特征值和单位特征向量e
3、按照特征值从大到小的顺序,排列单位特征向量,得到转换矩阵P,并依据PX计算出主成分矩阵
4、用特征值计算主成分的方差贡献率和累计方差贡献率,选择k个主成分
降维之主成分分析法
|