本文簡要介紹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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。