Pytorch - Cumsum

Pytorch - Cumsum
Pytorch ist ein Open-Source-Framework für die Python-Programmiersprache.

Ein Tensor ist ein mehrdimensionales Array, das zum Speichern von Daten verwendet wird. Um einen Tensor zu verwenden, müssen wir das Fackelmodul importieren.

Zum Erstellen eines Tensors ist die verwendete Methode Tensor ().

Syntax:
Fackel.Tensor (Daten)

Wobei Daten ein mehrdimensionales Array sind.

Fackel.Cumsum ()

Fackel.Cumsum () gibt die kumulative Summe der Elemente in einem zweidimensionalen Tensor über Reihen oder Säulen hinweg zurück.

Syntax:
Fackel.Cumsum (Tensor_Object, Dim)

Parameter:

  1. Es dauert als erster Parameter Tensor_Object. Es muss zweidimensional sein.
  2. DIM = 0 gibt die spaltenweise Berechnung an und Dim = 1 gibt die Zeilen-Weise-Berechnung an.

Beispiel 1:
In diesem Beispiel erstellen wir einen Tensor mit vier Zeilen und vier Spalten und geben die kumulative Summe jedes Elements über die Zeile zurück.

#import Fackelmodul
Taschenlampe importieren
#Create Tensor
Data1 = Fackel.Tensor ([[2,3,4,5], [1,3,5,3] [2,3,2,1] [2,3,4,2]])
#Anzeige
print ("tatsächlicher Tensor:")
Druck (Daten1)
print ("kumulative Summe über Zeile:")
#Kumulative Summe
Druck (Taschenlampe.Cumsum (Daten1,1))

Ausgang:

Tatsächlicher Tensor:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]]))
Kumulative Summe über die Zeile:
Tensor ([[2, 5, 9, 14],
[1, 4, 9, 12],
[2, 5, 7, 8],
[2, 5, 9, 11]])

Arbeiten:
Zeile-1: 2,2+3,2+3+4,2+3+4+5 = [2, 5, 9, 14]
Zeile-2: 1,1+3,1+3+5,1+3+5+3 = [1, 4, 9, 12]

Zeile-3: 2,2+3,2+3+2,2+3+2+1 = [2, 5, 7, 8]
Zeile-4: 2,2+3,2+3+4,2+3+4+2 = [2, 5, 9, 11]

Beispiel 2:
In diesem Beispiel erstellen wir einen Tensor mit vier Zeilen und vier Spalten und geben die kumulative Summe jedes Elements über die Spalte zurück.

#import Fackelmodul
Taschenlampe importieren
#Create Tensor
Data1 = Fackel.Tensor ([[2,3,4,5], [1,3,5,3] [2,3,2,1] [2,3,4,2]])
#Anzeige
print ("tatsächlicher Tensor:")
Druck (Daten1)
print ("kumulative Summe über Spalte:")
#Kumulative Summe
Druck (Taschenlampe.Cumsum (Daten1,0))

Ausgang:

Tatsächlicher Tensor:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]]))
Kumulative Summe über die Spalte:
Tensor ([[2, 3, 4, 5],
[3, 6, 9, 8],
[5, 9, 11, 9],
[7, 12, 15, 11]])

Arbeiten:
Spalte-1: 2,2+1,2+1+2,2+1+2+2 = [2, 3, 5, 7]
Spalte-2: 3,3+3,3+3+3,3+3+3+3 = [3,6,9,12]
Spalte-3: 4,4+5,4+5+2,4+5+2+4 = [4,9,11,15]
Spalte-4: 5,5+3,5+3+1,5+3+1+2 = [5,8,9,11]

Arbeiten Sie mit CPU

Wenn Sie eine Cumsum () -Funktion auf der CPU ausführen möchten, müssen wir einen Tensor mit einer CPU () -Funktion erstellen. Dies wird auf einer CPU -Maschine ausgeführt.

Zu diesem Zeitpunkt können wir beim Erstellen eines Tensors die CPU () -Funktion verwenden.

Syntax:
Fackel.Tensor (Daten).Zentralprozessor()

Beispiel 1:
In diesem Beispiel werden wir einen Tensor auf der CPU erstellen, der vier Zeilen und vier Spalten hat und die kumulative Summe jedes Elements in der Zeile zurückgibt.

#import Fackelmodul
Taschenlampe importieren
#Create Tensor
Data1 = Fackel.Tensor ([[2,3,4,5], [1,3,5,3] [2,3,2,1] [2,3,4,2]]).Zentralprozessor()
#Anzeige
print ("tatsächlicher Tensor:")
Druck (Daten1)
print ("kumulative Summe über Zeile:")
#Kumulative Summe
Druck (Taschenlampe.Cumsum (Daten1,1))

Ausgang:

Tatsächlicher Tensor:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]]))
Kumulative Summe über die Zeile:
Tensor ([[2, 5, 9, 14],
[1, 4, 9, 12],
[2, 5, 7, 8],
[2, 5, 9, 11]])

Arbeiten:
Zeile-1: 2,2+3,2+3+4,2+3+4+5 = [2, 5, 9, 14]
Zeile-2: 1,1+3,1+3+5,1+3+5+3 = [1, 4, 9, 12]

Zeile-3: 2,2+3,2+3+2,2+3+2+1 = [2, 5, 7, 8]
Zeile-4: 2,2+3,2+3+4,2+3+4+2 = [2, 5, 9, 11]

Beispiel 2:
In diesem Beispiel erstellen wir einen Tensor auf der CPU mit vier Zeilen und vier Spalten und geben die kumulative Summe jedes Elements über die Spalte zurück.

#import Fackelmodul
Taschenlampe importieren
#Create Tensor
Data1 = Fackel.Tensor ([[2,3,4,5], [1,3,5,3] [2,3,2,1] [2,3,4,2]]).Zentralprozessor()
#Anzeige
print ("tatsächlicher Tensor:")
Druck (Daten1)
print ("kumulative Summe über Spalte:")
#Kumulative Summe
Druck (Taschenlampe.Cumsum (Daten1,0))

Ausgang:

Tatsächlicher Tensor:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]]))
Kumulative Summe über die Spalte:
Tensor ([[2, 3, 4, 5],
[3, 6, 9, 8],
[5, 9, 11, 9],
[7, 12, 15, 11]])

Arbeiten:
Spalte-1: 2,2+1,2+1+2,2+1+2+2 = [2, 3, 5, 7]
Spalte-2: 3,3+3,3+3+3,3+3+3+3 = [3,6,9,12]
Spalte-3: 4,4+5,4+5+2,4+5+2+4 = [4,9,11,15]
Spalte-4: 5,5+3,5+3+1,5+3+1+2 = [5,8,9,11]

Abschluss

In diesem Pytorch -Tutorial haben wir gesehen.cumsum () Funktion. Es gibt die kumulative Summe von Elementen in einem zweidimensionalen Tensor über Zeilen oder Säulen hinweg zurück. Wir haben diese Funktion auch auf der CPU mit der Funktion cpu () implementiert.