評價此頁

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)