Pytorch è un framework open source per il linguaggio di programmazione Python.
Un tensore è un array multidimensionale che viene utilizzato per archiviare i dati. Quindi, per usare un tensore, dobbiamo importare il modulo Torcia.
Per creare un tensore il metodo utilizzato è tensore ().
Sintassi:
torcia.tensore (dati)
Dove i dati sono un array multidimensionale.
torcia.gatto()
Per concatenare due o più tensori per una riga o una colonna, utilizzare la torcia.gatto().
Sintassi:
torcia.cat ((tensor_object1, tensor_object2,…), dim)
Parametri:
- Ci vogliono due o più tensori come primo parametro.
- Se Dim = 0, i tensori sono concatenati in termini di colonna. Se Dim = 1, i tensori sono concatenati in termini di riga.
Esempio 1:
In questo esempio, creeremo due tensori unidimensionali e li concateneremo tramite file usando la torcia.gatto()
Modulo Torcia #IMport
Torcia di importazione
#Crea 2 tensori
data1 = torcia.Tensor ([10,20,30,40,50])
data2 = torcia.tensore ([1,2,3,4,5])
#Schermo
Stampa ("Tensori reali:")
Stampa (Data1)
Stampa (data2)
#Concatenate due tensori
Stampa ("Tensore concatenato:", Torcia.Cat ((data1, data2)))
Produzione:
Tensori reali:
Tensor ([10, 20, 30, 40, 50])
tensore ([1, 2, 3, 4, 5])
Tensor concatenato: tensore ([10, 20, 30, 40, 50, 1, 2, 3, 4, 5])
Due tensori sono concatenati orizzontalmente (in termini di riga) poiché i tensori sono di tipo 1 dimensionale.
Esempio 2:
In questo esempio, creeremo cinque tensori unidimensionali e li concateneremo a righe usando la torcia.gatto().
Modulo Torcia #IMport
Torcia di importazione
#Crea 5 tensori
data1 = torcia.Tensor ([10,20,40,50])
data2 = torcia.tensore ([2,3,4,5])
data3 = torcia.tensore ([12,45,67,89])
data4 = torcia.tensore ([100,32,45,67])
data5 = torcia.tensore ([120.456,1,1])
#Schermo
Stampa ("Tensori reali:")
Stampa (Data1)
Stampa (data2)
Stampa (data3)
Stampa (data4)
Stampa (data5)
#Concatenate due tensori
Stampa ("Tensore concatenato:", Torcia.Cat ((Data1, Data2, Data3, Data4, Data5))
Produzione:
Tensori reali:
Tensor ([10, 20, 40, 50])
tensore ([2, 3, 4, 5])
tensore ([12, 45, 67, 89])
tensore ([100, 32, 45, 67])
tensore ([120, 456, 1, 1])
Tensor concatenato: tensore ([10, 20, 40, 50, 2, 3, 4, 5, 12, 45, 67, 89, 100, 32,
45, 67, 120, 456, 1, 1])
Cinque tensori sono concatenati orizzontalmente (in termini di riga) poiché i tensori sono di tipo 1 dimensionale ..
Esempio 3:
In questo esempio, creeremo cinque tensori bidimensionali e li concateneremo tramite righe usando la torcia.gatto().
Modulo Torcia #IMport
Torcia di importazione
#Crea 5 tensori con 2 dimensioni ciascuno
data1 = torcia.tensore ([[10,20,40,50], [1,2,3,4]])
data2 = torcia.tensore ([[2,3,4,5], [20,70,89,0]])
data3 = torcia.tensore ([[12,4,5,6], [56,34,56,787]])
data4 = torcia.tensore ([[100,1,2,3], [67,87,6,78]])
data5 = torcia.Tensor ([[120,33,56,78], [45,56,78,6]])
#Schermo
Stampa ("Tensori reali:")
Stampa (Data1)
Stampa (data2)
Stampa (data3)
Stampa (data4)
Stampa (data5)
Tensori #Concatenate tramite righe
Stampa ("Tensore concatenato:", Torcia.Cat ((Data1, Data2, Data3, Data4, Data5), Dim = 1))
Produzione:
Tensori reali:
Tensor ([[10, 20, 40, 50],
[1, 2, 3, 4]])
tensore ([[2, 3, 4, 5],
[20, 70, 89, 0]])
tensore ([[12, 4, 5, 6],
[56, 34, 56, 787]])
tensore ([[100, 1, 2, 3],
[67, 87, 6, 78]])
tensore ([[120, 33, 56, 78],
[45, 56, 78, 6]])
Tensor concatenato: tensore ([[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]])
Cinque tensori sono concatenati in orizzontale (in termini di riga) come abbiamo specificato Dim = 1.
Esempio 4:
In questo esempio, creeremo cinque tensori bidimensionali e li concateneremo tramite colonne usando la torcia.gatto().
Modulo Torcia #IMport
Torcia di importazione
#Crea 5 tensori con 2 dimensioni ciascuno
data1 = torcia.tensore ([[10,20,40,50], [1,2,3,4]])
data2 = torcia.tensore ([[2,3,4,5], [20,70,89,0]])
data3 = torcia.tensore ([[12,4,5,6], [56,34,56,787]])
data4 = torcia.tensore ([[100,1,2,3], [67,87,6,78]])
data5 = torcia.Tensor ([[120,33,56,78], [45,56,78,6]])
#Schermo
Stampa ("Tensori reali:")
Stampa (Data1)
Stampa (data2)
Stampa (data3)
Stampa (data4)
Stampa (data5)
Tensori #Concatenate tramite colonne
Stampa ("Tensore concatenato:", Torcia.Cat ((Data1, Data2, Data3, Data4, Data5), Dim = 0))
Produzione:
Tensori reali:
Tensor ([[10, 20, 40, 50],
[1, 2, 3, 4]])
tensore ([[2, 3, 4, 5],
[20, 70, 89, 0]])
tensore ([[12, 4, 5, 6],
[56, 34, 56, 787]])
tensore ([[100, 1, 2, 3],
[67, 87, 6, 78]])
tensore ([[120, 33, 56, 78],
[45, 56, 78, 6]])
Tensor concatenato: tensore ([[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]])
Cinque tensori sono concatenati verticalmente (per quanto riguarda la colonna) come abbiamo specificato Dim = 0.
Lavorare con la CPU
Se si desidera eseguire una funzione Cat () sulla CPU, allora dobbiamo creare un tensore con una funzione CPU (). Questo funzionerà su una macchina CPU.
Al momento, quando stiamo creando un tensore, possiamo usare la funzione CPU ().
Sintassi:
torcia.tensore (dati).processore()
Esempio 1:
In questo esempio, creeremo due tensori monodimensionali sulla CPU e li concateremo tramite file usando la torcia.gatto().
Modulo Torcia #IMport
Torcia di importazione
#Crea 2 tensori
data1 = torcia.Tensor ([10,20,30,40,50]).processore()
data2 = torcia.tensore ([1,2,3,4,5]).processore()
#Schermo
Stampa ("Tensori reali:")
Stampa (Data1)
Stampa (data2)
#Concatenate due tensori
Stampa ("Tensore concatenato:", Torcia.Cat ((data1, data2)))
Produzione:
Tensori reali:
Tensor ([10, 20, 30, 40, 50])
tensore ([1, 2, 3, 4, 5])
Tensor concatenato: tensore ([10, 20, 30, 40, 50, 1, 2, 3, 4, 5])
Due tensori sono concatenati orizzontalmente (in termini di riga) poiché i tensori sono di tipo 1 dimensionale.
Esempio 2:
In questo esempio, creeremo cinque tensori monodimensionali sulla CPU e concatenano a righe usando la torcia.gatto().
Modulo Torcia #IMport
Torcia di importazione
#Crea 5 tensori
data1 = torcia.Tensor ([10,20,40,50]).processore()
data2 = torcia.tensore ([2,3,4,5]).processore()
data3 = torcia.tensore ([12,45,67,89]).processore()
data4 = torcia.tensore ([100,32,45,67]).processore()
data5 = torcia.tensore ([120.456,1,1]).processore()
#Schermo
Stampa ("Tensori reali:")
Stampa (Data1)
Stampa (data2)
Stampa (data3)
Stampa (data4)
Stampa (data5)
#Concatenate due tensori
Stampa ("Tensore concatenato:", Torcia.Cat ((Data1, Data2, Data3, Data4, Data5))
Produzione:
Tensori reali:
Tensor ([10, 20, 40, 50])
tensore ([2, 3, 4, 5])
tensore ([12, 45, 67, 89])
tensore ([100, 32, 45, 67])
tensore ([120, 456, 1, 1])
Tensor concatenato: tensore ([10, 20, 40, 50, 2, 3, 4, 5, 12, 45, 67, 89, 100, 32,
45, 67, 120, 456, 1, 1])
Cinque tensori sono concatenati orizzontalmente (in termini di riga) poiché i tensori sono di tipo 1 dimensionale.
Esempio 3:
In questo esempio, creeremo cinque tensori bidimensionali sulla CPU e li concateremo tramite file usando la torcia.gatto().
Modulo Torcia #IMport
Torcia di importazione
#Crea 5 tensori con 2 dimensioni ciascuno
data1 = torcia.tensore ([[10,20,40,50], [1,2,3,4]]).processore()
data2 = torcia.tensore ([[2,3,4,5], [20,70,89,0]]).processore()
data3 = torcia.tensore ([[12,4,5,6], [56,34,56,787]]).processore()
data4 = torcia.tensore ([[100,1,2,3], [67,87,6,78]]).processore()
data5 = torcia.Tensor ([[120,33,56,78], [45,56,78,6]]).processore()
#Schermo
Stampa ("Tensori reali:")
Stampa (Data1)
Stampa (data2)
Stampa (data3)
Stampa (data4)
Stampa (data5)
Tensori #Concatenate tramite righe
Stampa ("Tensore concatenato:", Torcia.Cat ((Data1, Data2, Data3, Data4, Data5), Dim = 1))
Produzione:
Tensori reali:
Tensor ([[10, 20, 40, 50],
[1, 2, 3, 4]])
tensore ([[2, 3, 4, 5],
[20, 70, 89, 0]])
tensore ([[12, 4, 5, 6],
[56, 34, 56, 787]])
tensore ([[100, 1, 2, 3],
[67, 87, 6, 78]])
tensore ([[120, 33, 56, 78],
[45, 56, 78, 6]])
Tensor concatenato: tensore ([[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]])
Cinque tensori sono concatenati orizzontalmente (riga0) come abbiamo specificato Dim = 1.
Esempio 4:
In questo esempio, creeremo cinque tensori bidimensionali sulla CPU e li concateremo tramite colonne usando la torcia.gatto().
Modulo Torcia #IMport
Torcia di importazione
#Crea 5 tensori con 2 dimensioni ciascuno
data1 = torcia.tensore ([[10,20,40,50], [1,2,3,4]]).processore()
data2 = torcia.tensore ([[2,3,4,5], [20,70,89,0]]).processore()
data3 = torcia.tensore ([[12,4,5,6], [56,34,56,787]]).processore()
data4 = torcia.tensore ([[100,1,2,3], [67,87,6,78]]).processore()
data5 = torcia.Tensor ([[120,33,56,78], [45,56,78,6]]).processore()
#Schermo
Stampa ("Tensori reali:")
Stampa (Data1)
Stampa (data2)
Stampa (data3)
Stampa (data4)
Stampa (data5)
Tensori #Concatenate tramite colonne
Stampa ("Tensore concatenato:", Torcia.Cat ((Data1, Data2, Data3, Data4, Data5), Dim = 0))
Produzione:
Tensori reali:
Tensor ([[10, 20, 40, 50],
[1, 2, 3, 4]])
tensore ([[2, 3, 4, 5],
[20, 70, 89, 0]])
tensore ([[12, 4, 5, 6],
[56, 34, 56, 787]])
tensore ([[100, 1, 2, 3],
[67, 87, 6, 78]])
tensore ([[120, 33, 56, 78],
[45, 56, 78, 6]])
Tensor concatenato: tensore ([[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]])
Cinque tensori sono concatenati verticalmente (per quanto riguarda la colonna) come abbiamo specificato Dim = 0.
Conclusione
Abbiamo visto come concatenare due o più tensori orizzontalmente e verticalmente in Pytorch usando la funzione Cat (). Se Dim = 0, i tensori sono concatenati in termini di colonna; Se Dim = 1, i tensori sono concatenati in termini di riga. In questo articolo, abbiamo implementato diversi esempi per concatenare i tensori singoli e bidimensionali e anche implementato CAT () sulla CPU usando la funzione CPU ().