奇异值分解SVD

奇异值分解singular value decomposition,SVD

如下图,一个矩阵可以分解为两个方阵和一个对角矩阵的乘积:


C = m * n;u = m * m;sigma = m * n;v' = n * n

sigma是一个对角矩阵,但通常不是方阵。sigma的对角元素被称为奇异值,与特征值类似。因此与PCA类似,我们可以取sigma中最大的k个,来简化数据:

u' = m * k;sigma' = k * k;v'' = k * v

利用新的三个矩阵u',sigma',v''相乘仍然得到一个m * n的矩阵。如果你选择的k个奇异值所占的所有奇异值比例足够大,那么新得到的m * n的矩阵将与C非常接近。

SVD应用

1、图像压缩,只保留图像分解后的两个仿真和一个对角阵的对角元素就可以恢复出原始图像。

2、数据降维:

原理与PCA一样,SVD计算出的三个矩阵对应的是:

u:CC'的特征向量矩阵; sigma:奇异值矩阵,其中每个元素为特征值开方; v':C'C的特征向量矩阵

因此SVD降维与PCA是一致的,尤其是事先对数据进行了中心化,再奇异值分解,则PCA降维和SVD降维完全一样

SVD计算过程

假设原数据为X,一行代表一个样本,列代表特征。

1)计算X'X,XX';

2)对XX'进行特征值分解,得到的特征向量组成u,lambda_u;

3)对X'X进行特征值分解,得到的特征向量组成v,lambda_v;

4)lambda_u,lambda_v的重复元素开方组成对角矩阵sigma主对角线上的元素;


参考:

[1] http://blog.csdn.net/zk_j1994/article/details/76796616

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值