Finding A in Non-Square Matrices: Pseudo Inverse vs Gradient Search

Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
1 reply · 3K views
umut_caglar
Messages
7
Reaction score
0
Hi everybody

I have a question that I have a guess for the answer but I want to be sure

I have an identity

C=A*B

where A,B,C are matrices and in general they are not square

is there a way to find A in terms of B and C by using pseudo inverse matrix or using pseudo inverse might help me in any ways for finding A.

my guess is: 'No, pseudo matrix inverse will not help in anyway'

If pseudo inverse will not work I am planning to do a gradient search for finding the entries of A (do you have any better option?)

If possible say some words about the uniqueness problem. for given A and B, C is unique, but for given B and C, is A unique

Thanks for the help
 
Last edited:
Physics news on Phys.org
Hi

I found solution to my problem, let me share it in case someone else might need it;

lets assume C=A*B
and A, B, C are matrices with dimensions $$ A_{(m,n)}, B_{(n,k)}, C_{(m,k)} $$

Assume we are trying to find A for given B and C

Then the number of equations we have is m*k, one equation for each entry of C matrix
The number of unknowns are m*n, each entry in the A matrix is an unknown

So if number of equations is greater then or equal to the number of unknowns then there is a unique solution. In other words if [itex]m*k \geq m*n[/itex] or simply [itex]k \geq n[/itex] then there is a unique solution.

If there is a unique solution then

C=A*B can be re written as A=C*pinv(B)

where pinv stands for 'pseudo inverse'

if there is no unique solution; i.e [itex]k<n[/itex], then one need to go to gradient search and statistical methods to find possible candidates for A matrix