Pytorch - Cummin

Pytorch - Cummin
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.Cummin ()

Das kumulative Minimum an Elementen in einem zweidimensionalen Tensor über Zeilen oder Säulen wird durch Fackel zurückgegeben.Cummin (). Es gibt auch die Indizes der zurückgegebenen Mindestwerte zurück.

Syntax:

Fackel.Cummin (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 das kumulative Minimum 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 ("kumulatives Minimum in der Reihe:")
#Kumulatives Minimum
Druck (Taschenlampe.Cummin (Daten1,1))

Ausgang:

Tatsächlicher Tensor:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]]))
Kumulatives Minimum über die Zeile:
Fackel.return_types.Cummin (
Werte = Tensor ([[2, 2, 2, 2],
[1, 1, 1, 1],
[2, 2, 2, 1],
[2, 2, 2, 2]]),
Indizes = Tensor ([[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 2, 3],
[0, 0, 0, 3]])))

Arbeiten:
Zeile-1: 2, Minimum (2,3), Minimum (2,3,4), Minimum (2,3,4,5) = [2, 2, 2, 2]

Also sind [2,2,2,2] Indexpositionen im tatsächlichen Tensor - [0,0,0,0]

Zeile-2: 1, Minimum (1,3), Minimum (1,3,5), Minimum (1,3,5,3) = [1,1,1,1]

So sind [1,1,1,1] Indexpositionen im tatsächlichen Tensor - [0,0,0,0]

Zeile-3: 2, Minimum (2,3), Minimum (2,3,2), Minimum (2,3,2,1) = [2,2,2,1]

Also sind [2,2,2,1] Indexpositionen im tatsächlichen Tensor - [0,0,2,3]

Zeile-4: 2, Minimum (2,3), Minimum (2,3,4), Minimum (2,3,4,2) = [2,2,2,2]

Also sind [2,2,2,2] Indexpositionen im tatsächlichen Tensor - [0,0,0,3]

Beispiel 2:

In diesem Beispiel erstellen wir einen Tensor mit vier Zeilen und vier Spalten und geben das kumulative Minimum 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 ("kumulatives Minimum über Spalte:")
#Kumulatives Minimum
Druck (Taschenlampe.Cummin (Daten1,0))

Ausgang:

Tatsächlicher Tensor:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]]))
Kumulatives Minimum über die Säule:
Fackel.return_types.Cummin (
Werte = Tensor ([[2, 3, 4, 5],
[1, 3, 4, 3],
[1, 3, 2, 1],
[1, 3, 2, 1]]),
Indizes = Tensor ([[0, 0, 0, 0],
[1, 1, 0, 1],
[1, 2, 2, 2],
[1, 3, 2, 2]])))

Arbeiten:

Spalte 1: 2, Minimum (2,1), Minimum (2,1,2), Minimum (2,1,2,2) = [2, 1,1,1]

So sind [2, 1,1,1] Indexpositionen im tatsächlichen Tensor - [0,1,1,1]

Spalte-2: 3, Minimum (3,3), Minimum (3,3,3), Minimum (3,3,3,3) = [3,3,3,3]

Also sind [3,3,3,3] Indexpositionen im tatsächlichen Tensor - [0,1,2,3]

Spalte 3: 4, Minimum (4,5), Minimum (4,5,2), Minimum (4,5,2,4) = [4,4,2,2]

Also sind [4,4,2,2] Indexpositionen im tatsächlichen Tensor - [0,0,2,2]

Spalte-4: 5, Minimum (5,3), Minimum (5,3,1), Minimum (5,3,1,2) = [5,3,1,1]

So sind [5,3,1,1] Indexpositionen im tatsächlichen Tensor - [0,1,2,2]

Arbeiten Sie mit CPU

Wenn Sie eine Cummin () -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 erstellen wir einen Tensor mit vier Zeilen und vier Spalten auf der CPU und geben das kumulative Minimum 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]]).Zentralprozessor()
#Anzeige
print ("tatsächlicher Tensor:")
Druck (Daten1)
print ("kumulatives Minimum in der Reihe:")
#Kumulatives Minimum
Druck (Taschenlampe.Cummin (Daten1,1))

Ausgang:

Tatsächlicher Tensor:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]]))
Kumulatives Minimum über die Zeile:
Fackel.return_types.Cummin (
Werte = Tensor ([[2, 2, 2, 2],
[1, 1, 1, 1],
[2, 2, 2, 1],
[2, 2, 2, 2]]),
Indizes = Tensor ([[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 2, 3],
[0, 0, 0, 3]])))

Arbeiten:

Zeile-1: 2, Minimum (2,3), Minimum (2,3,4), Minimum (2,3,4,5) = [2, 2, 2, 2]

Also sind [2,2,2,2] Indexpositionen im tatsächlichen Tensor - [0,0,0,0]

Zeile-2: 1, Minimum (1,3), Minimum (1,3,5), Minimum (1,3,5,3) = [1,1,1,1]

So sind [1,1,1,1] Indexpositionen im tatsächlichen Tensor - [0,0,0,0]

Zeile-3: 2, Minimum (2,3), Minimum (2,3,2), Minimum (2,3,2,1) = [2,2,2,1]

Also sind [2,2,2,1] Indexpositionen im tatsächlichen Tensor - [0,0,2,3]

Zeile-4: 2, Minimum (2,3), Minimum (2,3,4), Minimum (2,3,4,2) = [2,2,2,2]

Also sind [2,2,2,2] Indexpositionen im tatsächlichen Tensor - [0,0,0,3]

Beispiel 2:

In diesem Beispiel erstellen wir einen Tensor mit vier Zeilen und vier Spalten auf der CPU und geben das kumulative Minimum 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 ("kumulatives Minimum über Spalte:")
#Kumulatives Minimum
Druck (Taschenlampe.Cummin (Daten1,0))

Ausgang:

Tatsächlicher Tensor:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]]))
Kumulatives Minimum über die Säule:
Fackel.return_types.Cummin (
Werte = Tensor ([[2, 3, 4, 5],
[1, 3, 4, 3],
[1, 3, 2, 1],
[1, 3, 2, 1]]),
Indizes = Tensor ([[0, 0, 0, 0],
[1, 1, 0, 1],
[1, 2, 2, 2],
[1, 3, 2, 2]])))

Arbeiten:

Spalte 1: 2, Minimum (2,1), Minimum (2,1,2), Minimum (2,1,2,2) = [2, 1,1,1]

So sind [2, 1,1,1] Indexpositionen im tatsächlichen Tensor - [0,1,1,1]

Spalte-2: 3, Minimum (3,3), Minimum (3,3,3), Minimum (3,3,3,3) = [3,3,3,3]

Also sind [3,3,3,3] Indexpositionen im tatsächlichen Tensor - [0,1,2,3]

Spalte 3: 4, Minimum (4,5), Minimum (4,5,2), Minimum (4,5,2,4) = [4,4,2,2]

Also sind [4,4,2,2] Indexpositionen im tatsächlichen Tensor - [0,0,2,2]

Spalte-4: 5, Minimum (5,3), Minimum (5,3,1), Minimum (5,3,1,2) = [5,3,1,1]

So sind [5,3,1,1] Indexpositionen im tatsächlichen Tensor - [0,1,2,2]

Abschluss

In diesem Pytorch -Tutorial haben wir gesehen.Cummin () Funktion. Es gibt das kumulative Minimum an Elementen in einem zweidimensionalen Tensor zurück und indiziert auch die Positionen der Mindestwerte über Zeilen oder Spalten über Spalten hinweg. Wir haben diese Funktion auch auf der CPU mit der Funktion cpu () implementiert.