Tento blog bude ilustrovat metody přístupu a úpravy hodnot tenzorů v PyTorch.
Jak přistupovat a upravovat hodnoty/obsah Tensoru v PyTorch?
Chcete-li získat a upravit hodnoty tenzorů v PyTorch, lze použít dvě metody:
Metoda 1: Přístup k hodnotám Tensoru a jejich úprava pomocí indexování
Indexování je způsob výběru konkrétního prvku nebo rozsahu prvků z určitého tenzoru na základě jejich pozice. Uživatelé musí používat hranaté závorky “ [ ] ” pro přístup k prvkům podél každého rozměru tenzoru. V případě 2D tenzoru lze prvky zpřístupnit na řádku „i“ a sloupci „j“ pomocí „tensor[i,j]“. Chcete-li tak učinit, postupujte podle uvedených kroků:
Krok 1: Import knihovny PyTorch
Nejprve importujte „ pochodeň ”knihovna:
import pochodeň
Krok 2: Vytvořte tenzor
Poté použijte „ pochodeň.tensor() ” pro vytvoření požadovaného tenzoru a tisk jeho prvků. Například vytváříme 2D tenzor “ desítky1 “ s rozměry 2×3:
desítky1 = pochodeň. tenzor ( [ [ 2 , 9 , 5 ] , [ 7 , 1 , 4 ] ] )
tisk ( desítky1 )
Tím byl vytvořen 2D tenzor, jak je vidět níže:
Krok 3: Přístup k hodnotám Tensor pomocí indexování
Nyní přistupte k požadovaným hodnotám tenzoru pomocí jejich indexu. Například jsme specifikovali index „[1][2]“ pro „ desítky1 ” pro přístup k jeho hodnotě a uložení do proměnné s názvem “ temp_element “. Tím získáte přístup k hodnotě uvedené ve druhém řádku a třetím sloupci:
temp_element = desítky1 [ 1 ] [ 2 ]tisk ( temp_element )
Tady: ' [1] “ znamená druhý řádek a „ [2] “ znamená třetí sloupec, protože indexování začíná od „ 0 “.
Lze pozorovat, že požadovaná hodnota byla zpřístupněna z tenzoru, tj. „4“:
Krok 4: Upravte hodnoty Tensoru pomocí indexování
Chcete-li upravit konkrétní hodnotu tenzoru, zadejte index a přidělte novou hodnotu. Zde nahrazujeme hodnotu „ [0][1] 'index s ' patnáct “:
desítky1 [ 0 ] [ 1 ] = patnácttisk ( desítky1 )
Níže uvedený výstup ukazuje, že zadaná hodnota tenzoru byla úspěšně upravena:
Metoda 2: Přístup k hodnotám Tensoru a jejich úprava pomocí krájení
Slicování je způsob výběru podmnožiny tenzoru s jedním nebo více rozměry. Uživatelé mohou použít dvojtečku „:“ k určení počátečního a koncového indexu řezu a velikosti kroku. Podívejte se na níže uvedené kroky, abyste tomu lépe porozuměli:
Krok 1: Import knihovny PyTorch
Nejprve importujte „ pochodeň ”knihovna:
import pochodeňKrok 2: Vytvořte tenzor
Dále vytvořte požadovaný tenzor pomocí „ pochodeň.tensor() ” a vytisknout její prvky. Například vytváříme 2D tenzor “ desítky2 “ s rozměry 2×3:
desítky2 = pochodeň. tenzor ( [ [ 5 , 1 , 9 ] , [ 3 , 7 , 2 ] ] )tisk ( desítky2 )
To vytvořilo 2D tenzor:
Krok 3: Přístup k hodnotám Tensor pomocí Slicing
Nyní přistupte k požadovaným hodnotám tenzoru pomocí krájení. Například jsme specifikovali indexy „[1]“ pro „desítky1“, abychom získali přístup k jeho hodnotám a uložili je do proměnné s názvem „ nové_hodnoty “. Tím získáte přístup ke všem hodnotám přítomným ve druhém řádku:
nové_hodnoty = desítky2 [ 1 ]tisk ( 'Hodnoty druhého řádku: ' , nové_hodnoty )
V níže uvedeném výstupu byly úspěšně zpřístupněny všechny hodnoty přítomné ve druhém řádku tenzoru:
Vezměme si další příklad, ve kterém budeme přistupovat k hodnotě třetího sloupce tenzoru. Chcete-li tak učinit, zadejte „ [:, 2] 'indexy:
nové_hodnoty2 = desítky2 [ : , 2 ]tisk ( 'Hodnoty třetího sloupce: ' , nové_hodnoty2 )
To úspěšně zpřístupnilo a zobrazilo hodnoty třetího sloupce tenzoru:
Krok 4: Upravte hodnoty Tensoru pomocí Slicingu
Chcete-li upravit konkrétní hodnoty tenzoru, zadejte indexy a přidělte novou hodnotu. Zde měníme všechny hodnoty druhého řádku v tenzoru. Za tímto účelem jsme specifikovali „ [1] ” indexy a přidělují nové hodnoty:
desítky2 [ 1 ] = pochodeň. Tenzor ( [ 30 , 60 , 90 ] )tisk ( 'Upravený tenzor:' , desítky2 )
Podle níže uvedeného výstupu byly všechny hodnoty hodnot druhého řádku tenzoru úspěšně upraveny:
Vysvětlili jsme efektivní metody přístupu a úpravy hodnot tenzoru v PyTorch.
Poznámka : Zde máte přístup k našemu Zápisníku Google Colab odkaz .
Závěr
Chcete-li získat a upravit hodnoty nebo obsah tenzoru v PyTorch, nejprve importujte knihovnu „pochodeň“. Poté vytvořte požadovaný tenzor. Dále použijte metody indexování nebo dělení pro přístup a úpravu požadovaných hodnot tenzoru. Za tímto účelem zadejte příslušný index indexů a zobrazte přístupné a upravené hodnoty tenzoru. Tento blog ilustroval metody přístupu a úpravy hodnot tenzorů v PyTorch.