13

This question maybe stupid to some of you, but I would like to know whether it is possible to decompose a matrix $M_{m\times n}$ as the product of two vectors, i.e.

$$M_{m\times n} = \vec{y}_{m\times 1}\times\vec{x}_{1\times n}+const.$$

Obviously, this should be true for some cases, but I am not sure whether this conclusion is always hold. Meanwhile, I want to know at what condition, we can do this decomposition and how to find the vectors $\vec{y}$ and $\vec{x}$?

pitfall
  • 551

4 Answers4

7

If you by $\times$ mean the cross product, then this of course doesn't make sense.

If you mean a matrix product, then this also will not work. Take for example $$ \pmatrix{1 & 0 \\ 0 & 1} $$ and assume that $$ \pmatrix{1 & 0 \\ 0 & 1} = \pmatrix{a \\ b}\pmatrix{c & d} = \pmatrix{ac & da \\ bc & bd}. $$ You see that $ac \neq 0$ and that $bd \neq 0$, so $a, b, c, d\neq 0$. So $da\neq 0$ and $bc\neq 0$. (I assume that your constant is zero, otherwise you would just take that constant to be $M$ and $x$ and $y$ both zero vectors.)

Thomas
  • 43,555
7

In general, rank $n$ matrix can be expressed as sum of $n$ rank 1 matrix using singular value decomposition.

When the matrix is rank 1 we can express as you suggested in your question. If it is $>1$, we can't express like that.

Learner
  • 2,696
6

No, simply because the space of matrices is $mn$-dimensional, and the space of pairs of vectors is $(m+n)$-dimensional, which can be much smaller. The best thing one can do is decompose into a sum of $\min(m,n)$ products, and this decomposition is of course not even close to being unique.

Alexander Shamov
  • 4,457
  • 17
  • 28
  • Thank you for your answer. What if we have $M_{m,m}$ is a symmetric matrix, which I believe we can write it as $$$$ – pitfall Mar 10 '13 at 01:34
1

Let us think of this as trying to solve for two vectors $a_{m \times 1},b_{n \times 1}$ given a matrix $A_{m\times n}$ such that $ab^T = A$

Note that the number of variables you have are number of elements in $a$ + number of elements in $b$

$ab^{T}$ gives you a matrix $B_{m \times n}$ with $m\times n$ elements.

$A = B$ if every element of $A$ = every element of $B$.

This means that you need to satisfy $m \times n$ equation with $m+n$ variables. This system doesn't necessarily have a solution unless there are constraints on the elements of $A$ itself.

In general $m \times n \neq (m+n)$

Even when $m+n = mn$ it is not guaranteed that this problem can be solved. consider $A$ to be $2 \times 2 $. You run into issues when one of the entries is zero as shown in one of the above answers.

This was just to give an intuitive picture as to why you can't always express a matrix as a product of two 1-dimensional matrices.