Jednotlivé údaje sa ukladajú v tvare „ Tenzory “ v PyTorch a “ prechody ” tenzorov sa vypočítajú pomocou spätného šírenia v rámci trénovacej slučky modelu hlbokého učenia. Termín ' bez mierky “ znamená, že údaje sú nespracované a nevyžadujú žiadne predbežné spracovanie ani optimalizáciu. Neškálovaný gradient tenzora poskytuje skutočnú hodnotu zmeny o špecifikovanej stratovej funkcii.
V tomto blogu budeme diskutovať o tom, ako vypočítať neškálovaný gradient tenzora v PyTorch.
Čo je to nezmenený gradient tenzora v PyTorch?
Tenzory sú viacrozmerné polia, ktoré obsahujú dáta a môžu bežať na GPU v PyTorch. Tenzory, ktoré obsahujú nespracované údaje z množiny údajov bez akéhokoľvek predbežného spracovania, transformácií alebo optimalizácií, sa nazývajú tenzory bez mierky. Avšak, „ Nezmenený prechod “ sa líši od neškálovaného tenzora a je potrebné dbať na to, aby ste si tieto dva nepomýlili. Neškálovaný gradient tenzora je vypočítaný s ohľadom na zvolenú stratovú funkciu a nemá žiadne ďalšie optimalizácie alebo škálovanie.
Ako vypočítať neškálovaný gradient tenzora v PyTorch?
Neškálovaný gradient tenzora je aktuálna hodnota rýchlosti zmeny vstupných údajov týkajúcich sa zvolenej stratovej funkcie. Nespracované údaje o gradiente sú dôležité na pochopenie správania modelu a jeho priebehu počas tréningovej slučky.
Postupujte podľa krokov uvedených nižšie, aby ste sa naučili, ako vypočítať neškálovaný gradient tenzora v PyTorch:
Krok 1: Začnite projekt nastavením IDE
Google Colaboratory IDE je jednou z najlepších možností pre vývoj projektov PyTorch, pretože poskytuje bezplatný prístup k GPU pre rýchlejšie spracovanie. Choďte do Colab webovej stránky a kliknite na „ Nový notebook ” možnosť začať pracovať:
Krok 2: Importujte knižnicu Essential Torch Library
Všetky funkcie rámca PyTorch sú obsiahnuté v „ Fakľa “knižnica. Každý projekt PyTorch začína inštaláciou a importovaním tejto knižnice:
!pip nainštalovať pochodeňdovozová baterka
Vyššie uvedený kód funguje nasledovne:
- “! pip ” je inštalačný balík pre Python, ktorý sa používa na inštaláciu knižníc v projektoch.
- ' importovať ” sa používa na zavolanie nainštalovaných knižníc do projektu.
- Tento projekt potrebuje iba funkčnosť „ fakľa “knižnica:
Krok 3: Definujte PyTorch tenzor s gradientom
Použi ' pochodeň.tensor ()“ metóda na definovanie tenzora s gradientom“ vyžaduje_grad=Pravda “ metóda:
A = torch.tensor([5.0], required_grad=True)Krok 4: Definujte jednoduchú stratovú funkciu
Stratová funkcia je definovaná pomocou jednoduchej aritmetickej rovnice, ako je znázornené:
strata_funkcia = A*5
Krok 5: Vypočítajte prechod a vytlačte na výstup
Použi ' dozadu ()” metóda na výpočet gradientu bez mierky, ako je znázornené:
strata_funkcie.backward()unscaled_grad = A.grad
print('Nezmenený prechod PyTorch Tensor: ', unscaled_grad)
Vyššie uvedený kód funguje nasledovne:
- Použi ' dozadu ()” metóda na výpočet gradientu bez mierky prostredníctvom spätného šírenia.
- Priraďte „ A.grad “ na “ unscaled_grad “premenná.
- Nakoniec použite „ vytlačiť ()” metóda na zobrazenie výstupu prechodu bez mierky:
Poznámka : K nášmu zápisníku Colab môžete pristupovať tu odkaz .
Pro-Tip
Neškálovaný gradient tenzorov môže ukázať presný vzťah vstupných údajov so stratovou funkciou pre neurónovú sieť v rámci PyTorch. Surový neupravený gradient ukazuje, ako obe hodnoty systematicky súvisia.
Úspech! Práve sme ukázali, ako vypočítať neškálovaný gradient tenzora v PyTorch.
Záver
Vypočítajte gradient tenzora bez mierky v PyTorch tak, že najprv definujete tenzor a potom pomocou metódy backward() nájdete gradient. To ukazuje, ako model hlbokého učenia spája vstupné údaje s definovanou stratovou funkciou. V tomto blogu sme poskytli podrobný návod, ako vypočítať neškálovaný gradient tenzora v PyTorch.