matlab svd:
s = svd(X)[U,S,V] = svd(X)
[U,S,V] = svd(X,0)
[U,S,V] = svd(X,'econ')
s为 奇异值矩阵;
u为 XXt 的对应特征向量;
v为 XtX 的对应特征向量。
SVD的第一个作用之低秩近似(Low Rank Approximation):
如果我们只保留前k个最大的奇异值,前k列个U,前k行个V,相当于将数据中占比不大的噪音进行过滤,这样既可以有效地对数据进行泛化,又起到了降维减少运算量的目的.
SVD的第二个作用之特征降维(Dimensionality Reduction):
取 u 或 v 任一特征向量,完成对高维到低维度的映射。