Pytorch - somma

Pytorch - somma
Vedremo come restituire la somma dei valori in un tensore usando Sum () 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.

Somma()

Sum () in Pytorch viene utilizzato per restituire la somma totale degli elementi presenti nell'oggetto tensore di input.

Sintassi:

torcia.somma (tensore, dim)

Dove:

1. Il tensore è il tensore di ingresso.

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

Esempio 1:

In questo esempio, creeremo un tensore con 3 dimensioni con 3 righe e 5 colonne e applicheremo la funzione Sum () 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 Sum Values ​​lungo le colonne
Stampa ("Somma Valori tra le colonne:")
Stampa (torcia.somma (dati, dim = 0))
stampa()
#get Sum Values ​​lungo le righe
Stampa ("Somma valori attraverso le righe:")
Stampa (torcia.somma (dati, dim = 1))

Produzione:

tensore ([[-0.0556, 0.4207, 2.0077, 0.2641, -1.2607],
[-0.6305, 0.2493, -1.8812, 1.3837, 0.7238],
[1.7078, -0.8948, -1.2484, -0.2079, -0.9078]])
Somma i valori tra le colonne:
tensore ([1.0217, -0.2247, -1.1220, 1.4399, -1.4447])
Somma i valori attraverso le righe:
tensore ([1.3762, -0.1548, -1.5512])

Possiamo vedere che la somma dei valori viene restituita attraverso le colonne e le righe.

Esempio 2:

Crea un tensore con matrice 5 * 5 e restituire la somma totale dei valori 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()
#Somma dei valori lungo le colonne
Stampa ("Somma dei valori tra le colonne:")
Stampa (torcia.somma (dati, dim = 0))
stampa()
#Somma dei valori lungo le righe
Stampa ("Somma dei valori attraverso le righe:")
Stampa (torcia.somma (dati, dim = 1))

Produzione:

tensore ([[-1.0473, 0.5575, -0.3595, 1.2286, -0.2730],
[-0.2578, 0.8914, 1.1879, -1.4176, -1.6000],
[0.2300, -0.8414, 0.7395, 0.2362, 0.9471],
[-0.1933, -0.3221, 1.6938, 1.0898, -1.1636],
[1.4314, -1.3938, 0.6046, 0.7937, 1.9621]])
Somma dei valori tra le colonne:
tensore ([0.1631, -1.1084, 3.8663, 1.9308, -0.1275])
Somma dei valori attraverso le righe:
tensore ([0.1063, -1.1960, 1.3114, 1.1046, 3.3980])

Possiamo vedere la somma dei valori attraverso le righe e le colonne.

Senza il parametro dim

Se non specifichiamo il parametro Dim, restituisce la somma totale dall'intero tensore.

Esempio 1:

Crea un tensore 2D con 5*5 matrice e restituire la somma totale.

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 totale somma
Stampa ("Somma totale:")
Stampa (torcia.somma (dati))

Produzione:

tensore ([[-0.7637, -0.5952, 1.1987, -1.6382, 0.2750],
[-0.6120, 0.1565, -0.3482, -0.9082, -1.2066],
[0.5195, 0.3678, 1.1712, -0.3106, -0.1575],
[1.7759, -0.1936, 1.7604, -0.5895, 1.9677],
[1.5080, -0.1691, 0.2007, -0.7224, 0.0071]])
Somma totale :
tensore (2.6937)

Esempio 2:

Crea un tensore 1D con 5 valori e restituire la somma totale.

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 totale somma
Stampa ("Somma mtotale:")
Stampa (torcia.somma (dati))

Produzione:

tensore ([10.6000, 20.7000, 30.6000, 40.4000, 50.0000])
Somma mtotale:
tensore (152.3000)

Lavorare con la CPU

Se si desidera eseguire una funzione Sum () 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 3 dimensioni con 3 righe e 5 colonne con una funzione CPU () e applicare la somma () 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()
#Somma dei valori lungo le colonne
Stampa ("Somma dei valori tra le colonne:")
Stampa (torcia.somma (dati, dim = 0))
stampa()
#Somma dei valori lungo le righe
Stampa ("Somma dei valori attraverso le righe:")
Stampa (torcia.somma (dati, dim = 1))

Produzione:

tensore ([[-0.2128, 0.7013, 1.5819, -0.7530, -0.9235],
[0.4140, 0.6337, 0.8007, -0.8377, -0.7650],
[0.8471, 0.6988, 0.2508, 0.2901, -0.4939]])
Somma dei valori tra le colonne:
tensore ([1.0483, 2.0339, 2.6334, -1.3006, -2.1824])
Somma dei valori attraverso le righe:
tensore ([0.3939, 0.2457, 1.5930])

Possiamo vedere che la somma dei valori viene restituita attraverso le colonne e le righe.

Esempio 2:

Crea un tensore con matrice 5 * 5 con la funzione CPU () e restituire la somma dei valori 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()
#Somma dei valori lungo le colonne
Stampa ("Somma dei valori tra le colonne:")
Stampa (torcia.somma (dati, dim = 0))
stampa()
#Somma dei valori lungo le righe
Stampa ("Somma dei valori attraverso le righe:")
Stampa (torcia.somma (dati, dim = 1))

Produzione:

tensore ([[0.2954, -0.1462, 1.3691, 0.1799, 0.2489],
[-1.4990, -0.8262, -1.2368, 0.0618, 1.0522],
[-0.7371, 0.6237, -0.8857, -0.4474, -1.7985],
[0.0569, 1.4520, -1.6996, 1.2843, 0.6789],
[-1.8241, 0.4399, 0.1749, -2.5850, 1.3348]])
Somma dei valori tra le colonne:
tensore ([-3.7080, 1.5432, -2.2781, -1.5064, 1.5163])
somma dei valori attraverso le righe:
tensore ([1.9471, -2.4480, -3.2450, 1.7725, -2.4595])

Possiamo vedere che la somma dei valori attraverso le righe e le colonne sono state restituite.

Conclusione

In questa lezione di Pytorch, abbiamo appreso la funzione Sum () e come applicarlo su un tensore per restituire la somma totale dei valori tra le colonne e le righe. Abbiamo anche creato un tensore con la funzione CPU () e restituito la somma di tutti i valori. Se il DIM non è specificato in un tensore a due o multidimensionali, restituisce la somma totale dall'intero tensore.