Pytorch - Cumsum

Pytorch - Cumsum
Pytorch es un marco de código abierto para el lenguaje de programación de Python.

Un tensor es una matriz multidimensional que se utiliza para almacenar datos. Entonces, para usar un tensor, tenemos que importar el módulo de antorcha.

Para crear un tensor, el método utilizado es tensor ().

Sintaxis:
antorcha.Tensor (datos)

Donde los datos son una matriz multidimensional.

antorcha.cumsum ()

antorcha.Cumsum () devuelve la suma acumulada de elementos en un tensor bidimensional a través de filas o en columnas.

Sintaxis:
antorcha.Cumsum (tensor_object, dim)

Parámetros:

  1. Se necesita tensor_object como el primer parámetro. Tiene que ser bidimensional.
  2. dim = 0 especifica el cálculo de la columna y dim = 1 especifica el cálculo de la fila.

Ejemplo 1:
En este ejemplo, crearemos un tensor que tenga cuatro filas y cuatro columnas y devolveremos la suma acumulativa de cada elemento a través de la fila.

#módulo de antorcha de Import
antorcha de importación
#cree tensor
datos1 = antorcha.Tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]])
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprimir ("Suma acumulativa en la fila:")
#suma acumulativa
imprimir (antorcha.Cumsum (Data1,1))

Producción:

Tensor real:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Suma acumulativa en la fila:
Tensor ([[2, 5, 9, 14],
[1, 4, 9, 12],
[2, 5, 7, 8],
[2, 5, 9, 11]])

Laboral:
Fila-1: 2,2+3,2+3+4,2+3+4+5 = [2, 5, 9, 14]
Fila-2: 1,1+3,1+3+5,1+3+5+3 = [1, 4, 9, 12]

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

Ejemplo 2:
En este ejemplo, crearemos un tensor que tenga cuatro filas y cuatro columnas y devolveremos la suma acumulativa de cada elemento a través de la columna.

#módulo de antorcha de Import
antorcha de importación
#cree tensor
datos1 = antorcha.Tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]])
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprimir ("Suma acumulada a través de la columna:")
#suma acumulativa
imprimir (antorcha.Cumsum (Data1,0))

Producción:

Tensor real:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Suma acumulativa a través de la columna:
Tensor ([[2, 3, 4, 5],
[3, 6, 9, 8],
[5, 9, 11, 9],
[7, 12, 15, 11]])

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

Trabajar con CPU

Si desea ejecutar una función Cumsum () en la CPU, entonces tenemos que crear un tensor con una función CPU (). Esto se ejecutará en una máquina CPU.

En este momento, cuando estamos creando un tensor, podemos usar la función CPU ().

Sintaxis:
antorcha.Tensor (datos).UPC()

Ejemplo 1:
En este ejemplo, crearemos un tensor en la CPU que tiene cuatro filas y cuatro columnas y devolveremos la suma acumulativa de cada elemento en la fila.

#módulo de antorcha de Import
antorcha de importación
#cree tensor
datos1 = antorcha.Tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]]).UPC()
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprimir ("Suma acumulativa en la fila:")
#suma acumulativa
imprimir (antorcha.Cumsum (Data1,1))

Producción:

Tensor real:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Suma acumulativa en la fila:
Tensor ([[2, 5, 9, 14],
[1, 4, 9, 12],
[2, 5, 7, 8],
[2, 5, 9, 11]])

Laboral:
Fila-1: 2,2+3,2+3+4,2+3+4+5 = [2, 5, 9, 14]
Fila-2: 1,1+3,1+3+5,1+3+5+3 = [1, 4, 9, 12]

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

Ejemplo 2:
En este ejemplo, crearemos un tensor en la CPU que tiene cuatro filas y cuatro columnas y devolveremos la suma acumulada de cada elemento a través de la columna.

#módulo de antorcha de Import
antorcha de importación
#cree tensor
datos1 = antorcha.Tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]]).UPC()
#mostrar
Imprimir ("Tensor real:")
Imprimir (Data1)
Imprimir ("Suma acumulada a través de la columna:")
#suma acumulativa
imprimir (antorcha.Cumsum (Data1,0))

Producción:

Tensor real:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Suma acumulativa a través de la columna:
Tensor ([[2, 3, 4, 5],
[3, 6, 9, 8],
[5, 9, 11, 9],
[7, 12, 15, 11]])

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

Conclusión

En este tutorial de Pytorch, vimos cómo realizar una operación de suma acumulativa en un tensor usando antorcha.función cumsum (). Devuelve la suma acumulada de elementos en un tensor bidimensional a través de filas o en columnas. También implementamos esta función en la CPU usando la función CPU ().