Pytorch - suma

Pytorch - suma
Veremos cómo devolver la suma de valores en un tensor usando Sum () en este tutorial de Pytorch.

Pytorch es un marco de código abierto disponible con un lenguaje de programación de Python. Tensor es una matriz multidimensional que se utiliza para almacenar los datos. 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.

Suma()

Sum () en Pytorch se usa para devolver la suma total de los elementos presentes en el objeto tensor de entrada.

Sintaxis:

antorcha.suma (tensor, tenu)

Dónde:

1. El tensor es el tensor de entrada.

2. Dim es reducir la dimensión. Dim = 0 Especifica la comparación de columna que obtiene la suma total de valores a lo largo de una columna y Dim = 1 especifica la comparación de filas que obtiene la suma total de valores a lo largo de la fila.

Ejemplo 1:

En este ejemplo, crearemos un tensor con 3 dimensiones que tenga 3 filas y 5 columnas y aplicaremos la función Sum () en filas y columnas.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor con 2 dimensiones (3 * 5)
#Con elementos aleatorios usando la función randn ()
datos = antorcha.Randn (3,5)
#mostrar
Imprimir (datos)
imprimir()
#Obtener valores de suma a lo largo de columnas
Imprimir ("Valores de suma a través de columnas:")
imprimir (antorcha.suma (datos, dim = 0))
imprimir()
#Obtener valores de suma a lo largo de filas
Imprimir ("Valores de suma en las filas:")
imprimir (antorcha.suma (datos, dim = 1))

Producción:

tensor ([[-0.0556, 0.4207, 2.0077, 0.2641, -1.2607],
[-0.6305, 0.2493, -1.8812, 1.3837, 0.7238],
[1.7078, -0.8948, -1.2484, -0.2079, -0.9078]])
Valores de suma en las columnas:
tensor ([1.0217, -0.2247, -1.1220, 1.4399, -1.4447])
Valores de suma en las filas:
tensor ([1.3762, -0.1548, -1.5512])

Podemos ver que la suma de valores se devuelve a través de las columnas y las filas.

Ejemplo 2:

Cree un tensor con una matriz 5 * 5 y devuelva la suma total de valores en las filas y columnas.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor con 2 dimensiones (5 * 5)
#Con elementos aleatorios usando la función randn ()
datos = antorcha.Randn (5,5)
#mostrar
Imprimir (datos)
imprimir()
#obtenga la suma de valores a lo largo de las columnas
Imprimir ("Suma de valores en las columnas:")
imprimir (antorcha.suma (datos, dim = 0))
imprimir()
#Obtenga la suma de valores a lo largo de las filas
Imprimir ("Suma de valores en las filas:")
imprimir (antorcha.suma (datos, dim = 1))

Producción:

tensor ([[-1.0473, 0.5575, -0.3595, 1.2286, -0.2730],
[-0.2578, 0.8914, 1.1879, -1.4176, -1.6000],
[0.2300, -0.8414, 0.7395, 0.2362, 0.9471],
[-0.1933, -0.3221, 1.6938, 1.0898, -1.1636],
[1.4314, -1.3938, 0.6046, 0.7937, 1.9621]])
Suma de valores en las columnas:
tensor ([0.1631, -1.1084, 3.8663, 1.9308, -0.1275])
Suma de valores en las filas:
tensor ([0.1063, -1.1960, 1.3114, 1.1046, 3.3980])

Podemos ver la suma de valores en las filas y columnas.

Sin el parámetro DIM

Si no especificamos el parámetro DIM, devuelve la suma total de todo el tensor.

Ejemplo 1:

Crea un tensor 2D con 5*5 matriz y devuelve la suma total.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor con 2 dimensiones (5 * 5)
#Con elementos aleatorios usando la función randn ()
datos = antorcha.Randn (5,5)
#mostrar
Imprimir (datos)
imprimir()
#get suma total
Imprimir ("Suma total:")
imprimir (antorcha.suma (datos))

Producción:

tensor ([[-0.7637, -0.5952, 1.1987, -1.6382, 0.2750],
[-0.6120, 0.1565, -0.3482, -0.9082, -1.2066],
[0.5195, 0.3678, 1.1712, -0.3106, -0.1575],
[1.7759, -0.1936, 1.7604, -0.5895, 1.9677],
[1.5080, -0.1691, 0.2007, -0.7224, 0.0071]])
Suma total :
tensor (2.6937)

Ejemplo 2:

Crear un tensor 1D con 5 valores y devolver la suma total.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor con 5 valores numéricos
datos = antorcha.tensor ([10.6,20.7,30.6,40.4,50.0])
#mostrar
Imprimir (datos)
imprimir()
#get suma total
Imprimir ("Mtotal Sum:")
imprimir (antorcha.suma (datos))

Producción:

tensor ([10.6000, 20.7000, 30.6000, 40.4000, 50.0000])
Suma mtotal:
tensor (152.3000)

Trabajar con CPU

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

Cuando creamos un tensor, esta vez, podemos usar la función CPU ().

Sintaxis:

antorcha.Tensor (datos).UPC()

Ejemplo 1:

En este ejemplo, crearemos un tensor con 3 dimensiones que tenga 3 filas y 5 columnas con una función CPU () y aplicaremos la suma () en filas y columnas.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor con 2 dimensiones (3 * 5)
#Con elementos aleatorios usando la función randn ()
datos = antorcha.Randn (3,5).UPC()
#mostrar
Imprimir (datos)
imprimir()
#obtenga la suma de valores a lo largo de las columnas
Imprimir ("Suma de valores en las columnas:")
imprimir (antorcha.suma (datos, dim = 0))
imprimir()
#Obtenga la suma de valores a lo largo de las filas
Imprimir ("Suma de valores en las filas:")
imprimir (antorcha.suma (datos, dim = 1))

Producción:

tensor ([[-0.2128, 0.7013, 1.5819, -0.7530, -0.9235],
[0.4140, 0.6337, 0.8007, -0.8377, -0.7650],
[0.8471, 0.6988, 0.2508, 0.2901, -0.4939]])
Suma de valores en las columnas:
tensor ([1.0483, 2.0339, 2.6334, -1.3006, -2.1824])
Suma de valores en las filas:
tensor ([0.3939, 0.2457, 1.5930])

Podemos ver que la suma de valores se devuelve a través de las columnas y las filas.

Ejemplo 2:

Cree un tensor con una matriz 5 * 5 con la función CPU () y devuelva la suma de valores a través de las filas y columnas.

#módulo de antorcha de Import
antorcha de importación
#cree un tensor con 2 dimensiones (5 * 5)
#Con elementos aleatorios usando la función randn ()
datos = antorcha.Randn (5,5).UPC()
#mostrar
Imprimir (datos)
imprimir()
#obtenga la suma de valores a lo largo de las columnas
Imprimir ("Suma de valores en las columnas:")
imprimir (antorcha.suma (datos, dim = 0))
imprimir()
#Obtenga la suma de valores a lo largo de las filas
Imprimir ("Suma de valores en las filas:")
imprimir (antorcha.suma (datos, dim = 1))

Producción:

tensor ([[0.2954, -0.1462, 1.3691, 0.1799, 0.2489],
[-1.4990, -0.8262, -1.2368, 0.0618, 1.0522],
[-0.7371, 0.6237, -0.8857, -0.4474, -1.7985],
[0.0569, 1.4520, -1.6996, 1.2843, 0.6789],
[-1.8241, 0.4399, 0.1749, -2.5850, 1.3348]])
Suma de valores en las columnas:
tensor ([-3.7080, 1.5432, -2.2781, -1.5064, 1.5163])
Suma de valores en las filas:
tensor ([1.9471, -2.4480, -3.2450, 1.7725, -2.4595])

Podemos ver que se devuelven la suma de valores en las filas y columnas.

Conclusión

En esta lección de Pytorch, aprendimos sobre la función de suma () y cómo aplicarla en un tensor para devolver la suma total de los valores a través de las columnas y filas. También creamos un tensor con la función CPU () y devolvimos la suma de todos los valores. Si el DIM no se especifica en dos o tensor multidimensional, devuelve la suma total de todo el tensor.