Función torch.einsum de PyTorch
Manual de referencia de Pytorch torch
torch.einsumEs una función de PyTorch utilizada para la convención de suma de Einstein, que puede representar de manera concisa diversas operaciones con tensores.
Definición de la función
torch.einsum(equation, *operands)
Ejemplo de uso
Ejemplo
import torch
# Transposición de matriz
A = torch.randn(2, 3)
AT = torch.einsum('ij->ji', A)
print("Forma de la transposición:", AT.shape)
# Multiplicación de matrices
B = torch.randn(3, 4)
C = torch.einsum('ij,jk->ik', A, B)
print("Forma de la multiplicación:", C.shape)
# Producto punto
a = torch.randn(3)
b = torch.randn(3)
dot = torch.einsum('i,i->', a, b)
print("Producto punto:", dot.item())
# Transposición de matriz
A = torch.randn(2, 3)
AT = torch.einsum('ij->ji', A)
print("Forma de la transposición:", AT.shape)
# Multiplicación de matrices
B = torch.randn(3, 4)
C = torch.einsum('ij,jk->ik', A, B)
print("Forma de la multiplicación:", C.shape)
# Producto punto
a = torch.randn(3)
b = torch.randn(3)
dot = torch.einsum('i,i->', a, b)
print("Producto punto:", dot.item())
Otras extensiones