对于特定问题,我需要单独使用矩阵乘法来设计矩阵过程的大小调整。给定一个维度为 (a*b,1) 的矩阵A,其中 a 和 b 是整数,我需要找到一种方法将A的大小调整为维度 (a,b),如下所示:
M*A*N = 调整大小(A,a,b)
其中dim(M) = (a,a*b) 和dim(N) = (1,b)。它不必是两个矩阵,但我认为不可能有任何其他方式。
如果不能使用reshapeor vec2mat,则需要分别对 的每个元素进行操作A。
没有这样M的N,你正在寻找。
认为:
resh_A = M*A*N;
让我们研究一下这个方程的一行。假设一行M*A:
temp_i = M(i, :) * A;
因为M(i, :)是1 x a*b和A是a*b x 1;temp_i应该是一个1 x 1矩阵。
现在temp_i * N应该产生结果ith行(或resh_A)。因此resh_A看起来像:
(注意N是1 x b)
temp_1 * N % row1
temp_2 * N % row2
temp_3 * N % row3
...
这不是一般矩阵(它是秩为 1 的矩阵)。