1
$\begingroup$

I saw this statement in a lecture note

Assume the generalized SVD of matrices $A\in R^{m\times n}$ and $B\in R^{p\times n}$ given as:

$$U^TAX = diag(\alpha_1, ..., \alpha_n),~ U^TU = I_m$$ $$V^TBX = diag(\beta_1, ..., \beta_q),~ V^TV = I_p, ~q = min\{p, n\}$$

I found that the right singular value vectors of the SVD of matrices $A$ and $B$ here are a same matrix $X$. I don't know how to find the SVD like that. Is that any two matrices with the same number of columns can be decomposed via this way?

$\endgroup$
0

1 Answer 1

1
$\begingroup$

Those notes do not refer to the "usual" SVD, but to the generalized SVD, which is a different decomposition of a pair of matrices (and does not require $X$ to be orthogonal, in particular).

For a quick introduction, you can check the Golub-Van Loan book, for instance.

$\endgroup$
3
  • $\begingroup$ I have been struggling for a few days failing to implement the GSVD algorithm. Do you know where to find an available c implementation? $\endgroup$
    – Shindou
    Commented May 6, 2018 at 16:03
  • $\begingroup$ @Shindou I have only ever used Matlab's library function. There should be an implementation in LAPACK that you can use with a C wrapper, but I can't help you much with finding it. $\endgroup$ Commented May 6, 2018 at 19:52
  • 1
    $\begingroup$ There are several R packages, of which geigen is perhaps the easiest to use, which calculate the eigenvalues & vectors of matrix pairs. Mostly they call LAPACK $\endgroup$ Commented Dec 5, 2019 at 20:22

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .