¿Cómo cortar un tensor 3D en Pytorch?

En este artículo, discutiremos cómo cortar un tensor 3D en Pytorch.

Vamos a crear un tensor 3D para demostración. Podemos crear un vector usando la función torch.tensor()

Sintaxis: torch.tensor([valor1,valor2,.valor n])

Código:

Python3

# import torch module
import torch
  
# create an 3 D tensor with 8 elements each
a = torch.tensor([[[1, 2, 3, 4, 5, 6, 7, 8],
                   [10, 11, 12, 13, 14, 15, 16, 17]],
                    
                  [[71, 72, 73, 74, 75, 76, 77, 78],
                   [81, 82, 83, 84, 85, 86, 87, 88]]])
  
# display actual  tensor
print(a)

Producción:

tensor([[[ 1,  2,  3,  4,  5,  6,  7,  8],
        [10, 11, 12, 13, 14, 15, 16, 17]],
       [[71, 72, 73, 74, 75, 76, 77, 78],
        [81, 82, 83, 84, 85, 86, 87, 88]]])

 Cortar un tensor 3D

Rebanar: Rebanar significa seleccionar los elementos presentes en el tensor usando el operador de rebanada “:”. Podemos dividir los elementos usando el índice de ese elemento en particular.

Nota: La indexación comienza con 0

Sintaxis: tensor[tensor_position_start:tensor_position_end, tensor_dimension_start:tensor_dimension_end , tensor_value_start:tensor_value_end]

Parámetros:

  • tensor_position_start: especifica el tensor para comenzar a iterar
  • tensor_position_end: especifica el tensor para detener la iteración
  • tensor_dimension_start: especifica el tensor para iniciar la iteración del tensor en posiciones dadas
  • tensor_dimension_stop: especifica el tensor para detener la iteración del tensor en posiciones dadas
  • tensor_value_start: especifica la posición de inicio del tensor para iterar los elementos dados en las dimensiones
  • tensor_value_stop: especifica la posición final del tensor para iterar los elementos dados en las dimensiones

Ejemplo 1: código de Python para acceder a todos los tensores de 1 dimensión y obtener solo 7 valores en esa dimensión

Python3

# access  all the tensors of 1 
# dimension and get only 7 values 
# in that dimension
print(a[0:1, 0:1, :7])

Producción:

tensor([[[1, 2, 3, 4, 5, 6, 7]]])

Ejemplo 2: código de Python para acceder a todos los tensores de todas las dimensiones y obtener solo 3 valores en cada dimensión

Python3

# access  all the tensors of all
# dimensions and get only 3 values 
# in each dimension
print(a[0:1, 0:2, :3])

Producción:

tensor([[[ 1,  2,  3],
        [10, 11, 12]]])

Ejemplo 3: Acceda a 8 elementos en 1 dimensión en todos los tensores

Python3

# access 8 elements in 1 dimension
# on all tensors
print(a[0:2, 1, 0:8])

Producción:

tensor([[10, 11, 12, 13, 14, 15, 16, 17],
       [81, 82, 83, 84, 85, 86, 87, 88]])

Publicación traducida automáticamente

Artículo escrito por deepakresearch222 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *