一个矩阵运算问题
矩阵运算问题:X=A*B,三个矩阵,X为n*m维,A为n*r维,B为r*m维
现在已知X与A的情况下,如何求B矩阵?
举个例子:
A=randn(5,10);
B=randn(10,15);
X=A*B;
我试过用BB=pinv(A)*X,但是得到BB矩阵与还是和原来的B矩阵完全不相同?请教如何求解?
回复 楼主 bbok 的帖子
应该可以这样理解:如果转化为方程,要求解B,则有r*m个未知量,而有n*m个方程,所以如果r*m大于n*m,则方程欠定,一般解不唯一。楼主给的例子,由于10*15大于5*15,所以解也应该不唯一。
一个例子:
a=rand(3,2);
b=rand(2,4)
x=a*b;
c=pinv(a)*x
~~~~~~~~~~~~~~~~~~~
b =
0.5060 0.8909 0.5472 0.1493
0.6991 0.9593 0.1386 0.2575
c =
0.5060 0.8909 0.5472 0.1493
0.6991 0.9593 0.1386 0.2575 感谢冬春夏秋的回复
页:
[1]