Empalme de tensor/matriz, empalme de expansión de dimensión y expansión de dimensión

1. Empalme tensorial, empalme de expansión dimensional y expansión dimensional

1.1 antorcha.cat

En PyTorch, puede utilizar torch.catla 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.stackLa 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.unsqueezela 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.concatenatela función para realizar operaciones de empalme de matrices. np.concatenateSe 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.stackLa 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.newaxisla 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)

Supongo que te gusta

Origin blog.csdn.net/weixin_45471642/article/details/130674641
Recomendado
Clasificación