¿Cómo encontrar los elementos k-ésimo y «k» superior de un tensor en PyTorch?

En este artículo, vamos a ver cómo encontrar los elementos k-ésimo y ‘k’ superior de un tensor. 

Entonces podemos encontrar el k-ésimo elemento del tensor usando torch.kthvalue() y podemos encontrar los elementos ‘k’ superiores de un tensor usando los métodos torch.topk(). 

  • Función torch.kthvalue(): Primero, esta función ordena el tensor en orden ascendente y luego devuelve el k-ésimo elemento del tensor ordenado y el índice del k-ésimo elemento del tensor original. 

Sintaxis: torch.kthvalue(input_tensor, k, dim=Ninguno, keepdim=False, out=Ninguno)

Parámetros: 

  • Input_tensor: tensor.
  • k: k es un número entero y es para el k-ésimo elemento más pequeño del tensor .
  • dim: dim es para que la dimensión encuentre el k-ésimo valor a lo largo del tensor.
  • keepdim (bool): keepdim es para si el tensor de salida tiene dim retenido o no.

Devolución: este método devuelve una tupla (valores, índices) del k-ésimo elemento del tensor.

  • Función torch.topk(): Esta función nos ayuda a encontrar los elementos ‘k’ superiores de un tensor dado. devolverá los elementos ‘k’ superiores del tensor y también devolverá los índices de los elementos ‘k’ superiores en el tensor original.

Sintaxis: torch.topk(input_tensor, k, dim=Ninguno, mayor=Verdadero, ordenado=Verdadero, fuera=Ninguno) 

Parámetros:

  • input_tensor: tensor.
  • k : k es un valor entero y es para k en top-k.
  • dim: el dim es para que la dimensión se ordene a lo largo del tensor.
  • más grande: se usa para controlar si se devuelven los elementos de tensor más grandes o más pequeños.
  • sorted: controla si devolver los elementos en orden ordenado.

Retorno: esta función devuelve los ‘k’ elementos más grandes del tensor a lo largo de una dimensión dada.

Ejemplo 1: El siguiente programa es para encontrar el k-ésimo elemento de un tensor.

Python3

# import torch library
import torch
  
# define a tensor
tens = torch.Tensor([4, 5, -3, 9, 7])
print("Original Tensor:\n", tens)
  
# find 3 largest element from the tensor
value, index = torch.kthvalue(tens, 3)
  
# print value along with index
print("\nIndex:", index, "Value:", value)

Producción:

Ejemplo 2: El siguiente programa es para encontrar los k elementos superiores del tensor

Python3

# import torch library
import torch
  
# define tensor
tens = torch.Tensor([5.344, 8.343, -2.398, -0.995, 5, 30.421])
print("Original tensor: ", tens)
  
# find top 2 elements
values, indexes = torch.topk(tens, 2)
  
# print top 2 elements
print("Top 2 element values:", values)
  
  
# print index of top 2 elements
print("Top 2 element indices:", indexes)

Producción:

Publicación traducida automáticamente

Artículo escrito por mukulsomukesh 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 *