En este artículo, vamos a ver cómo realizar una multiplicación por elementos en tensores en PyTorch en Python. Podemos realizar sumas por elementos usando el método torch.mul().
Esta función también nos permite realizar multiplicaciones en las mismas o diferentes dimensiones de tensores. Si los tensores tienen diferentes dimensiones, devolverá el tensor de mayor dimensión. también podemos multiplicar una cantidad escalar con un tensor usando la función torch.mul().
Sintaxis: torch.mul(entrada, otro, *, salida=Ninguno)
Parámetros:
- entrada: Este es el tensor de entrada.
- otro: El valor o tensor que se va a multiplicar a cada elemento del tensor.
- out: es el tensor de salida, este es un parámetro opcional.
Return: devuelve un nuevo tensor modificado.
Ejemplo 1:
El siguiente programa es para realizar la multiplicación en dos tensores de una sola dimensión.
Python3
# import torch library import torch # define two tensors tens_1 = torch.Tensor([1, 2, 3, 4, 5]) tens_2 = torch.Tensor([10, 20, 30, 40, 50]) # display tensors print(" First Tensor: ", tens_1) print(" Second Tensor: ", tens_2) # multiply tensors tens = torch.mul(tens_1, tens_2) # display result after perform element wise multiplication print(" After Element-wise multiplication: ", tens)
Producción:
Primer Tensor: tensor([1., 2., 3., 4., 5.])
Segundo Tensor: tensor([10., 20., 30., 40., 50.])
Después de la multiplicación por elementos: tensor ([ 10., 40., 90., 160., 250.])
Ejemplo 2:
El siguiente programa es para saber cómo multiplicar una cantidad escalar a un tensor.
Python3
# import torch library import torch # define a tensors tens_1 = torch.Tensor([100, 200, 300, 400, 500]) # display tensor print(" First Tensor: ", tens_1) # multiply a scalar tensors tens = torch.mul(tens_1, 2) # display result after perform element wise multiplication print(" After multiply 2 in tensor: ", tens)
Producción:
Primer Tensor: tensor([100., 200., 300., 400., 500.])
Después de multiplicar 2 en tensor: tensor([ 200., 400., 600., 800., 1000.])
Ejemplo 3:
El siguiente programa es para realizar multiplicaciones por elementos en tensores 2D.
Python3
# import torch import torch # Define two 2D tensors tens_1 = torch.Tensor([[10, 20], [30, 40]]) tens_2 = torch.Tensor([[1, 2], [3, 4]]) # display tensors print(" First tensor: ", tens_1) print(" Second tensor: ", tens_2) # Multiply above two 2-D tensors tens = torch.mul(tens_1, tens_2) print(" After multiply 2D tensors: ", tens)
Producción:
First tensor: tensor([[10., 20.],[30., 40.]]) Second tensor: tensor([[1., 2.],[3., 4.]]) After multiply 2D tensors: tensor([[ 10., 40.],[ 90., 160.]])
Ejemplo 4:
El siguiente programa es para mostrar cómo realizar la multiplicación por elementos en dos tensores de dimensión diferentes.
Python3
# import torch import torch # Define two 2D tensors tens_1 = torch.Tensor([[10, 20], [30, 40]]) tens_2 = torch.Tensor([2, 4]) # display tensors print(" 2D tensor: ", tens_1) print(" 1D tensor: ", tens_2) # Multiply above two 2-D tensors tens = torch.mul(tens_1, tens_2) print(" After multiply tensors: ", tens)
Producción:
2D tensor: tensor([[10., 20.], [30., 40.]]) 1D tensor: tensor([2., 4.]) After multiply tensors: tensor([[ 20., 80.], [ 60., 160.]])
Publicación traducida automáticamente
Artículo escrito por mukulsomukesh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA