Pytorch - var

Pytorch - var
Veremos cómo devolver la varianza de un tensor usando var () en este tutorial de pytorch.

Pytorch es un marco de código abierto disponible con un lenguaje de programación de Python. Tensor es una matriz multidimensional que se utiliza para almacenar los datos. Para usar un tensor, tenemos que importar el módulo de antorcha. Para crear un tensor, el método utilizado es tensor ().

Sintaxis:

antorcha.Tensor (datos)

Donde los datos son una matriz multidimensional.

Var ()

Var () en pytorch se usa para devolver la varianza de los elementos presentes en el objeto tensor de entrada.

Sintaxis:

antorcha.var (tensor, tenu)

Dónde:

1. El tensor es el tensor de entrada.

2. Dim es reducir la dimensión. Dim = 0 Especifica la comparación de columna que obtiene la varianza a lo largo de una columna y Dim = 1 especifica la comparación de filas que obtiene la varianza a lo largo de la fila.

Ejemplo 1:

En este ejemplo, crearemos un tensor con 2 dimensiones que tenga 3 filas y 5 columnas y aplicaremos la función var () en filas y columnas.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor con 2 dimensiones (3 * 5)
#Con elementos aleatorios usando la función randn ()
datos = antorcha.Randn (3,5)
#mostrar
Imprimir (datos)
imprimir()
#Varianza a lo largo de columnas
Imprimir ("Varianza entre columnas:")
imprimir (antorcha.var (datos, dim = 0))
imprimir()
#Varianza a lo largo de filas
Imprimir ("Varianza en las filas:")
imprimir (antorcha.var (datos, dim = 1))

Producción:

tensor ([[0.8844, -0.6416, -0.5520, 0.3798, -0.0587],
[0.0633, 1.9403, -1.3161, -0.5293, 0.4061],
[1.3974, 0.9784, -0.1111, -1.7721, -0.5881]])
Varianza a través de columnas:
tensor ([0.4529, 1.7027, 0.3717, 1.1669, 0.2475])
Varianza a través de filas:
tensor ([0.4115, 1.4706, 1.6017])

Podemos ver que la varianza se devuelve a través de las columnas y filas.

Ejemplo 2:

Cree un tensor con una matriz 5 * 5 y devuelva la varianza a través de las filas y columnas.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor con 2 dimensiones (5 * 5)
#Con elementos aleatorios usando la función randn ()
datos = antorcha.Randn (5,5)
#mostrar
Imprimir (datos)
imprimir()
#Varianza a lo largo de columnas
Imprimir ("Varianza entre columnas:")
imprimir (antorcha.var (datos, dim = 0))
imprimir()
#Varianza a lo largo de filas
Imprimir ("Varianza en las filas:")
imprimir (antorcha.var (datos, dim = 1))

Producción:

tensor ([[0.1260, 1.1681, 0.2191, -0.3685, -2.0660],
[0.5840, 0.2955, 0.2362, -1.2847, 1.3656],
[0.2925, 1.3555, -1.2881, 0.9167, 0.1882],
[-0.7466, 0.2770, 1.1448, -1.2779, -0.2764],
[-1.1316, -0.6998, 2.5051, -0.6687, -0.1624]])
Varianza a través de columnas:
tensor ([0.5318, 0.6768, 1.9404, 0.8168, 1.5226])
Varianza a través de filas:
tensor ([1.4157, 0.9283, 1.0072, 0.8749, 2.1285])

Podemos ver que se devolvió la varianza a través de las filas y columnas.

Sin el parámetro DIM

Si no especificamos el parámetro DIM, devuelve la varianza de todo el tensor.

Ejemplo 1:

Crea un tensor 2D con una matriz 5*5 y devuelve la varianza.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor con 2 dimensiones (5 * 5)
#Con elementos aleatorios usando la función randn ()
datos = antorcha.Randn (5,5)
#mostrar
Imprimir (datos)
imprimir()
#Varianza
Imprimir ("Varianza:")
imprimir (antorcha.var (datos))

Producción:

tensor ([[-0.0151, -0.7915, -0.9665, -1.4131, 0.9591],
[-0.6647, 0.6698, -1.3399, -0.0513, -0.0519],
[1.0328, -0.3692, 1.0579, 0.5857, 0.3899],
[-0.5928, 1.2447, -0.5782, 1.4461, -0.4847],
[-1.3246, -0.7092, 0.1471, 0.5752, 3.1142]])
Varianza:
tensor (1.1131)

Ejemplo 2:

Crear un tensor 1D con 5 valores y devolver la varianza.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor con 5 valores numéricos
datos = antorcha.tensor ([10.6,20.7,30.6,40.4,50.0])
#mostrar
Imprimir (datos)
imprimir()
#Varianza
Imprimir ("Varianza:")
imprimir (antorcha.var (datos))

Producción:

tensor ([10.6000, 20.7000, 30.6000, 40.4000, 50.0000])
Varianza:
tensor (242.5780)

Trabajar con CPU

Si desea ejecutar una función var () en la CPU, tenemos que crear un tensor con una función CPU (). Esto se ejecutará en una máquina CPU.

Cuando creamos un tensor, esta vez, podemos usar la función CPU ().

Sintaxis:

antorcha.Tensor (datos).UPC()

Ejemplo 1:

En este ejemplo, crearemos un tensor con 2 dimensiones que tenga 3 filas y 5 columnas con la función CPU () y aplicaremos la función var () en filas y columnas.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor con 2 dimensiones (3 * 5)
#Con elementos aleatorios usando la función randn ()
datos = antorcha.Randn (3,5).UPC()
#mostrar
Imprimir (datos)
imprimir()
#Varianza a lo largo de columnas
Imprimir ("Varianza entre columnas:")
imprimir (antorcha.var (datos, dim = 0))
imprimir()
#Varianza a lo largo de filas
Imprimir ("Varianza en las filas:")
imprimir (antorcha.var (datos, dim = 1))

Producción:

tensor ([[0.1278, 1.3140, 0.5116, -0.1922, 0.9349],
[-1.1720, 1.4805, -0.2628, 0.5970, -0.6479],
[-1.7930, 0.2337, -1.3810, -0.9092, -0.0778]])
Varianza a través de columnas:
tensor ([0.9607, 0.4582, 0.9053, 0.5676, 0.6427])
Varianza a través de filas:
tensor ([0.3655, 1.1027, 0.7312])

Podemos ver que la varianza se devuelve a través de las columnas y filas.

Ejemplo 2:

Cree un tensor con una matriz 5 * 5 con la función CPU () y devuelva la varianza a través de las filas y columnas.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor con 2 dimensiones (5 * 5)
#Con elementos aleatorios usando la función randn ()
datos = antorcha.Randn (5,5).UPC()
#mostrar
Imprimir (datos)
imprimir()
#Varianza a lo largo de columnas
Imprimir ("Varianza entre columnas:")
imprimir (antorcha.var (datos, dim = 0))
imprimir()
#Varianza a lo largo de filas
Imprimir ("Varianza en las filas:")
imprimir (antorcha.var (datos, dim = 1))

Producción:

tensor ([[-0.3587, 1.2200, -0.8744, -0.8184, -1.1658],
[0.1428, -0.6122, -0.9894, 1.8219, -0.0248],
[-1.9626, -0.3423, 1.3046, 0.9737, 1.1691],
[-0.1054, -0.3935, -0.3632, -0.7317, -0.1751],
[0.9651, -0.6595, 0.3152, 0.6908, -0.0370]])
Varianza a través de columnas:
tensor ([1.1489, 0.6115, 0.9007, 1.2999, 0.6869])
Varianza a través de filas:
tensor ([0.9032, 1.1678, 1.9312, 0.0595, 0.4048])

Podemos ver que se devolvió la varianza a través de las filas y columnas.

Conclusión

En esta lección de Pytorch, discutimos sobre la función var () y cómo aplicarla en un tensor para devolver la varianza a través de las columnas y filas.

También creamos un tensor con la función cpu () y devolvimos la varianza. Si el DIM no se especifica en dos o tensor multidimensional, devuelve la varianza de todo el tensor.