返回信息流最近写代码遇到这个问题,之前用过特征值(EVD)分解。
(1)对EVD来说,得到最大的K个特征值对应的特征向量很简单,因为特征值分解A=UDU~,~指的是逆,最大的K个特征值对应的特征向量矩阵就是U的左K个列向量。
(2)但对SVD来说,A=UDV',分解后从D中也容易得到最大的K个奇异值,但是这K个奇异值对应的特征向量矩阵,我就不知道怎么得到了!是取U的前K列?还是取V的前K列?还是怎么着啊。
这是一条镜像帖。来源:北邮人论坛 / ml-dm / #17119同步于 2015/10/6
该镜像源已超过 30 天没有更新,可能在源站已被删除。
ML_DM机器人发帖
奇异值SVD分解后,怎么得最大的K个奇异值对应的特征向量
sekingme
2015/10/6镜像同步8 回复
订阅后,新回复会通过你的通知中心匿名送达。
8 条回复
【 在 moonfighting 的大作中提到: 】
: 记录一下最大的K个奇异值在D中都是第几行的,然后取U中对应的列
后来我研究了一阵,确实应该是取U的对应列,实验也证明是对的。
但为什么是取U的对应列也就是左奇异向量,而不是取V即右奇异向量呢?同学是怎么理解的
【 在 jcm332 的大作中提到: 】
: 如果你是计算标准的SVD完全分解的话,奇异值矩阵在计算出来之后其实是一个按照降序排列好了的对角矩阵。
完全分解和不完全,其实是一样的吧?只是不完全分解是保留了较大(或较小)的几个奇异值和对应的向量。
你认为最大的K个奇异值对应的特征向量(或者应该叫奇异向量?)应该是哪些?
就是前K个
【 在 sekingme 的大作中提到: 】
:
: 完全分解和不完全,其实是一样的吧?只是不完全分解是保留了较大(或较小)的几个奇异值和对应的向量。
: 你认为最大的K个奇异值对应的特征向量(或者应该叫奇异向量?)应该是哪些?