Pytorch - min

Pytorch - min
Vedremo come restituire i valori minimi da un tensore usando min () in questo tutorial Pytorch.

Pytorch è un framework open source disponibile con un linguaggio di programmazione Python. Il tensore è un array multidimensionale che viene utilizzato per archiviare i dati. Per usare un tensore, dobbiamo importare il modulo Torch. Per creare un tensore, il metodo utilizzato è tensore ().

Sintassi:

torcia.tensore (dati)

Dove i dati sono un array multidimensionale.

Min ()

Min () in Pytorch viene utilizzato per restituire il minimo degli elementi presenti nell'oggetto tensore di ingresso.

Sintassi:

torcia.min (tensore, dim)

Dove:

1. Il tensore è il tensore di ingresso.

2. Dim è ridurre la dimensione. Dim = 0 Specifica il confronto della colonna che ottiene i valori minimi lungo una colonna e Dim = 1 Specifica il confronto delle righe che ottiene i valori minimi lungo la riga.

Ritorno:

Restituisce anche gli indici di valori minimi.

Esempio 1:

In questo esempio, creeremo un tensore con 2 dimensioni con 3 righe e 5 colonne e applicheremo la funzione min () su righe e colonne.

Modulo Torcia #IMport
Torcia di importazione
#Crea un tensore con 2 dimensioni (3 * 5)
#con elementi casuali usando la funzione randn ()
data = torcia.Randn (3,5)
#Schermo
Stampa (dati)
stampa()
#get valori minimi lungo le colonne
Stampa ("Valori minimi tra le colonne:")
Stampa (torcia.min (dati, dim = 0))
stampa()
#get valori minimi lungo le righe
Stampa ("Valori minimi tra le righe:")
Stampa (torcia.min (dati, dim = 1))

Produzione:

tensore ([[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]])
Valori minimi tra le colonne:
torcia.return_types.min (
valori = tensore ([-0.7235, -0.8778, 0.4534, -1.3218, -1.4291]),
indici = tensore ([2, 0, 0, 2, 0])
Valori minimi tra le file:
torcia.return_types.min (
valori = tensore ([-1.4291e+00, -1.1316E -03, -1.3218E+00]),
indici = tensore ([4, 1, 3]))

Possiamo vedere che i valori minimi vengono restituiti attraverso le colonne e le righe insieme ai loro indici.

Esempio 2:

Crea un tensore con matrice 5 * 5 e restituisce i valori minimi attraverso le righe e le colonne.

Modulo Torcia #IMport
Torcia di importazione
#Crea un tensore con 2 dimensioni (5 * 5)
#con elementi casuali usando la funzione randn ()
data = torcia.Randn (5,5)
#Schermo
Stampa (dati)
stampa()
#get valori minimi lungo le colonne
Stampa ("Valori minimi tra le colonne:")
Stampa (torcia.min (dati, dim = 0))
stampa()
#get valori minimi lungo le righe
Stampa ("Valori minimi tra le righe:")
Stampa (torcia.min (dati, dim = 1))

Produzione:

tensore ([[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]])
Valori minimi tra le colonne:
torcia.return_types.min (
valori = tensore ([-1.1165, -2.1209, -1.5547, -1.4465, -1.4123]),
indici = tensore ([3, 3, 1, 1, 4])
Valori minimi tra le file:
torcia.return_types.min (
valori = tensore ([-0.8393, -1.5547, -1.7490, -2.1209, -1.4123]),
indici = tensore ([1, 2, 1, 1, 4]))

Possiamo vedere che i valori minimi tra le righe e le colonne sono stati restituiti insieme ai loro indici.

Senza il parametro dim

Se non specifichiamo il parametro Dim, restituisce il valore minimo dall'intero tensore.

Esempio 1:

Crea un tensore 2D con matrice 5*5 e restituisce il valore minimo.

Modulo Torcia #IMport
Torcia di importazione
#Crea un tensore con 2 dimensioni (5 * 5)
#con elementi casuali usando la funzione randn ()
data = torcia.Randn (5,5)
#Schermo
Stampa (dati)
stampa()
#get Valore minimo
Stampa ("Valore minimo:")
Stampa (torcia.min (dati))

Produzione:

tensore ([[-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]])
Valore minimo:
tensore (-1.7805)

Esempio 2:

Crea un tensore 1D con 5 valori e restituire il valore minimo.

Modulo Torcia #IMport
Torcia di importazione
#Crea un tensore con 5 valori numerici
data = torcia.tensore ([10.6,20.7,30.6,40.4,50.0])
#Schermo
Stampa (dati)
stampa()
#get Valore minimo
Stampa ("Valore minimo:")
Stampa (torcia.min (dati))

Produzione:

tensore ([10.6000, 20.7000, 30.6000, 40.4000, 50.0000])
Valore minimo:
tensore (10.6000)

Lavorare con la CPU

Se si desidera eseguire una funzione min () sulla CPU, dobbiamo creare un tensore con una funzione CPU (). Questo funzionerà su una macchina CPU.

Quando creiamo un tensore, questa volta, possiamo usare la funzione CPU ().

Sintassi:

torcia.tensore (dati).processore()

Esempio 1:

In questo esempio, creeremo un tensore con 2 dimensioni con 3 righe e 5 colonne con la funzione CPU () e applicare la funzione Min () su righe e colonne.

Modulo Torcia #IMport
Torcia di importazione
#Crea un tensore con 2 dimensioni (3 * 5)
#con elementi casuali usando la funzione randn ()
data = torcia.Randn (3,5).processore()
#Schermo
Stampa (dati)
stampa()
#get valori minimi lungo le colonne
Stampa ("Valori minimi tra le colonne:")
Stampa (torcia.min (dati, dim = 0))
stampa()
#get valori minimi lungo le righe
Stampa ("Valori minimi tra le righe:")
Stampa (torcia.min (dati, dim = 1))

Produzione:

tensore ([[-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]])
Valori minimi tra le colonne:
torcia.return_types.min (
valori = tensore ([-0.7268, -1.1252, -0.6643, -1.3355, -0.5170]),
indici = tensore ([0, 1, 2, 0, 0])
Valori minimi tra le file:
torcia.return_types.min (
valori = tensore ([-1.3355, -1.1252, -0.6643]),
indici = tensore ([3, 1, 2]))

Possiamo vedere che i valori minimi vengono restituiti attraverso le colonne e le righe insieme ai loro indici.

Esempio 2:

Crea un tensore con matrice 5 * 5 con la funzione CPU () e restituire i valori minimi attraverso le righe e le colonne.

Modulo Torcia #IMport
Torcia di importazione
#Crea un tensore con 2 dimensioni (5 * 5)
#con elementi casuali usando la funzione randn ()
data = torcia.Randn (5,5).processore()
#Schermo
Stampa (dati)
stampa()
#get valori minimi lungo le colonne
Stampa ("Valori minimi tra le colonne:")
Stampa (torcia.min (dati, dim = 0))
stampa()
#get valori minimi lungo le righe
Stampa ("Valori minimi tra le righe:")
Stampa (torcia.min (dati, dim = 1))

Produzione:

tensore ([[-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]])
Valori minimi tra le colonne:
torcia.return_types.min (
valori = tensore ([-1.1097, -0.9460, -1.5810, -1.5089, -0.3319]),
indici = tensore ([1, 1, 0, 2, 1])
Valori minimi tra le file:
torcia.return_types.min (
valori = tensore ([-1.5810, -1.1097, -1.5089, -0.6963, -0.2865]),
indici = tensore ([2, 0, 3, 0, 1])

Possiamo vedere che i valori minimi tra le righe e le colonne sono stati restituiti insieme ai loro indici.

Conclusione

In questa lezione di Pytorch, abbiamo appreso la funzione min () e come applicarlo su un tensore per restituire i valori minimi tra le colonne e le righe. Restituisce anche le posizioni dell'indice insieme ai valori minimi restituiti.

Abbiamo anche creato un tensore con la funzione CPU () e restituito i valori minimi. Se il DIM non è specificato in un tensore a due o multidimensionali, restituisce il valore minimo dall'intero tensore.