# 主成分分析(PCA)
通过线性投影,将高维数据映射到低维的空间中,并期望目标维度上的方差较大,且不丢失原始数据的准确性。
# 奇异值分解(SVD)
将一个矩阵(不需要是方阵)分解为三个矩阵的乘积,最终结果如下:
$$
A_{[m\times n]} = U_{[m\times m]}\Sigma_{[m\times n]}(V_{[n\times n]})^T
$$
$\Sigma$应该是一个行或列满秩矩阵,对角元素代表奇异值。一般实现时,也可使用一个向量,且其中分量是由大到小排序的,每个分量对原矩阵特征信息的影响依次递减。因此可以通过切除掉较靠后的分量再重新计算乘积的方式实现降维。
示例代码:
```python
count = 160
dig = np.mat(np.eye(count) * sigma[:count])
redata = U[:, :count] * dig * VT[:count, :]
```