本文简要介绍python语言中 torch.linalg.solve
的用法。
用法:
torch.linalg.solve(A, B, *, out=None) → Tensor
out(Tensor,可选的) -输出张量。如果
None
则忽略。默认值:None
。RuntimeError - 如果
A
矩阵不可逆或批处理中的任何矩阵A
不可逆。计算具有唯一解的线性方程组的解。
让
是 或者 , 这个函数计算解 的线性系统关联到 , 定义为当且仅当 invertible 时,此线性方程组有一个解。此函数假定 是可逆的。 为
支持 float、double、cfloat 和 cdouble dtypes 的输入。还支持矩阵批次,如果输入是矩阵批次,则输出具有相同的批次尺寸。
让
*
是零个或多个批次维度,如果
A
的形状为(*, n, n)
且B
的形状为(*, n)
(一组向量)或(*, n, k)
形状(一组矩阵或“多个右侧”),则此函数返回X
形状分别为(*, n)
或(*, n, k)
。否则,如果
A
具有形状(*, n, n)
并且B
具有形状(n,)
或(n, k)
,则广播B
分别具有形状(*, n)
或(*, n, k)
。然后,此函数返回生成的一批线性方程组的解。
注意
此函数计算
X =
A
.inverse() @
B
比单独执行计算更快且数值更稳定。注意
当输入在 CUDA 设备上时,此函数将该设备与 CPU 同步。
例子:
>>> A = torch.randn(3, 3) >>> b = torch.randn(3) >>> x = torch.linalg.solve(A, b) >>> torch.allclose(A @ x, b) True >>> A = torch.randn(2, 3, 3) >>> B = torch.randn(2, 3, 4) >>> X = torch.linalg.solve(A, B) >>> X.shape torch.Size([2, 3, 4]) >>> torch.allclose(A @ X, B) True >>> A = torch.randn(2, 3, 3) >>> b = torch.randn(3, 1) >>> x = torch.linalg.solve(A, b) # b is broadcasted to size (2, 3, 1) >>> x.shape torch.Size([2, 3, 1]) >>> torch.allclose(A @ x, b) True >>> b = torch.randn(3) >>> x = torch.linalg.solve(A, b) # b is broadcasted to size (2, 3) >>> x.shape torch.Size([2, 3]) >>> Ax = A @ x.unsqueeze(-1) >>> torch.allclose(Ax, b.unsqueeze(-1).expand_as(Ax)) True
参数:
关键字参数:
抛出:
相关用法
- Python PyTorch solve用法及代码示例
- Python PyTorch sort用法及代码示例
- Python PyTorch saved_tensors_hooks用法及代码示例
- Python PyTorch sqrt用法及代码示例
- Python PyTorch skippable用法及代码示例
- Python PyTorch squeeze用法及代码示例
- Python PyTorch square用法及代码示例
- Python PyTorch save_on_cpu用法及代码示例
- Python PyTorch scatter_object_list用法及代码示例
- Python PyTorch skip_init用法及代码示例
- Python PyTorch simple_space_split用法及代码示例
- Python PyTorch sum用法及代码示例
- Python PyTorch sub用法及代码示例
- Python PyTorch sparse_csr_tensor用法及代码示例
- Python PyTorch sentencepiece_numericalizer用法及代码示例
- Python PyTorch symeig用法及代码示例
- Python PyTorch sinh用法及代码示例
- Python PyTorch sinc用法及代码示例
- Python PyTorch std_mean用法及代码示例
- Python PyTorch spectral_norm用法及代码示例
- Python PyTorch slogdet用法及代码示例
- Python PyTorch symbolic_trace用法及代码示例
- Python PyTorch shutdown用法及代码示例
- Python PyTorch sgn用法及代码示例
- Python PyTorch set_flush_denormal用法及代码示例
注:本文由纯净天空筛选整理自pytorch.org大神的英文原创作品 torch.linalg.solve。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。