Pytorch - cumsum

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

torche.cumsum () renvoie la somme cumulative des éléments dans un tenseur bidimensionnel entre les rangées ou les colonnes.

Syntaxe:
torche.cumsum (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 la somme cumulative 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)
Print ("Sum cumulatif sur la ligne:")
#Return Cumulative Sum
imprimer (torche.cumsum (data1,1))

Sortir:

Tensor réel:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Somme cumulative sur la ligne:
Tensor ([[2, 5, 9, 14],
[1, 4, 9, 12],
[2, 5, 7, 8],
[2, 5, 9, 11]])

Fonctionnement:
Row-1: 2,2 + 3,2 + 3 + 4,2 + 3 + 4 + 5 = [2, 5, 9, 14]
Row-2: 1,1 + 3,1 + 3 + 5,1 + 3 + 5 + 3 = [1, 4, 9, 12]

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

Exemple 2:
Dans cet exemple, nous créerons un tenseur qui a quatre lignes et quatre colonnes et retournerons la somme cumulative 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)
Print ("Sum cumulatif sur la colonne:")
#Return Cumulative Sum
imprimer (torche.cumsum (data1,0))

Sortir:

Tensor réel:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Somme cumulative à travers la colonne:
Tensor ([[2, 3, 4, 5],
[3, 6, 9, 8],
[5, 9, 11, 9],
[7, 12, 15, 11]])

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

Travailler avec le processeur

Si vous souhaitez exécuter une fonction cumsum () 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 sur le CPU qui a quatre lignes et quatre colonnes et renvoyer la somme cumulative 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)
Print ("Sum cumulatif sur la ligne:")
#Return Cumulative Sum
imprimer (torche.cumsum (data1,1))

Sortir:

Tensor réel:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Somme cumulative sur la ligne:
Tensor ([[2, 5, 9, 14],
[1, 4, 9, 12],
[2, 5, 7, 8],
[2, 5, 9, 11]])

Fonctionnement:
Row-1: 2,2 + 3,2 + 3 + 4,2 + 3 + 4 + 5 = [2, 5, 9, 14]
Row-2: 1,1 + 3,1 + 3 + 5,1 + 3 + 5 + 3 = [1, 4, 9, 12]

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

Exemple 2:
Dans cet exemple, nous créerons un tenseur sur le CPU qui a quatre lignes et quatre colonnes et renvoyer la somme cumulative 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)
Print ("Sum cumulatif sur la colonne:")
#Return Cumulative Sum
imprimer (torche.cumsum (data1,0))

Sortir:

Tensor réel:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Somme cumulative à travers la colonne:
Tensor ([[2, 3, 4, 5],
[3, 6, 9, 8],
[5, 9, 11, 9],
[7, 12, 15, 11]])

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

Conclusion

Dans ce tutoriel Pytorch, nous avons vu comment effectuer une opération de somme cumulative sur un tenseur à l'aide de la torche.fonction cumsum (). Il renvoie la somme cumulative des éléments dans un tenseur bidimensionnel entre les rangées ou les colonnes. Nous avons également implémenté cette fonction sur le CPU à l'aide de la fonction CPU ().