Cum să accesați și să modificați valorile Tensorului în PyTorch?

Cum Sa Accesati Si Sa Modificati Valorile Tensorului In Pytorch



PyTorch este un cadru de învățare profundă care permite utilizatorilor să creeze/defini și să manipuleze tensori. Tensorii sunt matrice multidimensionale care pot stoca date/valori de diferite tipuri și forme. Cu toate acestea, uneori, utilizatorii doresc să acceseze și să modifice conținutul specific sau valorile tensorului dorit. În această situație, ei pot folosi diferite metode pentru a efectua această operație.

Acest blog va ilustra metodele de accesare și modificare a valorilor tensoarelor în PyTorch.

Cum să accesați și să modificați valorile/conținutul lui Tensor în PyTorch?

Pentru a obține și modifica valorile tensoarelor în PyTorch, pot fi utilizate două metode:







Metoda 1: Accesați și modificați valorile Tensorului folosind indexare

Indexarea este o modalitate de a selecta un anumit element sau o serie de elemente dintr-un anumit tensor în funcție de poziția lor. Utilizatorii trebuie să folosească paranteze drepte „ [ ] ” pentru a accesa elementele de-a lungul fiecărei dimensiuni a tensorului. În cazul unui tensor 2D, elementele pot fi accesate la rândul „i” și coloana „j” folosind „tensor[i,j]”. Pentru a face acest lucru, urmați pașii furnizați:



Pasul 1: importați biblioteca PyTorch

Mai întâi, importați „ torță ” biblioteca:



import torță

Pasul 2: Creați un tensor

Apoi, utilizați „ torță.tensor() ” pentru a crea un tensor dorit și a imprima elementele acestuia. De exemplu, creăm un tensor 2D „ zeci1 ” cu dimensiunile 2×3:





zeci1 = torță. tensor ( [ [ 2 , 9 , 5 ] , [ 7 , 1 , 4 ] ] )

imprimare ( zeci1 )

Aceasta a creat tensorul 2D, după cum se vede mai jos:



Pasul 3: Accesați valorile tensorului utilizând indexare

Acum, accesați valorile dorite ale tensorului după indicele lor. De exemplu, am specificat indexul „[1][2]” al „ zeci1 ” pentru a-i accesa valoarea și a stocat-o într-o variabilă numită ” element_temp ”. Aceasta va accesa valoarea prezentă în al doilea rând și a treia coloană:

element_temp = zeci1 [ 1 ] [ 2 ]

imprimare ( element_temp )

Aici: ' [1] „ înseamnă al doilea rând și „ [2] ” înseamnă a treia coloană deoarece indexarea începe de la „ 0 ”.

Se poate observa că valoarea dorită a fost accesată de la tensor, adică „4”:

Pasul 4: Modificați valorile tensorului utilizând indexare

Pentru a modifica valoarea specifică a tensorului, specificați indicele și alocați noua valoare. Aici, înlocuim valoarea „ [0][1] ” index cu “ cincisprezece ”:

zeci1 [ 0 ] [ 1 ] = cincisprezece

imprimare ( zeci1 )

Rezultatul de mai jos arată că valoarea specificată a tensorului a fost modificată cu succes:

Metoda 2: Accesați și modificați valorile Tensorului folosind Slicing

Tăierea este o modalitate de a selecta un subset al unui tensor cu una sau mai multe dimensiuni. Utilizatorii pot folosi operatorul două puncte „:” pentru a specifica indicii de început și de sfârșit ai feliei și dimensiunea pasului. Consultați pașii furnizați mai jos pentru a înțelege mai bine:

Pasul 1: importați biblioteca PyTorch

Mai întâi, importați „ torță ” biblioteca:

import torță

Pasul 2: Creați un tensor

Apoi, creați un tensor dorit folosind „ torță.tensor() ” funcţionează şi imprimă elementele acestuia. De exemplu, creăm un tensor 2D „ zeci2 ” cu dimensiunile 2×3:

zeci2 = torță. tensor ( [ [ 5 , 1 , 9 ] , [ 3 , 7 , 2 ] ] )

imprimare ( zeci2 )

Aceasta a creat un tensor 2D:

Pasul 3: Accesați valorile Tensorului folosind Slicing

Acum, accesați valorile dorite ale tensorului folosind slicing. De exemplu, am specificat indicii „[1]” ai „zecilor1” pentru a accesa valorile acestuia și a le stoca într-o variabilă numită „ valori_noi ”. Aceasta va accesa toate valorile prezente în al doilea rând:

valori_noi = zeci2 [ 1 ]

imprimare ( 'Valorile al doilea rând: ' , valori_noi )

În rezultatul de mai jos, toate valorile prezente în al doilea rând al tensorului au fost accesate cu succes:

Să luăm un alt exemplu în care vom accesa valoarea celei de-a treia coloane a tensorului. Pentru a face acest lucru, specificați „ [:, 2] ” indici:

valori_noi2 = zeci2 [ : , 2 ]

imprimare ( „Valori a treia coloană:” , valori_noi2 )

Acesta a accesat și afișat cu succes valorile coloanei a treia a tensorului:

Pasul 4: Modificați valorile Tensorului folosind Slicing

Pentru a modifica valorile specifice ale tensorului, specificați indicii și alocați noua valoare. Aici, schimbăm toate valorile celui de-al doilea rând din tensor. Pentru aceasta, am precizat „ [1] ” indici și alocă noi valori:

zeci2 [ 1 ] = torță. Tensor ( [ 30 , 60 , 90 ] )

imprimare ( 'Tensor modificat: ' , zeci2 )

Conform rezultatului de mai jos, toate valorile valorilor tensorului din al doilea rând au fost modificate cu succes:

Am explicat metodele eficiente de accesare și modificare a valorilor tensorilor în PyTorch.

Notă : Puteți accesa blocnotesul nostru Google Colab aici legătură .

Concluzie

Pentru a obține și a modifica valorile sau conținutul tensorului în PyTorch, importați mai întâi biblioteca „torță”. Apoi, creați tensorul dorit. Apoi, utilizați metodele de indexare sau tăiere pentru a accesa și modifica valorile dorite ale tensorului. Pentru aceasta, specificați indicele indicilor respectiv și afișați valorile accesate și modificate ale tensorului. Acest blog a ilustrat metodele de accesare și modificare a valorilor tensoarelor în PyTorch.