Pytorch - Min

Pytorch - Min
Veremos cómo devolver los valores mínimos de un tensor usando min () 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.

Min ()

Min () en Pytorch se utiliza para devolver el mínimo de elementos presentes en el objeto tensor de entrada.

Sintaxis:

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

Devolver:

También devuelve los índices de valores mínimos.

Ejemplo 1:

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

Producción:

tensor ([[1.2472e -01, -8.7776E-01, 4.5338e-01, 2.2461e -01, -1.4291e+00],
[2.6528e+00, -1.1316E-03, 1.4365E+00, 3.8547e-01, 2.1671e-01],
[-7.2345E -01, -4.1827e-01, 4.8590e -01, -1.3218e+00, 1.5717e+00]])
Valores mínimos en las columnas:
antorcha.return_types.min (
valores = tensor ([-0.7235, -0.8778, 0.4534, -1.3218, -1.4291]),
índices = tensor ([2, 0, 0, 2, 0]))
Valores mínimos en las filas:
antorcha.return_types.min (
valores = tensor ([-1.4291e+00, -1.1316E -03, -1.3218e+00]),
índices = tensor ([4, 1, 3]))

Podemos ver que los valores mínimos 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ínimos 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ínimos a lo largo de columnas
Imprimir ("Valores mínimos en las columnas:")
imprimir (antorcha.min (datos, dim = 0))
imprimir()
#Obtenga valores mínimos a lo largo de filas
Imprimir ("Valores mínimos en las filas:")
imprimir (antorcha.min (datos, dim = 1))

Producción:

tensor ([[0.3584, -0.8393, -0.3111, -0.4203, 1.4332],
[1.2702, 2.4583, -1.5547, -1.4465, 1.0672],
[-0.2497, -1.7490, 0.2130, 0.3989, -0.1520],
[-1.1165, -2.1209, 0.7191, 0.4764, 2.6431],
[1.8286, 0.8787, -0.4475, 1.1866, -1.4123]])
Valores mínimos en las columnas:
antorcha.return_types.min (
valores = tensor ([-1.1165, -2.1209, -1.5547, -1.4465, -1.4123]),
índices = tensor ([3, 3, 1, 1, 4]))
Valores mínimos en las filas:
antorcha.return_types.min (
valores = tensor ([-0.8393, -1.5547, -1.7490, -2.1209, -1.4123]),
índices = tensor ([1, 2, 1, 1, 4]))

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

Sin el parámetro DIM

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

Ejemplo 1:

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

#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ínimo
Imprimir ("Valor mínimo:")
imprimir (antorcha.min (datos))

Producción:

tensor ([[-0.5350, 0.5439, -0.1100, -1.0623, -1.3757],
[1.5085, -1.0191, 0.4068, -0.4972, 0.3982],
[-0.3360, 0.2665, -0.3139, 0.7079, 0.6624],
[-0.5330, 0.0763, -0.8529, -0.5675, 0.0718],
[0.4249, -1.3827, -1.7805, -1.1841, -0.5587]])
Valor mínimo :
tensor (-1.7805)

Ejemplo 2:

Cree un tensor 1D con 5 valores y devuelva el valor mínimo.

#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ínimo
Imprimir ("Valor mínimo:")
imprimir (antorcha.min (datos))

Producción:

tensor ([10.6000, 20.7000, 30.6000, 40.4000, 50.0000])
Valor mínimo :
tensor (10.6000)

Trabajar con CPU

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

Producción:

tensor ([[-0.7268, -0.6932, 1.3316, -1.3355, -0.5170],
[1.1113, -1.1252, 0.4458, -0.7343, 2.2207],
[-0.3300, 0.7784, -0.6643, 0.7307, 1.4468]])
Valores mínimos en las columnas:
antorcha.return_types.min (
valores = tensor ([-0.7268, -1.1252, -0.6643, -1.3355, -0.5170]),
índices = tensor ([0, 1, 2, 0, 0]))
Valores mínimos en las filas:
antorcha.return_types.min (
valores = tensor ([-1.3355, -1.1252, -0.6643]),
índices = tensor ([3, 1, 2]))

Podemos ver que los valores mínimos 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ínimos 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ínimos a lo largo de columnas
Imprimir ("Valores mínimos en las columnas:")
imprimir (antorcha.min (datos, dim = 0))
imprimir()
#Obtenga valores mínimos a lo largo de filas
Imprimir ("Valores mínimos en las filas:")
imprimir (antorcha.min (datos, dim = 1))

Producción:

tensor ([[-0.4774, -0.6484, -1.5810, 0.9154, 0.9417],
[-1.1097, -0.9460, 1.3099, 2.0782, -0.3319],
[0.2239, 1.1931, -0.8064, -1.5089, 2.0238],
[-0.6963, -0.0779, 0.1755, 0.9848, 1.3191],
[1.0035, -0.2865, 1.6750, 0.0255, 1.2538]])
Valores mínimos en las columnas:
antorcha.return_types.min (
valores = tensor ([-1.1097, -0.9460, -1.5810, -1.5089, -0.3319]),
índices = tensor ([1, 1, 0, 2, 1]))
Valores mínimos en las filas:
antorcha.return_types.min (
valores = tensor ([-1.5810, -1.1097, -1.5089, -0.6963, -0.2865]),
índices = tensor ([2, 0, 3, 0, 1]))

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

Conclusión

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

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