En este artículo, discutiremos el método torch.linalg.solve() en PyTorch.
Ejemplo:
Let's consider the linear equations : 6x + 3y = 1 3x - 4y = 2 Then M values can be - [[6,3],[3,-4]] and t is [1,2]
Función torch.linalg.solve()
El método torch.linalg.solve() se usa para resolver un sistema cuadrado de ecuaciones lineales con una solución única. Tomará dos parámetros, en los que el primer parámetro es una array que es un tensor y el segundo parámetro también es un tensor con una dimensión.
Sintaxis : torch.linalg.solve(M, t)
Parámetros :
- M es una array tensorial
- t es un vector tensorial.
Return : Devolverá un tensor.
Ejemplo 1:
En este ejemplo, resolveremos la ecuación lineal – 6x + 3y = 1, 3x – 4y = 2 y comprobaremos si la solución es verdadera o no. Aquí M es [[6,3],[3,-4]] y t [1,2] . Después de eso, aplicaremos el método torch.linalg.solve() para devolver una solución de tensor única. Finalmente, usaremos el método torch.allclose() para verificar si la ecuación es verdadera o no.
Python3
# import torch import torch ''' Let's consider the linear equations : 6x + 3y = 1 3x - 4y = 2 Then M values can be - [[6,3],[3,-4]] and t is [1,2] ''' # consider M which is an 2 D tensor that # has 2 elements each M = torch.tensor([[6., 3.], [3., -4.]]) # consider t which is 1D that has two elements t = torch.tensor([1., 2.]) # Solve the equation using linalg.solve(M,t) solved = torch.linalg.solve(M, t) # display the solved solution print(solved) # check the solution is true or not using # allclose() method print(torch.allclose(M @ solved, t))
Producción:
tensor([ 0.3030, -0.2727]) True
Ejemplo 2:
En este ejemplo, resolveremos la ecuación lineal – 6x + 3y = 1,3x – 4y = 2 y comprobaremos si la solución es verdadera o no. Aquí los elementos de M son [[6,3],[3,-4]] y tis [0,2] . Después de eso, aplicaremos el método torch.linalg.solve() que devolverá una solución de tensor única. Finalmente, usaremos un método torch.allclose() para verificar si la ecuación es verdadera o no.
Python3
# import torch import torch ''' Let's consider the linear equations : 5x - 3y = 0 3x - 4y = 2 Then M values can be - [[5,-3],[3,-4]] and t is [0,2] ''' # consider M which is an 2 D tensor that # has 2 elements each M = torch.tensor([[5., -3.], [3., -4.]]) # consider t which is an 1 D tensor that # has 2 elements t = torch.tensor([0., 2.]) # Solve the equation using linalg.solve(M,t) # method solved = torch.linalg.solve(M, t) # display the solved solution print(solved) # check the solution is true or not using # allclose() method print(torch.allclose(M @ solved, t))
Producción:
tensor([-0.5455, -0.9091]) True
Ejemplo 3:
En este ejemplo, resolveremos la ecuación lineal – 9x – y = 0, 3x – 4y = 0 y comprobaremos si la solución es verdadera o no. Aquí los elementos de M son [[9,-1],[3,-4]] y t [0,0] . Después de eso, aplicaremos el método torch.linalg.solve() que devolverá una solución de tensor única y, por último, usaremos un método torch.allclose() para verificar si la ecuación es verdadera o no.
Python3
# import torch import torch ''' Solve the linear equation - 9x - y = 0, 3x - 4y = 0 and check the solution is true or not Here the elements of M is - [[9,-1],[3,-4]] and t - [0,0]. ''' # consider M which is an 2 D tensor that # has 2 elements each M = torch.tensor([[9., -1.], [3., -4.]]) # consider t which is an 1 D tensor that # has 2 elements t = torch.tensor([0., 0.]) # Solve t using linalg.solve(M,t) method solved = torch.linalg.solve(M, t) # display the solved solution print(solved) # check the solution is true or not using # allclose() method print(torch.allclose(M @ solved, t))
Producción:
tensor([0., -0.]) True
Publicación traducida automáticamente
Artículo escrito por sravankumar8128 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA