Tento blog bude ilustrovať metódy prístupu a úpravy hodnôt tenzorov v PyTorch.
Ako pristupovať a upravovať hodnoty/obsah Tensor v PyTorch?
Na získanie a úpravu hodnôt tenzorov v PyTorch je možné použiť dve metódy:
Metóda 1: Prístup a úprava hodnôt Tensor pomocou indexovania
Indexovanie je spôsob výberu konkrétneho prvku alebo rozsahu prvkov z konkrétneho tenzora na základe ich polohy. Používatelia musia používať hranaté zátvorky “ [ ] ” pre prístup k prvkom pozdĺž každého rozmeru tenzora. V prípade 2D tenzora sú prvky prístupné v riadku „i“ a stĺpci „j“ pomocou „tensor[i,j]“. Ak to chcete urobiť, postupujte podľa uvedených krokov:
Krok 1: Importujte knižnicu PyTorch
Najprv importujte súbor „ fakľa “knižnica:
importovať fakľa
Krok 2: Vytvorte tenzor
Potom použite „ pochodeň.tensor() ” na vytvorenie požadovaného tenzora a vytlačenie jeho prvkov. Napríklad vytvárame 2D tenzor “ desiatky1 ” s rozmermi 2×3:
desiatky1 = fakľa. tenzor ( [ [ 2 , 9 , 5 ] , [ 7 , 1 , 4 ] ] )
vytlačiť ( desiatky1 )
Toto vytvorilo 2D tenzor, ako je vidieť nižšie:
Krok 3: Prístup k hodnotám Tensor pomocou indexovania
Teraz pristupujte k požadovaným hodnotám tenzora podľa ich indexu. Napríklad sme špecifikovali index „[1][2]“ pre „ desiatky1 ” pre prístup k jej hodnote a uloženie do premennej s názvom “ temp_element “. Týmto získate prístup k hodnote prítomnej v druhom riadku a treťom stĺpci:
temp_element = desiatky1 [ 1 ] [ 2 ]vytlačiť ( temp_element )
Tu: ' [1] “ znamená druhý riadok a „ [2] “ znamená tretí stĺpec, pretože indexovanie začína od „ 0 “.
Je možné pozorovať, že požadovaná hodnota bola získaná z tenzora, tj „4“:
Krok 4: Upravte hodnoty Tensor pomocou indexovania
Ak chcete upraviť špecifickú hodnotu tenzora, zadajte index a priraďte novú hodnotu. Tu nahrádzame hodnotu „ [0][1] 'index s ' pätnásť “:
desiatky1 [ 0 ] [ 1 ] = pätnásťvytlačiť ( desiatky1 )
Nižšie uvedený výstup ukazuje, že špecifikovaná hodnota tenzora bola úspešne upravená:
Metóda 2: Prístup k hodnotám tenzora a ich úprava pomocou krájania
Krájanie je spôsob výberu podmnožiny tenzora s jedným alebo viacerými rozmermi. Používatelia môžu použiť dvojbodkový operátor „:“ na určenie počiatočných a koncových indexov rezu a veľkosti kroku. Ak chcete lepšie porozumieť, pozrite si nižšie uvedené kroky:
Krok 1: Importujte knižnicu PyTorch
Najprv importujte súbor „ fakľa “knižnica:
importovať fakľaKrok 2: Vytvorte tenzor
Potom vytvorte požadovaný tenzor pomocou „ pochodeň.tensor() ” a vytlačte jej prvky. Napríklad vytvárame 2D tenzor “ desiatky2 ” s rozmermi 2×3:
desiatky2 = fakľa. tenzor ( [ [ 5 , 1 , 9 ] , [ 3 , 7 , 2 ] ] )vytlačiť ( desiatky2 )
Toto vytvorilo 2D tenzor:
Krok 3: Prístup k hodnotám Tensor pomocou Slicing
Teraz prejdite na požadované hodnoty tenzora pomocou krájania. Napríklad sme špecifikovali indexy „[1]“ pre „desiatky1“, aby sme získali prístup k jeho hodnotám a uložili ich do premennej s názvom „ nové_hodnoty “. Týmto sa sprístupnia všetky hodnoty v druhom riadku:
nové_hodnoty = desiatky2 [ 1 ]vytlačiť ( 'Hodnoty druhého riadka: ' , nové_hodnoty )
V nižšie uvedenom výstupe sa úspešne sprístupnili všetky hodnoty prítomné v druhom riadku tenzora:
Zoberme si ďalší príklad, v ktorom budeme pristupovať k hodnote tretieho stĺpca tenzora. Ak to chcete urobiť, zadajte „ [:, 2] 'indexy:
nové_hodnoty2 = desiatky2 [ : , 2 ]vytlačiť ( 'Hodnoty tretieho stĺpca: ' , nové_hodnoty2 )
Toto úspešne sprístupnilo a zobrazilo hodnoty tretieho stĺpca tenzora:
Krok 4: Upravte hodnoty Tensor pomocou Slicing
Ak chcete upraviť špecifické hodnoty tenzora, špecifikujte indexy a priraďte novú hodnotu. Tu meníme všetky hodnoty druhého riadku v tenzore. Na tento účel sme špecifikovali „ [1] ” indexy a prideliť nové hodnoty:
desiatky2 [ 1 ] = fakľa. Tenzor ( [ 30 , 60 , 90 ] )vytlačiť ( 'Upravený tenzor: ' , desiatky2 )
Podľa nižšie uvedeného výstupu boli všetky hodnoty hodnôt tenzora v druhom riadku úspešne upravené:
Vysvetlili sme efektívne metódy prístupu a úpravy hodnôt tenzorov v PyTorch.
Poznámka : K nášmu Zápisníku Google Colab môžete pristupovať tu odkaz .
Záver
Ak chcete získať a upraviť hodnoty alebo obsah tenzora v PyTorch, najprv importujte knižnicu „pochodeň“. Potom vytvorte požadovaný tenzor. Potom použite metódy indexovania alebo rezania na prístup a úpravu požadovaných hodnôt tenzora. Na tento účel zadajte index indexov a zobrazte prístupné a upravené hodnoty tenzora. Tento blog ilustroval metódy prístupu a úpravy hodnôt tenzorov v PyTorch.