Denne bloggen vil illustrere metodene for å få tilgang til og endre verdiene til tensorer i PyTorch.
Hvordan få tilgang til og endre Tensors verdier/innhold i PyTorch?
For å få og endre verdiene til tensorer i PyTorch, kan to metoder brukes:
Metode 1: Få tilgang til og endre Tensors verdier ved hjelp av indeksering
Indeksering er en måte å velge et spesifikt element eller en rekke elementer fra en bestemt tensor på basert på deres posisjon. Brukere må bruke firkantede parenteser ' [ ] ” for å få tilgang til elementene langs hver dimensjon av tensoren. Når det gjelder en 2D-tensor, kan elementene nås på rad 'i' og kolonne 'j' ved å bruke 'tensor[i,j]'. For å gjøre det, følg de angitte trinnene:
Trinn 1: Importer PyTorch-biblioteket
Først importerer du ' lommelykt ' bibliotek:
import lommelykt
Trinn 2: Lag en tensor
Deretter bruker du ' torch.tensor() ”-funksjon for å lage en ønsket tensor og skrive ut elementene. For eksempel lager vi en 2D-tensor ' tiere 1 ” med dimensjoner 2×3:
tiere 1 = lommelykt. tensor ( [ [ 2 , 9 , 5 ] , [ 7 , 1 , 4 ] ] )
skrive ut ( tiere 1 )
Dette har skapt 2D-tensoren som vist nedenfor:
Trinn 3: Få tilgang til Tensors verdier ved å bruke indeksering
Nå får du tilgang til de ønskede verdiene til tensoren etter deres indeks. For eksempel har vi spesifisert indeksen '[1][2]' for ' tiere 1 ' for å få tilgang til verdien og lagret den i en variabel kalt ' temp_element '. Dette vil få tilgang til verdien i den andre raden og den tredje kolonnen:
temp_element = tiere 1 [ 1 ] [ 2 ]skrive ut ( temp_element )
Her: ' [1] ' betyr den andre raden og ' [2] ' betyr den tredje kolonnen fordi indeksering starter fra ' 0 '.
Det kan observeres at den ønskede verdien har blitt åpnet fra tensoren, dvs. '4':
Trinn 4: Endre Tensors verdier ved å bruke indeksering
For å endre den spesifikke verdien til tensoren, spesifiser indeksen og alloker den nye verdien. Her erstatter vi verdien av ' [0][1] 'indeks med ' femten ':
tiere 1 [ 0 ] [ 1 ] = femtenskrive ut ( tiere 1 )
Utdataene nedenfor viser at den spesifiserte verdien til tensoren har blitt modifisert:
Metode 2: Få tilgang til og modifiser Tensors verdier ved å bruke Slicing
Slicing er en måte å velge en delmengde av en tensor med én eller flere dimensjoner. Brukere kan bruke kolonoperatoren ':' for å spesifisere start- og sluttindeksene for snittet og trinnstørrelsen. Sjekk ut trinnene nedenfor for å forstå det bedre:
Trinn 1: Importer PyTorch-biblioteket
Først importerer du ' lommelykt ' bibliotek:
import lommelyktTrinn 2: Lag en tensor
Deretter oppretter du en ønsket tensor ved å bruke ' torch.tensor() ”-funksjonen og skrive ut elementene. For eksempel lager vi en 2D-tensor ' titalls 2 ” med dimensjoner 2×3:
titalls 2 = lommelykt. tensor ( [ [ 5 , 1 , 9 ] , [ 3 , 7 , 2 ] ] )skrive ut ( titalls 2 )
Dette har laget en 2D-tensor:
Trinn 3: Få tilgang til Tensors verdier ved å bruke Slicing
Nå får du tilgang til de ønskede verdiene til tensoren ved hjelp av skjæring. For eksempel har vi spesifisert indeksene '[1]' til 'tens1' for å få tilgang til verdiene og lagre dem i en variabel kalt ' nye_verdier '. Dette vil få tilgang til alle verdiene i den andre raden:
nye_verdier = titalls 2 [ 1 ]skrive ut ( 'Verdier for andre rad: ' , nye_verdier )
I utgangen nedenfor har alle verdiene som er tilstede i den andre raden av tensoren fått tilgang:
La oss ta et annet eksempel der vi får tilgang til verdien av den tredje kolonnen i tensoren. For å gjøre det, spesifiser ' [:, 2] ' indekser:
nye_verdier2 = titalls 2 [ : , 2 ]skrive ut ( 'Tredje kolonneverdier: ' , nye_verdier2 )
Dette har fått tilgang til og vist verdiene til den tredje kolonnen i tensoren:
Trinn 4: Endre Tensors verdier ved å bruke skjæring
For å endre de spesifikke verdiene til tensoren, spesifiser indeksene og alloker den nye verdien. Her endrer vi alle verdiene til den andre raden i tensoren. For dette har vi spesifisert ' [1] ”-indekser og tilordne nye verdier:
titalls 2 [ 1 ] = lommelykt. Tensor ( [ 30 , 60 , 90 ] )skrive ut ( 'Modifisert Tensor: ' , titalls 2 )
I henhold til utdataene nedenfor, er alle verdiene til den andre radens verdier for tensoren modifisert med suksess:
Vi har forklart de effektive metodene for å få tilgang til og endre tensorverdier i PyTorch.
Merk : Du kan få tilgang til Google Colab Notebook på denne link .
Konklusjon
For å få og endre tensorens verdier eller innhold i PyTorch, importer først 'fakkel'-biblioteket. Deretter oppretter du ønsket tensor. Deretter bruker du indekserings- eller skjæremetodene for å få tilgang til og endre tensorens ønskede verdier. For dette, spesifiser indeksen for henholdsvis indekser og vis de åpnede og modifiserte verdiene til tensoren. Denne bloggen har illustrert metodene for å få tilgang til og endre verdiene til tensorer i PyTorch.