Pytorch - Summe

Pytorch - Summe
Wir werden sehen, wie die Wertsumme in einem Tensor mit Sum () in diesem Pytorch -Tutorial zurückgegeben werden kann.

Pytorch ist ein Open-Source-Framework mit einer Python-Programmiersprache. Tensor ist ein mehrdimensionales Array, mit dem die Daten gespeichert werden. Um einen Tensor zu verwenden, müssen wir das Fackelmodul importieren. Um einen Tensor zu erstellen, ist die verwendete Methode Tensor ().

Syntax:

Fackel.Tensor (Daten)

Wobei die Daten ein mehrdimensionales Array sind.

Summe()

SUM () in Pytorch wird verwendet, um die Gesamtsumme der Elemente im Eingangs -Tensorobjekt zurückzusetzen.

Syntax:

Fackel.Summe (Tensor, schwach)

Wo:

1. Der Tensor ist der Eingangs -Tensor.

2. Dim ist, die Dimension zu reduzieren. Dim = 0 gibt den Spaltenvergleich an, der die Gesamtwerte der Werte entlang einer Spalte erhält, und DIM = 1 gibt den Zeilenvergleich an, der die Gesamtwerte der Werte entlang der Zeile erhält.

Beispiel 1:

In diesem Beispiel erstellen wir einen Tensor mit 3 Dimensionen mit 3 Zeilen und 5 Spalten und wenden die Funktion sum () auf Zeilen und Spalten an.

#import Fackelmodul
Taschenlampe importieren
#einen Tensor mit 2 Abmessungen (3 * 5)
#Mit zufälligen Elementen mit Randn () -Funktion
Daten = Taschenlampe.Randn (3,5)
#Anzeige
Druck (Daten)
drucken()
#Summenwerte entlang der Spalten
print ("Summewerte über Spalten hinweg:")
Druck (Taschenlampe.sum (Daten, Dim = 0))
drucken()
#Summenwerte entlang der Zeilen
print ("Summenwerte über Zeilen:")
Druck (Taschenlampe.sum (Daten, Dim = 1))

Ausgang:

Tensor ([[-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]]))
Summenwerte über Spalten hinweg:
Tensor ([1.0217, -0.2247, -1.1220, 1.4399, -1.4447])
Summenwerte über Zeilen:
Tensor ([1.3762, -0.1548, -1.5512])

Wir können sehen, dass die Wertesumme über die Spalten und Zeilen zurückgegeben wird.

Beispiel 2:

Erstellen Sie einen Tensor mit 5 * 5 Matrix und geben Sie die Gesamtwerte der Werte über die Zeilen und Spalten zurück.

#import Fackelmodul
Taschenlampe importieren
#einen Tensor mit 2 Abmessungen (5 * 5)
#Mit zufälligen Elementen mit Randn () -Funktion
Daten = Taschenlampe.Randn (5,5)
#Anzeige
Druck (Daten)
drucken()
#GET -SUM von Werten entlang der Spalten
print ("Wertsumme über Spalten hinweg:")
Druck (Taschenlampe.sum (Daten, Dim = 0))
drucken()
#Wertsumme entlang von Reihen
print ("Wertsumme über Zeilen:")
Druck (Taschenlampe.sum (Daten, Dim = 1))

Ausgang:

Tensor ([-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]]))
Summe der Werte über Spalten hinweg:
Tensor ([0).1631, -1.1084, 3.8663, 1.9308, -0.1275])
Wertesumme über Zeilen hinweg:
Tensor ([0).1063, -1.1960, 1.3114, 1.1046, 3.3980])

Wir können die Wertesumme über die Zeilen und Spalten über sehen.

Ohne den schwachen Parameter

Wenn wir den DIM -Parameter nicht angeben, gibt er die Gesamtsumme aus dem gesamten Tensor zurück.

Beispiel 1:

Erstellen Sie einen 2D -Tensor mit 5*5 Matrix und geben Sie die Gesamtsumme zurück.

#import Fackelmodul
Taschenlampe importieren
#einen Tensor mit 2 Abmessungen (5 * 5)
#Mit zufälligen Elementen mit Randn () -Funktion
Daten = Taschenlampe.Randn (5,5)
#Anzeige
Druck (Daten)
drucken()
#Gesamtsumme
print ("Gesamtsumme:")
Druck (Taschenlampe.Summe (Daten))

Ausgang:

Tensor ([[-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]]))
Gesamtsumme :
Tensor (2.6937)

Beispiel 2:

Erstellen Sie einen 1D -Tensor mit 5 Werten und geben Sie die Gesamtsumme zurück.

#import Fackelmodul
Taschenlampe importieren
#Schalten Sie einen Tensor mit 5 numerischen Werten auf
Daten = Taschenlampe.Tensor ([10).6,20.7,30.6,40.4,50.0]))
#Anzeige
Druck (Daten)
drucken()
#Gesamtsumme
print ("mtotale Summe:")
Druck (Taschenlampe.Summe (Daten))

Ausgang:

Tensor ([10).6000, 20.7000, 30.6000, 40.4000, 50.0000])
Mtotale Summe:
Tensor (152.3000)

Arbeiten Sie mit CPU

Wenn Sie eine Summe () -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.

Wenn wir einen Tensor erstellen, können wir diesmal die Funktion cpu () verwenden.

Syntax:

Fackel.Tensor (Daten).Zentralprozessor()

Beispiel 1:

In diesem Beispiel erstellen wir einen Tensor mit 3 Dimensionen mit 3 Zeilen und 5 Spalten mit einer CPU () -Funktion und wenden die SUM () auf Zeilen und Spalten an.

#import Fackelmodul
Taschenlampe importieren
#einen Tensor mit 2 Abmessungen (3 * 5)
#Mit zufälligen Elementen mit Randn () -Funktion
Daten = Taschenlampe.Randn (3,5).Zentralprozessor()
#Anzeige
Druck (Daten)
drucken()
#GET -SUM von Werten entlang der Spalten
print ("Wertsumme über Spalten hinweg:")
Druck (Taschenlampe.sum (Daten, Dim = 0))
drucken()
#Wertsumme entlang von Reihen
print ("Wertsumme über Zeilen:")
Druck (Taschenlampe.sum (Daten, Dim = 1))

Ausgang:

Tensor ([[-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]]))
Summe der Werte über Spalten hinweg:
Tensor ([1.0483, 2.0339, 2.6334, -1.3006, -2.1824])
Wertesumme über Zeilen hinweg:
Tensor ([0).3939, 0.2457, 1.5930])

Wir können sehen, dass die Wertesumme über die Spalten und Zeilen zurückgegeben wird.

Beispiel 2:

Erstellen Sie einen Tensor mit 5 * 5 Matrix mit der Funktion cpu () und geben Sie die Wertesumme über die Zeilen und Spalten zurück.

#import Fackelmodul
Taschenlampe importieren
#einen Tensor mit 2 Abmessungen (5 * 5)
#Mit zufälligen Elementen mit Randn () -Funktion
Daten = Taschenlampe.Randn (5,5).Zentralprozessor()
#Anzeige
Druck (Daten)
drucken()
#GET -SUM von Werten entlang der Spalten
print ("Wertsumme über Spalten hinweg:")
Druck (Taschenlampe.sum (Daten, Dim = 0))
drucken()
#Wertsumme entlang von Reihen
print ("Wertsumme über Zeilen:")
Druck (Taschenlampe.sum (Daten, Dim = 1))

Ausgang:

Tensor ([[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]]))
Summe der Werte über Spalten hinweg:
Tensor ([-3).7080, 1.5432, -2.2781, -1.5064, 1.5163])
Wertesumme über Zeilen hinweg:
Tensor ([1.9471, -2.4480, -3.2450, 1.7725, -2.4595])

Wir können sehen, dass die Wertesumme über die Zeilen und Spalten zurückgegeben wurde.

Abschluss

In dieser Pytorch -Lektion haben wir die Summe () -Funktion und die Anwendung auf einen Tensor gelernt, um die Gesamtwerte der Werte über die Spalten und Zeilen zurückzuführen. Wir haben auch einen Tensor mit der CPU () -Funktion erstellt und die Summe aller Werte zurückgegeben. Wenn der DIM nicht in zwei oder mehrdimensionalen Tensor angegeben ist, gibt es die Gesamtsumme aus dem gesamten Tensor zurück.