PyTorch es una biblioteca de aprendizaje automático de código abierto que se utiliza para el aprendizaje profundo con más flexibilidad y viabilidad. Esta es una extensión de NumPy .
Para funciones estadísticas para muestreo aleatorio , veamos cuáles son junto con sus implementaciones sencillas. Para ejecutar todo esto, el primer paso es importar Pytorch por antorcha de importación. Hay 5 funciones:
- antorcha.bernoulli()
- antorcha.normal()
- antorcha.poisson()
- antorcha.randn()
- antorcha.randperm()
1) función antorcha.bernoulli():
Esta función simplemente convierte todas las entradas en números aleatorios binarios (0 o 1) de una distribución de Bernoulli . La forma de salida es la misma que los datos ingresados en el código.
Sintaxis-
torch.bernoulli(entrada, *, generador=Ninguno, salida=Ninguno) → Tensor
Parámetros-
input (Tensor): el tensor de entrada de valores de probabilidad para la distribución de Bernoulli
Argumento clave-
- generador (torch.Generator, opcional): un generador de números pseudoaleatorios para el muestreo
- out (Tensor, opcional) – el tensor de salida.
Ejemplo:
En este ejemplo, veamos una forma básica simple generada aleatoriamente y generémosla en la distribución de Bernoulli.
Python3
import torch # this function will make a # tensor of 5X5 array with # random numbers rand_matrix = torch.rand(5, 5) print(rand_matrix) # Bernoulli distribution # this function will do the bernoulli # distribution on the given matrix and # form the new tensor torch.bernoulli(rand_matrix)
Producción:
tensor([[0.5010, 0.0622, 0.3710, 0.3325, 0.5136],
[0,0790, 0,6433, 0,8819, 0,3770, 0,8236],
[0,3458, 0,9933, 0,2282, 0,6544, 0,6823],
[0,5454, 0,5916, 0,2471, 0,6174, 0,1676],
[0,8980, 0,4162, 0,8114, 0,3744, 0,9957]])
tensor([[0., 0., 0., 0., 0.],
[0., 1., 1., 0., 0.],
[0., 1., 0., 0., 0.],
[1., 0., 0., 0., 1.],
[1., 1., 1., 0., 1.]])
2) función antorcha.normal() :
Esta función trabaja en la teoría de la Distribución Normal . La función devuelve un tensor de números aleatorios en el que se da la media y la desviación estándar. En esto hay 2 parámetros – a) media – es un tensor con la media de la distribución normal de cada elemento de salida. b) tensor estándar con una desviación estándar
Nota: No es necesario que la forma de la media y la estándar sea la misma, pero el número total de elementos en el tensor es el mismo.
Sintaxis-
torch.normal(mean, std, *, generator=Ninguno, out=Ninguno) → Tensor
Parámetros-
- media (Tensor) – el tensor de medias por elemento
- std (Tensor) – el tensor de desviaciones estándar por elemento
Argumento clave-
- generador (torch.Generator, opcional): un generador de números pseudoaleatorios para el muestreo
- out (Tensor, opcional) – el tensor de salida.
Ejemplo:
En este ejemplo, generaremos números aleatorios con la media y la desviación estándar proporcionadas en la función torch.normal().
Python3
# this function have 2 parameters, # and will form the tensor of # normal distribution # normal(mean,std) # mean, giving a range of mean # std,dive the standard in the given range torch.normal(mean=torch.arange(12., 22.), std=torch.arange(1, 0, -0.1))
Producción:
tensor([12.2238, 12.8651, 15.5746, 14.7285, 16.3280, 17.4913, 17.8418, 19.5997,
19.8890, 21.0208])
3) función antorcha.poisson() :
La salida de esta función es del mismo tamaño que la entrada con cada elemento obtenido de Poisson Distribution. Esta distribución muestra cuántas veces es probable que ocurra un evento en un período de tiempo determinado.
Sintaxis:
torch.poisson(entrada, generador=Ninguno) → Tensor
Parámetros:
entrada (Tensor) – el tensor de entrada que contiene las tasas de la distribución de Poisson
Argumentos clave:
generador (torch.Generator, opcional): un generador de números pseudoaleatorios para el muestreo
Ejemplo:
En este ejemplo, generaremos la array de tensor aleatorio de 4×4 usando la función torch.poisson() en python.
Python3
# generating the random tensor # matrix of 4X4 rates_torch = torch.rand(4, 4) * 10 print(rates_torch) # this function will do the poisson # distribution of the given tensor # and will give new tensor # poisson(param),this param is the # tensor matrix of 4X4 torch.poisson(rates_torch)
Producción:
tensor([[7.5055, 6.9471, 7.9227, 2.2798], [5.0238, 9.1469, 5.4483, 0.1173], [1.3271, 0.0355, 5.4621, 1.8165], [5.1992, 2.9028, 0.2533, 3.8208]]) tensor([[ 8., 11., 10., 5.], [ 6., 12., 5., 0.], [ 2., 0., 5., 0.], [ 4., 2., 0., 2.]])
4) función antorcha.randn():
Esta función devuelve un tensor con números aleatorios de una distribución normal con media 0 y varianza 1 (Distribución normal estándar).
Sintaxis:
torch.randn(*size, *, out=Ninguno, dtype=Ninguno, layout=torch.strided, device=Ninguno, require_grad=False) → Tensor
Devuelve un tensor lleno de números aleatorios de una distribución normal con media 0 y varianza 1 (también llamada distribución normal estándar)
Parámetros:
tamaño (int…) – una secuencia de enteros que define la forma del tensor de salida. Puede ser un número variable de argumentos o una colección como una lista o tupla.
Argumentos clave:
- generador (torch.Generator, opcional): un generador de números pseudoaleatorios para el muestreo
- out (Tensor, opcional) – el tensor de salida.
- dtype (torch.dtype, opcional): el tipo de datos deseado del tensor devuelto. Predeterminado: si Ninguno, utiliza un valor predeterminado global (ver torch.set_default_tensor_type()).
- diseño (torch.layout, opcional): el diseño deseado del tensor devuelto. Predeterminado: torch.strided.
- dispositivo (torch.device, opcional) – el dispositivo deseado del tensor devuelto. Predeterminado: si Ninguno, usa el dispositivo actual para el tipo de tensor predeterminado (ver torch.set_default_tensor_type()). El dispositivo será la CPU para los tipos de tensores de CPU y el dispositivo CUDA actual para los tipos de tensores de CUDA.
- require_grad (bool, opcional): si autograd debe registrar operaciones en el tensor devuelto. Valor predeterminado: falso.
Ejemplo:
En este ejemplo, usaremos la función torch.randn() para crear la array 4×4 pasando 4 y 4 a la función en python.
Python3
# randn function has two parameters # for making 2X2 matrix, # it can have 1 parameter also for # 1-D matrix the below function # will five a tensor of the random # generated matrix torch.randn(4,4) #2-D matrix
Producción:
tensor([[ 0.1073, 0.8425, -0.4281, 0.2010], [ 1.3098, -0.0065, -1.9434, 0.1854], [-0.9948, 0.5385, -0.7217, -0.4963], [ 2.8455, -0.2791, -0.1963, 1.4643]])
5) función antorcha.randperm():
Esta función devuelve una permutación aleatoria de números enteros.
Sintaxis:
torch.randperm(n, *, generator=Ninguno, out=Ninguno, dtype=torch.int64, layout=torch.strided, device=Ninguno, require_grad=False, pin_memory=False) → Tensor
Devuelve una permutación aleatoria de números enteros de 0 a n – 1.
Parámetros:
n (int) – el límite superior (exclusivo)
Argumentos clave:
- generador (torch.Generator, opcional): un generador de números pseudoaleatorios para el muestreo
- out (Tensor, opcional) – el tensor de salida.
- dtype (torch.dtype, opcional): el tipo de datos deseado del tensor devuelto. Valor predeterminado: torch.int64.
- diseño (torch.layout, opcional): el diseño deseado del tensor devuelto. Predeterminado: torch.strided.
- dispositivo (torch.device, opcional) – el dispositivo deseado del tensor devuelto. Predeterminado: si Ninguno, usa el dispositivo actual para el tipo de tensor predeterminado (ver torch.set_default_tensor_type()). El dispositivo será la CPU para los tipos de tensores de CPU y el dispositivo CUDA actual para los tipos de tensores de CUDA.
- require_grad (bool, opcional): si autograd debe registrar operaciones en el tensor devuelto. Valor predeterminado: falso.
- pin_memory (bool, opcional): si se establece, el tensor devuelto se asignará en la memoria anclada. Funciona solo para tensores de CPU. Valor predeterminado: falso.
Ejemplo:
En este ejemplo, estamos generando números aleatorios del 0 al 5 simplemente pasando el 6 como parámetro a la función torch.randperm() en python.
Python3
# this function will give the # random permutation of the # given range, # if randperm(n), then it will # give 0 to n-1 random permutated # sequence torch.randperm(6)
Producción:
tensor([4, 1, 0, 2, 3, 5])
Publicación traducida automáticamente
Artículo escrito por mayank_verma_mayo y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA