import torch import numpy as np # 奇异值分解:把一个矩阵拆成3个矩阵 a = torch.tensor([[1., 2.], [3., 4.], [5., 6.]]) b = np.array([[1., 2.], [3., 4.], [5., 6.]]) print(torch.linalg.svd(a)) print(np.linalg.svd(b))
torch.svd 和torch.linalg.svd 有区别 ,torch.linalg.svd彩盒np.linalg.svd有一致性
torch.svd() is deprecated in favor of torch.linalg.svd() and will be removed in a future PyTorch release.
返回结果
torch.return_types.linalg_svd(
U=tensor([[-0.2298, 0.8835, 0.4082],
[-0.5247, 0.2408, -0.8165],
[-0.8196, -0.4019, 0.4082]]),
S=tensor([9.5255, 0.5143]),
Vh=tensor([[-0.6196, -0.7849],
[-0.7849, 0.6196]]))
(array([[-0.2298477 , 0.88346102, 0.40824829],
[-0.52474482, 0.24078249, -0.81649658],
[-0.81964194, -0.40189603, 0.40824829]]), array([9.52551809, 0.51430058]), array([[-0.61962948, -0.78489445],
[-0.78489445, 0.61962948]]))



