Pytorch - min

Pytorch - min
Wir sehen.

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.

Mindest()

Min () in Pytorch wird verwendet, um das Minimum der im Eingangstensorobjekt vorhandenen Elemente zurückzugeben.

Syntax:

Fackel.min (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 minimalen Werte entlang einer Spalte erhält, und DIM = 1 gibt den Zeilenvergleich an, der die minimalen Werte entlang der Zeile erhält.

Zurückkehren:

Es gibt auch die Indizes von Mindestwerten zurück.

Beispiel 1:

In diesem Beispiel erstellen wir einen Tensor mit 2 Dimensionen mit 3 Zeilen und 5 Spalten und wenden die min () -Funktion 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()
#Mindestwerte entlang der Spalten
print ("Mindestwerte über Spalten hinweg:")
Druck (Taschenlampe.min (Daten, Dim = 0))
drucken()
#Mindestwerte entlang von Zeilen
print ("Mindestwerte über Zeilen:")
Druck (Taschenlampe.min (Daten, Dim = 1))

Ausgang:

Tensor ([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]]))
Mindestwerte über Spalten hinweg:
Fackel.return_types.Mindest(
Werte = Tensor ([-0).7235, -0.8778, 0.4534, -1.3218, -1.4291]),
Indizes = Tensor ([2, 0, 0, 2, 0]))
Mindestwerte über Zeilen:
Fackel.return_types.Mindest(
Werte = Tensor ([-1.4291e+00, -1.1316e -03, -1.3218e+00]),
Indizes = Tensor ([4, 1, 3]))

Wir können sehen, dass die Mindestwerte zusammen mit ihren Indizes über die Spalten und Zeilen zurückgegeben werden.

Beispiel 2:

Erstellen Sie einen Tensor mit 5 * 5 Matrix und geben Sie die Mindestwerte ü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()
#Mindestwerte entlang der Spalten
print ("Mindestwerte über Spalten hinweg:")
Druck (Taschenlampe.min (Daten, Dim = 0))
drucken()
#Mindestwerte entlang von Zeilen
print ("Mindestwerte über Zeilen:")
Druck (Taschenlampe.min (Daten, Dim = 1))

Ausgang:

Tensor ([[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]]))
Mindestwerte über Spalten hinweg:
Fackel.return_types.Mindest(
Werte = Tensor ([-1.1165, -2.1209, -1.5547, -1.4465, -1.4123]),
Indizes = Tensor ([3, 3, 1, 1, 4]))
Mindestwerte über Zeilen:
Fackel.return_types.Mindest(
Werte = Tensor ([-0).8393, -1.5547, -1.7490, -2.1209, -1.4123]),
Indizes = Tensor ([1, 2, 1, 1, 4]))

Wir können sehen, dass die Mindestwerte über die Zeilen und Spalten zusammen mit ihren Indizes zurückgegeben wurden.

Ohne den schwachen Parameter

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

Beispiel 1:

Erstellen Sie einen 2D -Tensor mit 5*5 Matrix und geben Sie den Mindestwert 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()
#Mindestwert
print ("Mindestwert:")
Druck (Taschenlampe.min (Daten))

Ausgang:

Tensor ([[-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]]))
Mindestwert :
Tensor (-1.7805)

Beispiel 2:

Erstellen Sie einen 1D -Tensor mit 5 Werten und geben Sie den Mindestwert 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()
#Mindestwert
print ("Mindestwert:")
Druck (Taschenlampe.min (Daten))

Ausgang:

Tensor ([10).6000, 20.7000, 30.6000, 40.4000, 50.0000])
Mindestwert :
Tensor (10.6000)

Arbeiten Sie mit CPU

Wenn Sie eine min () -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 2 Dimensionen mit 3 Zeilen und 5 Spalten mit der Funktion cpu () und wenden die min () -Funktion 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()
#Mindestwerte entlang der Spalten
print ("Mindestwerte über Spalten hinweg:")
Druck (Taschenlampe.min (Daten, Dim = 0))
drucken()
#Mindestwerte entlang von Zeilen
print ("Mindestwerte über Zeilen:")
Druck (Taschenlampe.min (Daten, Dim = 1))

Ausgang:

Tensor ([[-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]]))
Mindestwerte über Spalten hinweg:
Fackel.return_types.Mindest(
Werte = Tensor ([-0).7268, -1.1252, -0.6643, -1.3355, -0.5170]),
Indizes = Tensor ([0, 1, 2, 0, 0]))
Mindestwerte über Zeilen:
Fackel.return_types.Mindest(
Werte = Tensor ([-1.3355, -1.1252, -0.6643]),
Indizes = Tensor ([3, 1, 2]))

Wir können sehen, dass die Mindestwerte zusammen mit ihren Indizes über die Spalten und Zeilen zurückgegeben werden.

Beispiel 2:

Erstellen Sie einen Tensor mit 5 * 5 Matrix mit der Funktion cpu () und geben Sie die Mindestwerte ü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()
#Mindestwerte entlang der Spalten
print ("Mindestwerte über Spalten hinweg:")
Druck (Taschenlampe.min (Daten, Dim = 0))
drucken()
#Mindestwerte entlang von Zeilen
print ("Mindestwerte über Zeilen:")
Druck (Taschenlampe.min (Daten, Dim = 1))

Ausgang:

Tensor ([[-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]])
Mindestwerte über Spalten hinweg:
Fackel.return_types.Mindest(
Werte = Tensor ([-1.1097, -0.9460, -1.5810, -1.5089, -0.3319]),
Indizes = Tensor ([1, 1, 0, 2, 1]))
Mindestwerte über Zeilen:
Fackel.return_types.Mindest(
Werte = Tensor ([-1.5810, -1.1097, -1.5089, -0.6963, -0.2865]),
Indizes = Tensor ([2, 0, 3, 0, 1]))

Wir können sehen, dass die Mindestwerte über die Zeilen und Spalten zusammen mit ihren Indizes zurückgegeben wurden.

Abschluss

In dieser Pytorch -Lektion haben wir die min () -Funktion und wie man sie auf einen Tensor anwendet, um die Mindestwerte über die Spalten und Zeilen zurückzugeben. Es gibt auch die Indexpositionen zusammen mit den zurückgegebenen Mindestwerten zurück.

Wir haben auch einen Tensor mit der CPU () -Funktion erstellt und die Mindestwerte zurückgegeben. Wenn der DIM nicht in zwei oder mehrdimensionalen Tensor angegeben ist, gibt es den Mindestwert aus dem gesamten Tensor zurück.