Hvordan får man adgang til og ændrer Tensors værdier i PyTorch?

Hvordan Far Man Adgang Til Og Aendrer Tensors Vaerdier I Pytorch



PyTorch er en dybdelæringsramme, der gør det muligt for brugere at skabe/definere og manipulere tensorer. Tensorer er multidimensionelle arrays, der kan lagre data/værdier af forskellige typer og former. Men nogle gange ønsker brugere at få adgang til og ændre det specifikke indhold eller værdierne af den ønskede tensor. I denne situation kan de bruge forskellige metoder til at udføre denne operation.

Denne blog vil illustrere metoderne til at få adgang til og ændre værdierne af tensorer i PyTorch.

Hvordan får man adgang til og ændrer Tensors værdier/indhold i PyTorch?

For at få og ændre værdierne af tensorer i PyTorch, kan to metoder bruges:







Metode 1: Få adgang til og rediger Tensors værdier ved hjælp af indeksering

Indeksering er en måde at vælge et specifikt element eller en række elementer fra en bestemt tensor på baseret på deres position. Brugere skal bruge firkantede parenteser ' [ ] ” for at få adgang til elementerne langs hver dimension af tensoren. I tilfælde af en 2D-tensor kan elementerne tilgås i række 'i' og kolonne 'j' ved at bruge 'tensor[i,j]'. For at gøre det skal du følge de angivne trin:



Trin 1: Importer PyTorch Library

Først skal du importere ' fakkel ” bibliotek:



importere fakkel

Trin 2: Opret en Tensor

Brug derefter ' torch.tensor() ”-funktion til at oprette en ønsket tensor og udskrive dens elementer. For eksempel skaber vi en 2D-tensor ' tiere 1 ” med mål 2×3:





tiere 1 = fakkel. tensor ( [ [ 2 , 9 , 5 ] , [ 7 , 1 , 4 ] ] )

Print ( tiere 1 )

Dette har skabt 2D-tensoren som vist nedenfor:



Trin 3: Få adgang til Tensors værdier ved hjælp af indeksering

Få nu adgang til de ønskede værdier for tensoren efter deres indeks. For eksempel har vi specificeret indekset '[1][2]' for ' tiere 1 ' for at få adgang til dens værdi og gemt den i en variabel ved navn ' temp_element ”. Dette vil få adgang til værdien i anden række og tredje kolonne:

temp_element = tiere 1 [ 1 ] [ 2 ]

Print ( temp_element )

Her: ' [1] ' betyder den anden række og ' [2] ' betyder den tredje kolonne, fordi indeksering starter fra ' 0 ”.

Det kan observeres, at den ønskede værdi er blevet tilgået fra tensoren, dvs. '4':

Trin 4: Rediger Tensors værdier ved hjælp af indeksering

For at ændre den specifikke værdi af tensoren skal du angive indekset og allokere den nye værdi. Her erstatter vi værdien af ​​' [0][1] 'indeks med ' femten ”:

tiere 1 [ 0 ] [ 1 ] = femten

Print ( tiere 1 )

Nedenstående output viser, at den angivne værdi af tensoren er blevet ændret med succes:

Metode 2: Få adgang til og rediger Tensors værdier ved hjælp af udskæring

Udskæring er en måde at vælge en delmængde af en tensor på med en eller flere dimensioner. Brugere kan bruge kolonoperatoren ':' til at angive start- og slutindekset for udsnittet og trinstørrelsen. Tjek nedenstående trin for at forstå det bedre:

Trin 1: Importer PyTorch Library

Først skal du importere ' fakkel ” bibliotek:

importere fakkel

Trin 2: Opret en Tensor

Opret derefter en ønsket tensor ved hjælp af ' torch.tensor() ”-funktion og udskriv dens elementer. For eksempel skaber vi en 2D-tensor ' tiere 2 ” med mål 2×3:

tiere 2 = fakkel. tensor ( [ [ 5 , 1 , 9 ] , [ 3 , 7 , 2 ] ] )

Print ( tiere 2 )

Dette har skabt en 2D-tensor:

Trin 3: Få adgang til Tensors værdier ved hjælp af udskæring

Få nu adgang til de ønskede værdier for tensoren ved hjælp af udskæring. For eksempel har vi specificeret indeksene '[1]' for 'tens1' for at få adgang til dets værdier og gemme dem i en variabel med navnet ' nye_værdier ”. Dette vil få adgang til alle værdierne i den anden række:

nye_værdier = tiere 2 [ 1 ]

Print ( 'Værdier for anden række: ' , nye_værdier )

I nedenstående output er alle værdierne i den anden række af tensoren blevet tilgået med succes:

Lad os tage et andet eksempel, hvor vi får adgang til værdien af ​​den tredje kolonne af tensoren. For at gøre det skal du angive ' [:, 2] ' indekser:

nye_værdier2 = tiere 2 [ : , 2 ]

Print ( 'Tredje kolonneværdier: ' , nye_værdier2 )

Dette har med succes adgang til og vist værdierne for den tredje kolonne i tensoren:

Trin 4: Rediger Tensors værdier ved hjælp af udskæring

For at ændre de specifikke værdier for tensoren skal du angive indeksene og tildele den nye værdi. Her ændrer vi alle værdierne i den anden række i tensoren. Til dette har vi specificeret ' [1] ” indekser og alloker nye værdier:

tiere 2 [ 1 ] = fakkel. Tensor ( [ 30 , 60 , 90 ] )

Print ( 'Modificeret Tensor: ' , tiere 2 )

Ifølge nedenstående output er alle værdierne af anden rækkes værdier af tensoren blevet ændret med succes:

Vi har forklaret de effektive metoder til at få adgang til og ændre tensorværdier i PyTorch.

Bemærk : Du kan få adgang til vores Google Colab Notebook her link .

Konklusion

For at få og ændre tensorens værdier eller indhold i PyTorch skal du først importere 'fakkel'-biblioteket. Opret derefter den ønskede tensor. Brug derefter indekserings- eller udsnitsmetoderne til at få adgang til og ændre tensorens ønskede værdier. Til dette skal du angive henholdsvis indekset for indekser og vise de tilgåede og ændrede værdier for tensoren. Denne blog har illustreret metoderne til at få adgang til og ændre værdierne af tensorer i PyTorch.