Given the SVD of matrix $A$ and the SVD of diagonal matrix $B$, is there a way or method to construct the SVD of the product $AB$?
3 Answers
Actually there is an answer, but somewhat complex. Denote the SVD decomposition of $A$ by $U^*S^*V'$, denote $\operatorname{qr}(BU) = QR$, and denote SVD decomposition of $RS$ by $U_1^*S_1^*V_1'$ then the SVD decomposition of $BA$ is $(QU_1)S_1(VV_1)'$.
Proof: $BA= BUSV'=QRSV'=(QU_1)S_1(V_1'V') = (QU_1)S_1(VV_1)'$. $QU_1$ is unitary and $VV_1$ is unitary and $S_1$ is diagonal.
Interpretation: the singular values of $BA$ are the singular values of $RS$. So the original singular values are multiplied by the upper triangular $R$ of the qr decomposition of $BU$, i.e., $B$ after unitary transformation by right bases $U$ of $A$.
- 7,963
- 477
-
this should be the best answer. – ArtificiallyIntelligent Nov 15 '18 at 18:39
-
is this correct? Or is the other answer by the same user referring to this one being inaccurate? – glS Nov 16 '18 at 13:53
-
1Since this uses a new SVD (of $RS$), that is as opaque as just taking the the SVD of $BA$ directly. Here the QR and SVD steps just arrive at SVD of $BUS$ (which just omits the $V'$ of $A$), you could also say $BA = U_BS_BV_B'U_AS_AV_A'$ and take the SVD of the middle bit $S_BV_B'U_AS_A = U_XS_XV_X'$ to give $BA = (U_AU_X)S_X(V_BV_X)'$ but this all seems pretty equivalent (in both a computation and explanatory sense) to just taking SVD of BA directly. – Carl Aug 15 '24 at 10:02
There really isn't a simple relationship between the SVD of a product and the SVD of the individual factors.
However, there are methods for forming the SVD of a product of two or more matrices, without forming the matrix product itself (which can be a source of inaccuracy); see for instance this paper by Golub, Solna, and van Dooren.
- 76,540
This won't be a complete answer but maybe a step in the right direction.
Consider the equivalent problem of the SVD of $BA$, where $B$ is diagonal. This is without loss of generality because if we know the SVD of $BA$, then we know the SVD of $(AB)^T=A^TB^T$, which is of the form you mention. We will assume that $B$ has non-zero diagonal elements, such that it has full rank.
Let the SVD of A be $USV^*$, where $U$ and $V$ are unitary, $S$ non-negative diagonal, and $V^*$ is the conjugate transpose of $V$. Further, let $B=QR$ be the unique QR decomposition of $B$ obtained by the Gram-Schmidt method such that the diagonal elements of R are positive, where $Q$ is unitary and $R$ is upper triangular. The positivity of the diagonal elements of $R$ will be useful in what follows.
Since $R$ is upper triangular, and $S$ is diagonal, $RS$ will also be diagonal. Namely, $RS$ will be a diagonal matrix formed of the products of the diagonal elements of $R$ with the corresponding elements of $S$. Since $R$ and $S$ both have positive diagonal elements, so does their product, which we will call $D$. Thus an SVD of $BA$ is given by:
$$BA=QDV^*$$
-
1"Since $R$ is upper triangular, and $S$ is diagonal, $RS$ will also be diagonal". This is not correct, take for example $S=I$, the product is $R$, which is in general not diagonal. This answer is simply wrong. Please consider fixing it or removing it. – Luca Citi Dec 19 '21 at 19:49