2

Assume a matrix A, and I know the left singular vectors of SVD(A(:,i)), i=1,2,...,# of columns, is there a simple/fast transformation to obtain the left singular vectors of SVD(A) (the whole matrix)?

Gezheng
  • 21
  • 2
    Isn't the SVD of a (nonzero) column vector $u$ just $[u/| u |] [| u |] [1]$? How could you reconstruct an SVD from this? – Ian Aug 28 '15 at 15:08

2 Answers2

2

Absolutely not. The singular vectors of a single vector are trivial to calculate (there is a direct method you can use to do it). The singular vectors of a matrix are very hard to calculate (there is no, and there can be no, direct method if $n\geq 5$ where $n$ is the size of the matrix)

5xum
  • 123,496
  • 6
  • 128
  • 204
0

Start with a matrix $\mathbf{A}\in\mathbb{R}^{m/times n}_{\rho}$ and the definition of the singular value decomposition as $$ \mathbf{A} = \mathbf{U} \, \Sigma \, \mathbf{V}^{*}. $$ Given $\mathbf{A}$ and $\mathbf{U}$, can we quickly compute $\mathbf{V}$?

@5xum provides the most general answer.

What we have is the identity, $$ \mathbf{U}^{*} \, \mathbf{A} = \Sigma \, \mathbf{V}^{*}. $$ To move beyond this, we need either the singular values $\sigma_{k}$, $k=1,\rho$ to compute $\mathbf{V}$: $$ \left[ \begin{array}{cc} \mathbf{S}^{-1} & \mathbf{0} \\ \mathbf{0} & \mathbf{0} \end{array} \right] % \left[ \begin{array}{c} \color{blue}{\mathbf{U}^{*}_{\mathcal{R}}} \\ \color{red}{\mathbf{U}^{*}_{\mathcal{N}}} \end{array} \right] \mathbf{A} = \left[ \begin{array}{c} \color{blue}{\mathbf{V}^{*}_{\mathcal{R}}} \\ \mathbf{0} \end{array} \right] % % $$ or we need $\mathbf{V}$ to compute the singular value spectrum $$ \mathbf{U}^{*} \, \mathbf{A} \, \mathbf{V} = \Sigma $$

dantopa
  • 10,342