Pytorch - Max

Pytorch - Max
Veremos cómo devolver los valores máximos de un tensor usando max () 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.

Max ()

Max () en pytorch se usa para devolver el máximo de elementos presentes en el objeto tensor de entrada.

Sintaxis:

antorcha.Max (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 los valores máximos a lo largo de una columna y Dim = 1 especifica la comparación de fila, que obtiene los valores máximos a lo largo de la fila.

Devolver:

También devuelve los índices de valores máximos.

Ejemplo 1:

En este ejemplo, crearemos un tensor con 2 dimensiones que tenga 3 filas y 5 columnas y aplicaremos la función max () 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()
#Obtenga valores máximos a lo largo de columnas
Imprimir ("Valores máximos en las columnas:")
imprimir (antorcha.max (datos, dim = 0))
imprimir()
#Obtenga valores máximos a lo largo de filas
Imprimir ("Valores máximos en las filas:")
imprimir (antorcha.max (datos, dim = 1))

Producción:

tensor ([[-0.4322, -1.9488, -1.9488, -0.1291, 2.0196],
[0.0421, -0.7765, -1.4377, 1.3680, -0.1703],
[1.2953, 0.2773, 0.5380, 0.1011, 0.0136]])
Valores máximos en las columnas:
antorcha.return_types.Max (
valores = tensor ([1.2953, 0.2773, 0.5380, 1.3680, 2.0196]),
índices = tensor ([2, 2, 2, 1, 0]))
Valores máximos en las filas:
antorcha.return_types.Max (
valores = tensor ([2.0196, 1.3680, 1.2953]),
índices = tensor ([4, 3, 0]))

Podemos ver que los valores máximos se devuelven a través de las columnas y filas junto con sus índices.

Ejemplo 2:

Cree un tensor con una matriz 5 * 5 y devuelva los valores máximos en 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()
#Obtenga valores máximos a lo largo de columnas
Imprimir ("Valores máximos en las columnas:")
imprimir (antorcha.max (datos, dim = 0))
imprimir()
#Obtenga valores máximos a lo largo de filas
Imprimir ("Valores máximos en las filas:")
imprimir (antorcha.max (datos, dim = 1))

Producción:

tensor ([[1.5677, -0.8765, -1.7053, -0.4323, 1.1156],
[1.0781, -0.6891, 1.1491, -0.7799, 1.8014],
[-0.0449, 1.6926, -0.9708, -0.1957, 0.6765],
[-0.0336, 0.2317, -1.5785, -0.1141, -0.4226],
[0.2535, -0.2302, -0.1518, -0.6725, -0.6502]])
Valores máximos en las columnas:
antorcha.return_types.Max (
valores = tensor ([1.5677, 1.6926, 1.1491, -0.1141, 1.8014]),
índices = tensor ([0, 2, 1, 3, 1]))
Valores máximos en las filas:
antorcha.return_types.Max (
valores = tensor ([1.5677, 1.8014, 1.6926, 0.2317, 0.2535]),
índices = tensor ([0, 4, 1, 1, 0]))

Podemos ver que los valores máximos en las filas y columnas se devolvieron junto con sus índices.

Sin el parámetro DIM

Si no especificamos el parámetro DIM, entonces devuelve el valor máximo de todo el tensor.

Ejemplo 1:

Cree un tensor 2D con una matriz 5*5 y devuelva el valor máximo.

#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()
#Obtenga el valor máximo
Imprimir ("Valor máximo:")
imprimir (antorcha.max (datos))

Producción:

tensor ([[1.5618, 0.5195, -0.2018, 0.7128, 0.0599],
[-2.4063, -0.0888, -0.3935, 0.2521, 1.3079],
[-1.1231, -0.3366, -1.5907, -1.6770, -0.2147],
[-0.7070, -1.5281, 0.2971, 1.8376, -1.6415],
[-0.8639, 0.5545, 1.2174, -1.3734, -0.7389]])
Valor máximo :
tensor (1.8376)

Ejemplo 2:

Cree un tensor 1D con 5 valores y devuelva el valor máximo.

#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()
#Obtenga el valor máximo
Imprimir ("Valor máximo:")
imprimir (antorcha.max (datos))

Producción:

tensor ([10.6000, 20.7000, 30.6000, 40.4000, 50.0000])
Valor máximo :
tensor (50.)

Trabajar con CPU

Si desea ejecutar una función max () 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 una función CPU () y aplicaremos la función max () 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()
#Obtenga valores máximos a lo largo de columnas
Imprimir ("Valores máximos en las columnas:")
imprimir (antorcha.max (datos, dim = 0))
imprimir()
#Obtenga valores máximos a lo largo de filas
Imprimir ("Valores máximos en las filas:")
imprimir (antorcha.max (datos, dim = 1))

Producción:

tensor ([[-0.1843, 0.0419, -0.0474, 0.3713, -0.6861],
[-0.4083, -0.4918, -1.7254, 1.3483, -0.7855],
[-0.2685, 0.5834, 0.4953, -1.1605, -0.0414]])
Valores máximos en las columnas:
antorcha.return_types.Max (
valores = tensor ([-0.1843, 0.5834, 0.4953, 1.3483, -0.0414]),
índices = tensor ([0, 2, 2, 1, 2]))
Valores máximos en las filas:
antorcha.return_types.Max (
valores = tensor ([0.3713, 1.3483, 0.5834]),
índices = tensor ([3, 3, 1]))

Podemos ver que los valores máximos se devuelven a través de las columnas y filas junto con sus índices.

Ejemplo 2:

Cree un tensor con una matriz 5 * 5 con la función CPU () y devuelva los valores máximos 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()
#Obtenga valores máximos a lo largo de columnas
Imprimir ("Valores máximos en las columnas:")
imprimir (antorcha.max (datos, dim = 0))
imprimir()
#Obtenga valores máximos a lo largo de filas
Imprimir ("Valores máximos en las filas:")
imprimir (antorcha.max (datos, dim = 1))

Producción:

tensor ([[2.2844e+00, 1.0477e+00, -7.5003E-01, 6.2289e-01, 3.6587e-01],
[1.4600e+00, -9.5055E-01, 1.0254E+00, 9.8235E-01, 1.6930e+00],
[-1.6253e-01, 4.6555e-02, 1.1996e+00, -1.0124E+00, 9.4128e-01],
[1.6245e-01, 6.3275E -01, -2.4493e -01, -1.2998e+00, -4.8166E-01],
[-1.7680e+00, 1.2203E-01, 1.9420E -03, -6.2728e-01, 5.9291e-01]])
Valores máximos en las columnas:
antorcha.return_types.Max (
valores = tensor ([2.2844, 1.0477, 1.1996, 0.9824, 1.6930]),
índices = tensor ([0, 0, 2, 1, 1]))
Valores máximos en las filas:
antorcha.return_types.Max (
valores = tensor ([2.2844, 1.6930, 1.1996, 0.6327, 0.5929]),
índices = tensor ([0, 4, 2, 1, 4])

Podemos ver que los valores máximos en las filas y columnas se devolvieron junto con sus índices.

Conclusión

En esta lección de Pytorch, aprendimos sobre la función max () y cómo aplicarla en un tensor para devolver los valores máximos a través de las columnas y filas. También devuelve las posiciones de índice junto con los valores máximos devueltos.

También creamos un tensor con la función CPU () y devolvimos los valores máximos. Si el DIM no se especifica en dos o tensor multidimensional, devuelve el valor máximo de todo el tensor.