Como funciona

Un tensor es una generalización de vectores y matrices a N dimensiones. Un escalar es un tensor 0D, un vector es 1D y una matriz es 2D. En IA, los tensores representan imágenes, texto convertido a números y pesos de modelos.

Las operaciones con tensores, multiplicación, convolución, atención, se aceleran con GPUs y TPUs, que procesan miles de operaciones en paralelo. El broadcasting permite operar tensores de formas distintas de forma automática.

Los errores de shape son comunes: dimensiones incompatibles provocan fallos en tiempo de ejecución. Entender la forma de cada tensor es esencial para depurar.

Ejemplo práctico

Una imagen a color de 224x224 píxeles se convierte en un tensor de forma (3, 224, 224): 3 canales (RGB), 224 de alto y 224 de ancho. Un lote de 32 imágenes tiene forma (32, 3, 224, 224).

Python
import torch

img = torch.randn(3, 224, 224)  # tensor 3D
batch = torch.randn(32, 3, 224, 224)  # tensor 4D
print(batch.shape)  # torch.Size([32, 3, 224, 224])

a = torch.randn(3, 1)
b = torch.randn(1, 4)
c = a + b  # shape (3, 4)

Para qué sirve

Representar y manipular datos en modelos de IA. Entender tensores es esencial para trabajar con frameworks como PyTorch y TensorFlow, depurar errores de shape y optimizar memoria.

Los tensores también son la base de las operaciones de GPU: cuanto más eficiente sea el uso de tensores, más rápido será el entrenamiento y la inferencia.