Pytorch - Cumsum

Pytorch - Cumsum
Pytorch é uma estrutura de código aberto para a linguagem de programação Python.

Um tensor é uma matriz multidimensional que é usada para armazenar dados. Então, para usar um tensor, temos que importar o módulo da tocha.

Para criar um tensor, o método usado é tensor ().

Sintaxe:
tocha.Tensor (dados)

Onde os dados são uma matriz multidimensional.

tocha.Cumsum ()

tocha.Cumsum () retorna a soma cumulativa de elementos em um tensor bidimensional entre linhas ou em colunas.

Sintaxe:
tocha.Cumsum (tensor_object, dim)

Parâmetros:

  1. É preciso tensor_object como o primeiro parâmetro. Tem que ser bidimensional.
  2. Dim = 0 Especifica a computação em coluna e Dim = 1 Especifica a computação em linha.

Exemplo 1:
Neste exemplo, criaremos um tensor que tenha quatro linhas e quatro colunas e retorneemos a soma cumulativa de cada elemento na linha.

#import módulo tocha
importação de tocha
#Crere Tensor
Data1 = Torch.tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]]))
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprima ("Soma cumulativa na linha:")
#return soma cumulativa
Imprimir (tocha.Cumsum (Data1,1))

Saída:

Tensor real:
tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2])
Soma cumulativa através da linha:
tensor ([[2, 5, 9, 14],
[1, 4, 9, 12],
[2, 5, 7, 8],
[2, 5, 9, 11]])

Trabalhando:
Linha 1: 2,2+3,2+3+4,2+3+4+5 = [2, 5, 9, 14]
Linha 2: 1,1+3,1+3+5,1+3+5+3 = [1, 4, 9, 12]

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

Exemplo 2:
Neste exemplo, criaremos um tensor que tenha quatro linhas e quatro colunas e retorneemos a soma cumulativa de cada elemento em toda a coluna.

#import módulo tocha
importação de tocha
#Crere Tensor
Data1 = Torch.tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]]))
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
print ("soma cumulativa na coluna:")
#return soma cumulativa
Imprimir (tocha.Cumsum (Data1,0))

Saída:

Tensor real:
tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2])
Soma cumulativa na coluna:
tensor ([[2, 3, 4, 5],
[3, 6, 9, 8],
[5, 9, 11, 9],
[7, 12, 15, 11]])

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

Trabalhe com a CPU

Se você deseja executar uma função Cumsum () na CPU, temos que criar um tensor com uma função CPU (). Isso será executado em uma máquina de CPU.

Neste momento, quando estamos criando um tensor, podemos usar a função CPU ().

Sintaxe:
tocha.Tensor (dados).CPU()

Exemplo 1:
Neste exemplo, criaremos um tensor na CPU que possui quatro linhas e quatro colunas e retornará a soma cumulativa de cada elemento na linha.

#import módulo tocha
importação de tocha
#Crere Tensor
Data1 = Torch.tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]])).CPU()
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprima ("Soma cumulativa na linha:")
#return soma cumulativa
Imprimir (tocha.Cumsum (Data1,1))

Saída:

Tensor real:
tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2])
Soma cumulativa através da linha:
tensor ([[2, 5, 9, 14],
[1, 4, 9, 12],
[2, 5, 7, 8],
[2, 5, 9, 11]])

Trabalhando:
Linha 1: 2,2+3,2+3+4,2+3+4+5 = [2, 5, 9, 14]
Linha 2: 1,1+3,1+3+5,1+3+5+3 = [1, 4, 9, 12]

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

Exemplo 2:
Neste exemplo, criaremos um tensor na CPU que possui quatro linhas e quatro colunas e retornará a soma cumulativa de cada elemento na coluna.

#import módulo tocha
importação de tocha
#Crere Tensor
Data1 = Torch.tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]])).CPU()
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
print ("soma cumulativa na coluna:")
#return soma cumulativa
Imprimir (tocha.Cumsum (Data1,0))

Saída:

Tensor real:
tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2])
Soma cumulativa na coluna:
tensor ([[2, 3, 4, 5],
[3, 6, 9, 8],
[5, 9, 11, 9],
[7, 12, 15, 11]])

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

Conclusão

Neste tutorial de Pytorch, vimos como realizar uma operação de soma cumulativa em um tensor usando tocha.função cumsum (). Ele retorna a soma cumulativa de elementos em um tensor bidimensional entre linhas ou em colunas. Também implementamos essa função na CPU usando a função CPU ().