Pytorch - gato

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

Para concatenar dos o más tensores por una fila o columna, use la antorcha.gato().

Sintaxis:

antorcha.Cat ((tensor_object1, tensor_object2, ...), dim)

Parámetros:

  1. Se necesitan dos o más tensores como su primer parámetro.
  2. Si dim = 0, los tensores están concatenados en cuanto a columna. Si dim = 1, los tensores están concatenados.

Ejemplo 1:

En este ejemplo, crearemos dos tensores unidimensionales y los concatizaremos a través de filas usando la antorcha.gato()

#módulo de antorcha de Import
antorcha de importación
#cree 2 tensores
datos1 = antorcha.Tensor ([10,20,30,40,50])
data2 = antorcha.tensor ([1,2,3,4,5])
#mostrar
Imprimir ("Tensores reales:")
Imprimir (Data1)
Imprimir (Data2)
#Concatenate dos tensores
Imprimir ("Tensor concatenado:", antorcha.CAT ((Data1, Data2))))

Producción:

Tensores reales:
Tensor ([10, 20, 30, 40, 50])
tensor ([1, 2, 3, 4, 5])
Tensor concatenado: tensor ([10, 20, 30, 40, 50, 1, 2, 3, 4, 5])

Dos tensores se concatenan horizontalmente (en cuanto a hileras) ya que los tensores son de tipo 1 dimensional.

Ejemplo 2:

En este ejemplo, crearemos cinco tensores unidimensionales y los concatizaremos con antorcha.gato().

#módulo de antorcha de Import
antorcha de importación
#cree 5 tensores
datos1 = antorcha.Tensor ([10,20,40,50])
data2 = antorcha.tensor ([2,3,4,5])
datos3 = antorcha.tensor ([12,45,67,89])
data4 = antorcha.tensor ([100,32,45,67])
Data5 = antorcha.Tensor ([120,456,1,1])
#mostrar
Imprimir ("Tensores reales:")
Imprimir (Data1)
Imprimir (Data2)
Imprimir (Data3)
Imprimir (Data4)
Imprimir (Data5)
#concatenate dos tensores
Imprimir ("Tensor concatenado:", antorcha.CAT ((Data1, Data2, Data3, Data4, Data5)))

Producción:

Tensores reales:
Tensor ([10, 20, 40, 50])
Tensor ([2, 3, 4, 5])
Tensor ([12, 45, 67, 89])
Tensor ([100, 32, 45, 67])
Tensor ([120, 456, 1, 1])
Tensor concatenado: tensor ([10, 20, 40, 50, 2, 3, 4, 5, 12, 45, 67, 89, 100, 32,
45, 67, 120, 456, 1, 1])

Cinco tensores se concatenan horizontalmente (en cuanto a hileras) ya que los tensores son de tipo 1 dimensional ..

Ejemplo 3:

En este ejemplo, crearemos cinco tensores bidimensionales y los concatizaremos a través de filas usando antorcha.gato().

#módulo de antorcha de Import
antorcha de importación
#cree 5 tensores con 2 dimensiones cada uno
datos1 = antorcha.Tensor ([[10,20,40,50], [1,2,3,4]])
data2 = antorcha.Tensor ([[2,3,4,5], [20,70,89,0]]))
datos3 = antorcha.Tensor ([[12,4,5,6], [56,34,56,787]]))
data4 = antorcha.Tensor ([[100,1,2,3], [67,87,6,78]]))
Data5 = antorcha.Tensor ([[120,33,56,78], [45,56,78,6]])
#mostrar
Imprimir ("Tensores reales:")
Imprimir (Data1)
Imprimir (Data2)
Imprimir (Data3)
Imprimir (Data4)
Imprimir (Data5)
#Tensores de concatenato a través de filas
Imprimir ("Tensor concatenado:", antorcha.CAT ((Data1, Data2, Data3, Data4, Data5), Dim = 1))

Producción:

Tensores reales:
Tensor ([[10, 20, 40, 50],
[1, 2, 3, 4]])
Tensor ([[2, 3, 4, 5],
[20, 70, 89, 0]])
Tensor ([[12, 4, 5, 6],
[56, 34, 56, 787]])
Tensor ([100, 1, 2, 3],
[67, 87, 6, 78]])
Tensor ([[120, 33, 56, 78],
[45, 56, 78, 6]])
Tensor concatenado: tensor ([[10, 20, 40, 50, 2, 3, 4, 5, 12, 4, 5, 6, 100, 1,
2, 3, 120, 33, 56, 78],
[1, 2, 3, 4, 20, 70, 89, 0, 56, 34, 56, 787, 67, 87,
6, 78, 45, 56, 78, 6]])

Cinco tensores se concatenan horizontalmente (en cuanto a la fila) como especificamos Dim = 1.

Ejemplo 4:

En este ejemplo, crearemos cinco tensores bidimensionales y los concatenaremos a través de columnas usando antorcha.gato().

#módulo de antorcha de Import
antorcha de importación
#cree 5 tensores con 2 dimensiones cada uno
datos1 = antorcha.Tensor ([[10,20,40,50], [1,2,3,4]])
data2 = antorcha.Tensor ([[2,3,4,5], [20,70,89,0]]))
datos3 = antorcha.Tensor ([[12,4,5,6], [56,34,56,787]]))
data4 = antorcha.Tensor ([[100,1,2,3], [67,87,6,78]]))
Data5 = antorcha.Tensor ([[120,33,56,78], [45,56,78,6]])
#mostrar
Imprimir ("Tensores reales:")
Imprimir (Data1)
Imprimir (Data2)
Imprimir (Data3)
Imprimir (Data4)
Imprimir (Data5)
#Concatenate tensors a través de columnas
Imprimir ("Tensor concatenado:", antorcha.CAT ((Data1, Data2, Data3, Data4, Data5), Dim = 0))

Producción:

Tensores reales:
Tensor ([[10, 20, 40, 50],
[1, 2, 3, 4]])
Tensor ([[2, 3, 4, 5],
[20, 70, 89, 0]])
Tensor ([[12, 4, 5, 6],
[56, 34, 56, 787]])
Tensor ([100, 1, 2, 3],
[67, 87, 6, 78]])
Tensor ([[120, 33, 56, 78],
[45, 56, 78, 6]])
Tensor concatenado: tensor ([[10, 20, 40, 50],
[1, 2, 3, 4],
[2, 3, 4, 5],
[20, 70, 89, 0],
[12, 4, 5, 6],
[56, 34, 56, 787],
[100, 1, 2, 3],
[67, 87, 6, 78],
[120, 33, 56, 78],
[45, 56, 78, 6]])

Cinco tensores se concatenan verticalmente (en cuanto a columna) como especificamos Dim = 0.

Trabajar con CPU

Si desea ejecutar una función CAT () 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 dos tensores unidimensionales en la CPU y los concatenaremos a través de filas usando antorcha.gato().

#módulo de antorcha de Import
antorcha de importación
#cree 2 tensores
datos1 = antorcha.Tensor ([10,20,30,40,50]).UPC()
data2 = antorcha.tensor ([1,2,3,4,5]).UPC()
#mostrar
Imprimir ("Tensores reales:")
Imprimir (Data1)
Imprimir (Data2)
#Concatenate dos tensores
Imprimir ("Tensor concatenado:", antorcha.CAT ((Data1, Data2))))

Producción:

Tensores reales:
Tensor ([10, 20, 30, 40, 50])
tensor ([1, 2, 3, 4, 5])
Tensor concatenado: tensor ([10, 20, 30, 40, 50, 1, 2, 3, 4, 5])

Dos tensores se concatenan horizontalmente (en cuanto a hileras) ya que los tensores son de tipo 1 dimensional.

Ejemplo 2:

En este ejemplo, crearemos cinco tensores unidimensionales en la CPU y concatenan en cuanto a la fila con antorcha.gato().

#módulo de antorcha de Import
antorcha de importación
#cree 5 tensores
datos1 = antorcha.Tensor ([10,20,40,50]).UPC()
data2 = antorcha.tensor ([2,3,4,5]).UPC()
datos3 = antorcha.tensor ([12,45,67,89]).UPC()
data4 = antorcha.tensor ([100,32,45,67]).UPC()
Data5 = antorcha.Tensor ([120,456,1,1]).UPC()
#mostrar
Imprimir ("Tensores reales:")
Imprimir (Data1)
Imprimir (Data2)
Imprimir (Data3)
Imprimir (Data4)
Imprimir (Data5)
#concatenate dos tensores
Imprimir ("Tensor concatenado:", antorcha.CAT ((Data1, Data2, Data3, Data4, Data5)))

Producción:

Tensores reales:
Tensor ([10, 20, 40, 50])
Tensor ([2, 3, 4, 5])
Tensor ([12, 45, 67, 89])
Tensor ([100, 32, 45, 67])
Tensor ([120, 456, 1, 1])
Tensor concatenado: tensor ([10, 20, 40, 50, 2, 3, 4, 5, 12, 45, 67, 89, 100, 32,
45, 67, 120, 456, 1, 1])

Cinco tensores se concatenan horizontalmente (en cuanto a hileras) ya que los tensores son de tipo 1 dimensional.

Ejemplo 3:

En este ejemplo, crearemos cinco tensores bidimensionales en la CPU y los concatenaremos a través de filas usando antorcha.gato().

#módulo de antorcha de Import
antorcha de importación
#cree 5 tensores con 2 dimensiones cada uno
datos1 = antorcha.Tensor ([[10,20,40,50], [1,2,3,4]]).UPC()
data2 = antorcha.Tensor ([[2,3,4,5], [20,70,89,0]])).UPC()
datos3 = antorcha.Tensor ([[12,4,5,6], [56,34,56,787]])).UPC()
data4 = antorcha.Tensor ([[100,1,2,3], [67,87,6,78]])).UPC()
Data5 = antorcha.Tensor ([[120,33,56,78], [45,56,78,6]]).UPC()
#mostrar
Imprimir ("Tensores reales:")
Imprimir (Data1)
Imprimir (Data2)
Imprimir (Data3)
Imprimir (Data4)
Imprimir (Data5)
#Tensores de concatenato a través de filas
Imprimir ("Tensor concatenado:", antorcha.CAT ((Data1, Data2, Data3, Data4, Data5), Dim = 1))

Producción:

Tensores reales:
Tensor ([[10, 20, 40, 50],
[1, 2, 3, 4]])
Tensor ([[2, 3, 4, 5],
[20, 70, 89, 0]])
Tensor ([[12, 4, 5, 6],
[56, 34, 56, 787]])
Tensor ([100, 1, 2, 3],
[67, 87, 6, 78]])
Tensor ([[120, 33, 56, 78],
[45, 56, 78, 6]])
Tensor concatenado: tensor ([[10, 20, 40, 50, 2, 3, 4, 5, 12, 4, 5, 6, 100, 1,
2, 3, 120, 33, 56, 78],
[1, 2, 3, 4, 20, 70, 89, 0, 56, 34, 56, 787, 67, 87,
6, 78, 45, 56, 78, 6]])

Cinco tensores se concatenan horizontalmente (fila 0) como especificamos Dim = 1.

Ejemplo 4:

En este ejemplo, crearemos cinco tensores bidimensionales en la CPU y los concatenaremos a través de columnas usando antorcha.gato().

#módulo de antorcha de Import
antorcha de importación
#cree 5 tensores con 2 dimensiones cada uno
datos1 = antorcha.Tensor ([[10,20,40,50], [1,2,3,4]]).UPC()
data2 = antorcha.Tensor ([[2,3,4,5], [20,70,89,0]])).UPC()
datos3 = antorcha.Tensor ([[12,4,5,6], [56,34,56,787]])).UPC()
data4 = antorcha.Tensor ([[100,1,2,3], [67,87,6,78]])).UPC()
Data5 = antorcha.Tensor ([[120,33,56,78], [45,56,78,6]]).UPC()
#mostrar
Imprimir ("Tensores reales:")
Imprimir (Data1)
Imprimir (Data2)
Imprimir (Data3)
Imprimir (Data4)
Imprimir (Data5)
#Concatenate tensors a través de columnas
Imprimir ("Tensor concatenado:", antorcha.CAT ((Data1, Data2, Data3, Data4, Data5), Dim = 0))

Producción:

Tensores reales:
Tensor ([[10, 20, 40, 50],
[1, 2, 3, 4]])
Tensor ([[2, 3, 4, 5],
[20, 70, 89, 0]])
Tensor ([[12, 4, 5, 6],
[56, 34, 56, 787]])
Tensor ([100, 1, 2, 3],
[67, 87, 6, 78]])
Tensor ([[120, 33, 56, 78],
[45, 56, 78, 6]])
Tensor concatenado: tensor ([[10, 20, 40, 50],
[1, 2, 3, 4],
[2, 3, 4, 5],
[20, 70, 89, 0],
[12, 4, 5, 6],
[56, 34, 56, 787],
[100, 1, 2, 3],
[67, 87, 6, 78],
[120, 33, 56, 78],
[45, 56, 78, 6]])

Cinco tensores se concatenan verticalmente (en cuanto a columna) como especificamos Dim = 0.

Conclusión

Vimos cómo concatenar dos o más tensores horizontal y verticalmente en Pytorch usando la función CAT (). Si dim = 0, los tensores están concatenados en cuanto a columna; Si dim = 1, los tensores están concatenados. En este artículo, implementamos varios ejemplos para concatenar tensores uno y bidimensional y también implementamos CAT () en la CPU utilizando la función CPU ().