Antes de comprender cómo calcular un histograma de un tensor, debemos tener algunos conocimientos básicos. Los tensores son simplemente objetos matemáticos que se pueden usar para describir propiedades físicas, al igual que los escalares y los vectores. Y un histograma es una representación gráfica que organiza un grupo de puntos de datos en rangos especificados por el usuario.
Sintaxis: torch.histc(input,bins,min,max)
Parámetros:
- entrada: este es el tensor que pasaremos como entrada,
- bins: las torres o barras de un histograma se denominan bins. La altura de cada contenedor muestra cuántos valores de esos datos caen dentro de ese rango.
- min: este es el valor mínimo de las barras, es decir, bin
- max: este es el valor máximo de las barras, es decir, bin
Pasos para calcular el histograma de un tensor
Paso 1: Importe la biblioteca necesaria. En todos los ejemplos, las bibliotecas de Python requeridas son Matplotlib y torch.
Si no están instalados, instálelos usando ‘ pip install matplotlib ‘ y ‘ pip install torch ‘.
La sintaxis para importar una biblioteca desde el módulo de python:
import torch import matplotlib.pyplot as plt #here plt is a alias
Paso 2: crea un tensor con valores aleatorios e imprímelo.
Un tensor Pytorch es lo mismo que una array NumPy, no sabe nada sobre aprendizaje profundo o gráficos o gradientes computacionales, es solo una array n-dimensional que se usará para el cálculo numérico.
Sintaxis para crear un tensor:
Python3
# torch.tensor(data) creates a # torch.Tensor object with the # given data. V_data = [1., 2., 3.] V = torch.tensor(V_data) print(V) # Creates a tensor of matrix M_data = [[1., 2., 3.], [4., 5., 6]] M = torch.tensor(M_data) print(M) # Create a 3D tensor of size 2x2x2. T_data = [[[1., 2.], [3., 4.]], [[5., 6.], [7., 8.]]] T = torch.tensor(T_data) print(T)
Producción :
tensor([1., 2., 3.]) tensor([[1., 2., 3.], [4., 5., 6.]]) tensor([[[1., 2.], [3., 4.]], [[5., 6.], [7., 8.]]])
Paso 3: Calcule torch.histc(input, 5, min=0, max=4), configure bins, min y max en los valores apropiados según sus necesidades.
Sintaxis:
torch.histc(entrada, bins=100, min=0, max=0, *, out=Ninguno) → Tensor
Calcula el histograma de un tensor. Los elementos se clasifican en contenedores de igual ancho entre mínimo y máximo. Si min y max son ambos cero, se utilizan los valores mínimo y máximo de los datos. Los elementos inferiores al mínimo y superiores al máximo se ignoran.
Parámetros:
- input (Tensor) – el tensor de entrada.
- bins (int) – número de bins de histograma
- min (int) – el extremo inferior del rango (inclusive)
- max (int) – extremo superior del rango (inclusive)
Palabra clave utilizada: out (Tensor, opcional) – el tensor de salida.
Devoluciones: histograma representado como un tensor
Paso 4: Imprima el histograma que fue creado por la función torch.histc().
Utilice la función de impresión simple para imprimir el tensor del histograma.
Python3
# Use Google Colab to run these programs import torch GFG = torch.Tensor([1, 7, 1, 4, 1, 4, 3, 4, 1, 7, 2, 4]) hist = torch.histc(GFG, bins=5, min=0, max=4, *, out=None) # Printing the histogram of tensor print("GeeksforGeeks") print("GFG tensor", hist)
Producción :
GeeksforGeeks GFG tensor tensor([0., 4., 1., 1., 4.])
Paso 5: visualiza el histograma como un diagrama de barras
Para visualizar el histograma usaremos la biblioteca matplotlib.
plt.bar(x/y, var_name, align=’center/left/right’, color = [‘anycolor’])
El bloque de código anterior se usa para trazar el histograma como un gráfico de barras.
Parámetros:
- eje x/y: indica que el gráfico de barras está a lo largo del eje x o el eje y
- var_name: Es el nombre de la variable que se le dio al tensor
- alinear: centro, izquierda, derecha
- color : cualquier color
Python3
import torch import matplotlib.pyplot as plt GFG = torch.Tensor([1, 7, 1, 4, 1, 4, 3, 4, 1, 7, 2, 4]) hist = torch.histc(GFG, bins=5, min=0, max=4, out=None) # Printing the histogram of tensor print("GeeksforGeeks") print("GFG tensor", hist) bins = 5 x = range(bins) plt.bar(x, hist, align='center', color=['forestgreen']) plt.xlabel('Bins') plt.ylabel('Frequency') plt.show()
Producción:
GeeksforGeeks
tensor tensor GFG([0., 4., 1., 1., 4.])
Veamos algunos ejemplos más para una mejor comprensión.
Ejemplo 1:
Python3
# example 1 import torch import matplotlib.pyplot as plt # Create a tensor T = torch.Tensor([1, 5, 1, 4, 2, 4, 3, 3, 1, 4, 2, 4]) print("Original Tensor T:\n", T) # Calculate the histogram of the above # created tensor hist = torch.histc(T, bins=5, min=0, max=4) print("Histogram of T:\n", hist)
Producción
Tensor original T:
tensor([1., 5., 1., 4., 2., 4., 3., 3., 1., 4., 2., 4.])
Histograma de T:
tensor([0., 3., 2., 2., 4.])
Ejemplo 2:
Python3
# example 2 import torch import matplotlib.pyplot as plt # Create a tensor T = torch.Tensor([1, 5, 1, 4, 2, 4, 3, 3, 1, 4, 2, 4]) print("Original Tensor T:\n", T) # Calculate the histogram of the above # created tensor hist = torch.histc(T, bins=5, min=0, max=4) # Visualize above calculated histogram # as bar diagram bins = 5 x = range(bins) plt.bar(x, hist, align='center', color=['forestgreen']) plt.xlabel('Bins') plt.ylabel('Frequency') plt.show()
Producción
Tensor original T:
tensor([1., 5., 1., 4., 2., 4., 3., 3., 1., 4., 2., 4.])
Publicación traducida automáticamente
Artículo escrito por patilanurag661 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA