让我们考虑以下矩阵
2 4
1 3
0 0
0 0
在 python 中创建这个矩阵和相应的奇异值分解可以在 python 中以简单的方式完成
A =np.array([[2,4],[1,3],[0,0],[0,0]])
u,s,v =np.linalg.svd(A)
当我输入相应矩阵的维度时,我得到以下信息
print(u)
print(np.diag(s))
print(v)
[-0.57604844 0.81741556 0. 0. ]
[ 0. 0. 1. 0. ]
[ 0. 0. 0. 1. ]]
[[5.4649857 0. ]
[0. 0.36596619]]
[[-0.40455358 -0.9145143 ]
[-0.9145143 0.40455358]]
因此以下用于重建原始矩阵的代码不起作用
print(u.dot(np.dot(np.diag(s),v)))
我该如何解决这个问题?提前致谢
撒科打诨
相关分类