1. Empalme tensorial, empalme de expansión dimensional y expansión dimensional
1.1 antorcha.cat
En PyTorch, puede utilizar torch.cat
la función para realizar operaciones de empalme de matrices. torch.cat puede unir dos o más tensores y se pueden especificar las dimensiones de empalme. Por ejemplo, suponiendo que tenemos dos tensores de tamaño (3, 4) y (3, 5), podemos concatenarlos en la segunda dimensión con el siguiente código:
import torch
a = torch.randn(3, 4)
b = torch.randn(3, 5)
c = torch.cat([a, b], dim=1)
print(c.shape)
La salida es:
torch.Size([3, 9])
1.2 pila de antorchas
torch.stack
La función puede concatenar varios tensores a lo largo de la dimensión recién creada, por ejemplo:
import torch
a = torch.randn(3, 4)
b = torch.randn(3, 4)
c = torch.stack([a, b], dim=0)
print(c.shape)
La salida es:
torch.Size([2, 3, 4])
1.3 antorcha.unsqueeze
Si desea extender un tensor a una nueva dimensión, puede usar torch.unsqueeze
la función, por ejemplo:
import torch
a = torch.randn(3, 4)
b = torch.unsqueeze(a, dim=0)
print(b.shape)
La salida es:
torch.Size([1, 3, 4])
2 Empalme de matriz, empalme de expansión de dimensión y expansión de dimensión
2.1 np.concatenar
En NumPy, puede utilizar np.concatenate
la función para realizar operaciones de empalme de matrices. np.concatenate
Se pueden concatenar dos o más matrices y se pueden especificar las dimensiones de la concatenación. Por ejemplo, suponiendo que tenemos dos matrices de tamaño (3, 4)
y (3, 5)
, podemos concatenarlas en la segunda dimensión con el siguiente código:
import numpy as np
a = np.random.randn(3, 4)
b = np.random.randn(3, 5)
c = np.concatenate([a, b], axis=1)
print(c.shape)
La salida es:
(3, 9)
2.2 np.pila
np.stack
La función puede concatenar varias matrices a lo largo de la dimensión recién creada, por ejemplo:
import numpy as np
a = np.random.randn(3, 4)
b = np.random.randn(3, 4)
c = np.stack([a, b], axis=0)
print(c.shape)
La salida es:
(2, 3, 4)
2.3 np.nuevoeje
Si desea extender una matriz a una nueva dimensión, puede usar np.newaxis
la función, por ejemplo:
import numpy as np
a = np.random.randn(3, 4)
b = a[np.newaxis, ...]
print(b.shape)
La salida es:
(1, 3, 4)