Pytorch - Cummin

Pytorch - Cummin
Pytorch est un cadre open source pour le langage de programmation Python.

Un tenseur est un tableau multidimensionnel utilisé pour stocker des données. Donc, pour utiliser un tenseur, nous devons importer le module de torche.

Pour créer un tenseur, la méthode utilisée est le tenseur ().

Syntaxe:

torche.tenseur (données)

Où les données sont un tableau multidimensionnel.

torche.Cummin ()

Le minimum cumulé d'éléments dans un tenseur bidimensionnel entre les rangées ou les colonnes est renvoyé par torche.Cummin (). Il renvoie également les indices des valeurs minimales renvoyées.

Syntaxe:

torche.Cummin (Tensor_Object, Dim)

Paramètres:

  1. Il prend Tensor_Object comme le premier paramètre. Il doit être bidimensionnel.
  2. DIM = 0 spécifie le calcul de la colonne et DIM = 1 spécifie le calcul en ligne.

Exemple 1:

Dans cet exemple, nous créerons un tenseur qui a quatre lignes et quatre colonnes et retournerons le minimum cumulatif de chaque élément à travers la ligne.

Module de torche #mport
Importer une torche
#Create Tensor
data1 = torche.Tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]]))
#afficher
Imprimer ("Tensor réel:")
Imprimer (DATA1)
Imprimer ("minimum cumulatif sur la ligne:")
#return minimum cumulatif
imprimer (torche.Cummin (data1,1))

Sortir:

Tensor réel:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Minimum cumulé sur la ligne:
torche.return_types.Cummin (
valeurs = tenseur ([[2, 2, 2, 2],
[1, 1, 1, 1],
[2, 2, 2, 1],
[2, 2, 2, 2]]),
Indices = Tensor ([[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 2, 3],
[0, 0, 0, 3]]))

Fonctionnement:
Row-1: 2, minimum (2,3), minimum (2,3,4), minimum (2,3,4,5) = [2, 2, 2, 2]

Ainsi, [2,2,2,2] les positions de l'indice dans le tenseur réel sont - [0,0,0,0]

Row-2: 1, minimum (1,3), minimum (1,3,5), minimum (1,3,5,3) = [1,1,1,1]

Ainsi, [1,1,1,1] les positions de l'indice dans le tenseur réel sont - [0,0,0,0]

Row-3: 2, minimum (2,3), minimum (2,3,2), minimum (2,3,2,1) = [2,2,2,1]

Ainsi, [2,2,2,1] les positions de l'indice dans le tenseur réel sont - [0,0,2,3]

Row-4: 2, minimum (2,3), minimum (2,3,4), minimum (2,3,4,2) = [2,2,2,2]

Ainsi, [2,2,2,2] les positions de l'indice dans le tenseur réel sont - [0,0,0,3]

Exemple 2:

Dans cet exemple, nous créerons un tenseur qui a quatre lignes et quatre colonnes et retournerons le minimum cumulatif de chaque élément à travers la colonne.

Module de torche #mport
Importer une torche
#Create Tensor
data1 = torche.Tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]]))
#afficher
Imprimer ("Tensor réel:")
Imprimer (DATA1)
Imprimer ("Cumulative Minimum à travers la colonne:")
#return minimum cumulatif
imprimer (torche.Cummin (data1,0))

Sortir:

Tensor réel:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Minimum cumulé à travers la colonne:
torche.return_types.Cummin (
valeurs = tenseur ([[2, 3, 4, 5],
[1, 3, 4, 3],
[1, 3, 2, 1],
[1, 3, 2, 1]]),
Indices = Tensor ([[0, 0, 0, 0],
[1, 1, 0, 1],
[1, 2, 2, 2],
[1, 3, 2, 2]]))

Fonctionnement:

Colonne 1: 2, minimum (2,1), minimum (2,1,2), minimum (2,1,2,2) = [2, 1,1,1]

Ainsi, [2, 1,1,1], les positions d'index dans le tenseur réel sont - [0,1,1,1]

Colonne-2: 3, minimum (3,3), minimum (3,3,3), minimum (3,3,3,3) = [3,3,3,3]

Ainsi, [3,3,3,3] les positions de l'indice dans le tenseur réel sont - [0,1,2,3]

Colonne-3: 4, minimum (4,5), minimum (4,5,2), minimum (4,5,2,4) = [4,4,2,2]

Ainsi, [4,4,2,2] les positions de l'indice dans le tenseur réel sont - [0,0,2,2]

Colonne-4: 5, minimum (5,3), minimum (5,3,1), minimum (5,3,1,2) = [5,3,1,1]

Ainsi, [5,3,1,1] les positions de l'indice dans le tenseur réel sont - [0,1,2,2]

Travailler avec le processeur

Si vous souhaitez exécuter une fonction Cummin () sur le CPU, alors nous devons créer un tenseur avec une fonction CPU (). Cela fonctionnera sur une machine CPU.

Pour le moment, lorsque nous créons un tenseur, nous pouvons utiliser la fonction CPU ().

Syntaxe:

torche.tenseur (données).CPU()

Exemple 1:

Dans cet exemple, nous créerons un tenseur qui a quatre lignes et quatre colonnes sur le CPU et renvoyer le minimum cumulatif de chaque élément à travers la ligne.

Module de torche #mport
Importer une torche
#Create Tensor
data1 = torche.Tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]])).CPU()
#afficher
Imprimer ("Tensor réel:")
Imprimer (DATA1)
Imprimer ("minimum cumulatif sur la ligne:")
#return minimum cumulatif
imprimer (torche.Cummin (data1,1))

Sortir:

Tensor réel:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Minimum cumulé sur la ligne:
torche.return_types.Cummin (
valeurs = tenseur ([[2, 2, 2, 2],
[1, 1, 1, 1],
[2, 2, 2, 1],
[2, 2, 2, 2]]),
Indices = Tensor ([[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 2, 3],
[0, 0, 0, 3]]))

Fonctionnement:

Row-1: 2, minimum (2,3), minimum (2,3,4), minimum (2,3,4,5) = [2, 2, 2, 2]

Ainsi, [2,2,2,2] les positions de l'indice dans le tenseur réel sont - [0,0,0,0]

Row-2: 1, minimum (1,3), minimum (1,3,5), minimum (1,3,5,3) = [1,1,1,1]

Ainsi, [1,1,1,1] les positions de l'indice dans le tenseur réel sont - [0,0,0,0]

Row-3: 2, minimum (2,3), minimum (2,3,2), minimum (2,3,2,1) = [2,2,2,1]

Ainsi, [2,2,2,1] les positions de l'indice dans le tenseur réel sont - [0,0,2,3]

Row-4: 2, minimum (2,3), minimum (2,3,4), minimum (2,3,4,2) = [2,2,2,2]

Ainsi, [2,2,2,2] les positions de l'indice dans le tenseur réel sont - [0,0,0,3]

Exemple 2:

Dans cet exemple, nous créerons un tenseur qui a quatre lignes et quatre colonnes sur le CPU et renvoyer le minimum cumulatif de chaque élément à travers la colonne.

Module de torche #mport
Importer une torche
#Create Tensor
data1 = torche.Tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]])).CPU()
#afficher
Imprimer ("Tensor réel:")
Imprimer (DATA1)
Imprimer ("Cumulative Minimum à travers la colonne:")
#return minimum cumulatif
imprimer (torche.Cummin (data1,0))

Sortir:

Tensor réel:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Minimum cumulé à travers la colonne:
torche.return_types.Cummin (
valeurs = tenseur ([[2, 3, 4, 5],
[1, 3, 4, 3],
[1, 3, 2, 1],
[1, 3, 2, 1]]),
Indices = Tensor ([[0, 0, 0, 0],
[1, 1, 0, 1],
[1, 2, 2, 2],
[1, 3, 2, 2]]))

Fonctionnement:

Colonne 1: 2, minimum (2,1), minimum (2,1,2), minimum (2,1,2,2) = [2, 1,1,1]

Ainsi, [2, 1,1,1], les positions d'index dans le tenseur réel sont - [0,1,1,1]

Colonne-2: 3, minimum (3,3), minimum (3,3,3), minimum (3,3,3,3) = [3,3,3,3]

Ainsi, [3,3,3,3] les positions de l'indice dans le tenseur réel sont - [0,1,2,3]

Colonne-3: 4, minimum (4,5), minimum (4,5,2), minimum (4,5,2,4) = [4,4,2,2]

Ainsi, [4,4,2,2] les positions de l'indice dans le tenseur réel sont - [0,0,2,2]

Colonne-4: 5, minimum (5,3), minimum (5,3,1), minimum (5,3,1,2) = [5,3,1,1]

Ainsi, [5,3,1,1] les positions de l'indice dans le tenseur réel sont - [0,1,2,2]

Conclusion

Dans ce didacticiel Pytorch, nous avons vu comment effectuer une opération minimale cumulée sur un tenseur en utilisant la torche.Fonction Cummin (). Il renvoie le minimum cumulatif d'éléments dans un tenseur bidimensionnel et indexe également les positions de valeurs minimales entre les lignes ou les colonnes. Nous avons également implémenté cette fonction sur le CPU à l'aide de la fonction CPU ().