本文简要介绍python语言中 torch.linalg.cond
的用法。
用法:
torch.linalg.cond(A, p=None, *, out=None) → Tensor
out(Tensor,可选的) -输出张量。如果
None
则忽略。默认值:None
。一个实值张量,即使
A
是复数。RuntimeError - 如果
p
是(‘fro’, ‘nuc’, inf, -inf, 1, -1)
之一且A
矩阵或批次中的任何矩阵A
不是方阵或可逆的。计算矩阵关于矩阵范数的条件数。
让
是 或者 , 这条件编号 矩阵的 定义为A
的条件数测量线性系统AX = B
相对于矩阵范数的数值稳定性。支持 float、double、cfloat 和 cdouble dtypes 的输入。还支持批量矩阵,如果
A
是批量矩阵,则输出具有相同的批量维度。p
定义计算的矩阵范数。支持以下规范:p
矩阵范数
None
2
-norm(最大奇异值)‘fro’
弗罗贝尼乌斯范数
‘nuc’
核规范
inf
max(sum(abs(x), dim=1))
-inf
min(sum(abs(x), dim=1))
1
max(sum(abs(x), dim=0))
-1
min(sum(abs(x), dim=0))
2
最大奇异值
-2
最小奇异值
其中
inf
指的是float(‘inf’)
、NumPy 的inf
对象或任何等效对象。对于
p
是(‘fro’, ‘nuc’, inf, -inf, 1, -1)
之一,此函数使用torch.linalg.norm()
和torch.linalg.inv()
。因此,在这种情况下,矩阵(或批次中的每个矩阵)A
必须是方阵且可逆的。对于
(2, -2)
中的p
,可以根据奇异值 计算此函数在这些情况下,它是使用
torch.linalg.svd()
计算的。对于这些规范,矩阵(或批次中的每个矩阵)A
可以具有任何形状。注意
当输入在 CUDA 设备上时,如果
p
是(‘fro’, ‘nuc’, inf, -inf, 1, -1)
之一,则此函数将该设备与 CPU 同步。例子:
>>> A = torch.randn(3, 4, 4, dtype=torch.complex64) >>> torch.linalg.cond(A) >>> A = torch.tensor([[1., 0, -1], [0, 1, 0], [1, 0, 1]]) >>> torch.linalg.cond(A) tensor([1.4142]) >>> torch.linalg.cond(A, 'fro') tensor(3.1623) >>> torch.linalg.cond(A, 'nuc') tensor(9.2426) >>> torch.linalg.cond(A, float('inf')) tensor(2.) >>> torch.linalg.cond(A, float('-inf')) tensor(1.) >>> torch.linalg.cond(A, 1) tensor(2.) >>> torch.linalg.cond(A, -1) tensor(1.) >>> torch.linalg.cond(A, 2) tensor([1.4142]) >>> torch.linalg.cond(A, -2) tensor([0.7071]) >>> A = torch.randn(2, 3, 3) >>> torch.linalg.cond(A) tensor([[9.5917], [3.2538]]) >>> A = torch.randn(2, 3, 3, dtype=torch.complex64) >>> torch.linalg.cond(A) tensor([[4.6245], [4.5671]])
参数:
关键字参数:
返回:
抛出:
相关用法
- Python PyTorch conv_transpose3d用法及代码示例
- Python PyTorch conv2d用法及代码示例
- Python PyTorch convert用法及代码示例
- Python PyTorch conv1d用法及代码示例
- Python PyTorch constant_用法及代码示例
- Python PyTorch context用法及代码示例
- Python PyTorch conv3d用法及代码示例
- Python PyTorch conj_physical用法及代码示例
- Python PyTorch conj用法及代码示例
- Python PyTorch conv_transpose2d用法及代码示例
- Python PyTorch conv_transpose1d用法及代码示例
- Python PyTorch column_stack用法及代码示例
- Python PyTorch cov用法及代码示例
- Python PyTorch cos用法及代码示例
- Python PyTorch compute_deltas用法及代码示例
- Python PyTorch combinations用法及代码示例
- Python PyTorch collect_all用法及代码示例
- Python PyTorch count_nonzero用法及代码示例
- Python PyTorch cosh用法及代码示例
- Python PyTorch cosine_similarity用法及代码示例
- Python PyTorch complex用法及代码示例
- Python PyTorch corrcoef用法及代码示例
- Python PyTorch copysign用法及代码示例
- Python PyTorch cholesky用法及代码示例
- Python PyTorch cumprod用法及代码示例
注:本文由纯净天空筛选整理自pytorch.org大神的英文原创作品 torch.linalg.cond。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。