m = 10
n = 10
d = 10
np.random.seed(0)
M = np.random.randn(m *n,1 )
A = np.random.randn(d, m* n)
b = A.dot(M)
print(M)
print(np.linalg.pinv(A).dot(b))
有人可以告诉我为什么这两张照片不能产生相同的答案吗?
答案 0 :(得分:1)
您的系统为under-determined-等式(d=10
)少于未知数(m*n=100
),因为您的A矩阵(大小为(10,100)
)的行少于列。在这种情况下,您通常不能期望获得独特的解决方案,可能有无数种。如果您正在寻找一种更好的方法来进行这些计算,this似乎是很有希望的参考。