En este artículo, vamos a discutir cómo calcular el número de condición de una array en PyTorch . podemos obtener el número de condición de una array utilizando el método torch.linalg.cond().
método torch.linalg.cond()
Este método se utiliza para calcular el número de condición de una array con respecto a una norma de array. Este método acepta una array y un lote de arrays como entrada. Devolverá un tensor con un número de condición calculado. Admite la entrada de tipos de datos double, float, cfloat y cdouble. antes de continuar, veamos la sintaxis de este método.
Sintaxis: torch.linalg.cond(M, P=Ninguno)
Parámetros:
- M (Tensor): Es una array o un lote de arrays.
- P (int, inf, -inf, ‘fro’, ‘nuc’, opcional): Define la norma de la array que se calcula. El valor predeterminado de P 2-norma.
Devoluciones: devolverá un tensor con un número de condición calculado.
Ejemplo 1
En este ejemplo, definimos un tensor usando torch.tensor y calcularemos el número de condición de una array con la ayuda del método torch.linalg.cond .
Python3
# import the required library import torch # define a tensor (matrix) M = torch.tensor([[-0.1345, -0.7437, 1.2377], [0.9337, 1.6473, 0.4346], [-1.6345, 0.9344, -0.2456]]) # display input tensor print("\n Input Matrix M: \n", M) # compute the condition number Output = torch.linalg.cond(M) # Display result print("\n Condition Number: ", Output)
Producción:
Ejemplo 2
En este ejemplo, calcularemos el número de condición de una array para diferentes valores de P con la ayuda del método torch.linalg.cond .
Python3
# import the required library import torch # define a tensor (matrix) M = torch.tensor([[-0.1345, -0.7437, 1.2377], [0.9337, 1.6473, 0.4346], [-1.6345, 0.9344, -0.2456]]) # display input tensor print("\n Input Matrix M: \n", M) print("When P is fro = ", torch.linalg.cond(M, p='fro')) print("When P is nuc =", torch.linalg.cond(M, p='nuc')) print("When P is inf =", torch.linalg.cond(M, p=float('inf'))) print("When P is -inf =", torch.linalg.cond(M, p=float('-inf'))) print("When P is 1 =", torch.linalg.cond(M, p=1)) print("When P is -1 =", torch.linalg.cond(M, p=-1)) print("When P is 2 =", torch.linalg.cond(M, p=2)) print("When P is -2 =", torch.linalg.cond(M, p=-2))
Producción:
Ejemplo 3
En este ejemplo, calcularemos el número de condición de un lote de arrays con la ayuda del método torch.linalg.cond .
Python3
# import the required library import torch # define a tensor (matrix) M = torch.tensor([[[-0.1345, -0.7437, 1.2377], [0.9337, 1.6473, 0.4346], [-1.6345, 0.9344, -0.2456]], [[1.3343, -1.3456, 0.7373], [1.4334, 0.2473, 1.1333], [-1.5341, 1.5348, -1.4567]]]) # display input tensor print(" Input Matrix M: \n", M) # compute the condition number Output = torch.linalg.cond(M) # Display result print("\n Condition Number: ", Output)
Producción:
Publicación traducida automáticamente
Artículo escrito por mukulsomukesh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA