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