评价此页

torch.linalg.solve_ex#

torch.linalg.solve_ex(A, B, *, left=True, check_errors=False, out=None)#

一个 solve() 的版本,除非 check_errors= True,否则不执行错误检查。它还返回 LAPACK 的 getrf 返回的 info 张量。

注意

当输入在 CUDA 设备上时,此函数仅在 check_errors= True 时进行同步。

警告

此函数是“实验性的”,未来 PyTorch 版本中可能会发生变化。

参数

A (Tensor) – 形状为 (*, n, n) 的张量,其中 * 是零个或多个批次维度。

关键字参数
  • left (bool, optional) – 是否求解方程组 AX=BAX=BXA=BXA = B。默认值:True

  • check_errors (bool, optional) – 控制是否检查 infos 的内容,并在其非零时引发错误。默认值:False

  • out (tuple, optional) – 用于写入输出的两个张量的元组。如果为 None 则忽略。默认为 None

返回

一个命名元组 (result, info)

示例

>>> A = torch.randn(3, 3)
>>> Ainv, info = torch.linalg.solve_ex(A)
>>> torch.dist(torch.linalg.inv(A), Ainv)
tensor(0.)
>>> info
tensor(0, dtype=torch.int32)