Kako izračunati neprilagojen gradient tenzorja v PyTorchu?

Kako Izracunati Neprilagojen Gradient Tenzorja V Pytorchu



Posamezni vnosi podatkov so shranjeni v obliki “ Tenzorji « v PyTorchu in » prelivi ” tenzorjev se izračunajo z uporabo povratnega širjenja znotraj vadbene zanke modela globokega učenja. Izraz ' nerazporejeno ” pomeni, da so podatki neobdelani in ni vključene predprocesiranja ali optimizacije. Neprilagojeni gradient tenzorja zagotavlja pravo vrednost spremembe podane funkcije izgube.

V tem blogu bomo razpravljali o tem, kako izračunati neprilagojen gradient Tensorja v PyTorchu.







Kaj je neprilagojeni gradient tenzorja v PyTorchu?

Tenzorji so večdimenzionalni nizi, ki vsebujejo podatke in se lahko izvajajo na grafičnih procesorjih v PyTorchu. Tenzorji, ki vsebujejo neobdelane podatke iz nabora podatkov brez predhodne obdelave, transformacij ali optimizacij, se imenujejo tenzorji brez merila. Vendar pa je ' Gradient brez velikosti ” se razlikuje od tenzorja brez lestvice in paziti je treba, da ju ne zamenjate. Neskalirani gradient tenzorja se izračuna glede na izbrano funkcijo izgube in nima dodatnih optimizacij ali skaliranja.



Kako izračunati neprilagojen gradient tenzorja v PyTorchu?

Neskalirani gradient tenzorja je dejanska vrednost stopnje spremembe vhodnih podatkov v zvezi z izbrano funkcijo izgube. Surovi podatki o gradientu so pomembni za razumevanje obnašanja modela in njegovega napredovanja med vadbeno zanko.



Sledite spodnjim korakom, da se naučite izračunati neprilagojeni gradient tenzorja v PyTorchu:





1. korak: Začnite projekt z nastavitvijo IDE

Google Colaboratory IDE je ena izmed najboljših izbir za razvoj projektov PyTorch, ker omogoča brezplačen dostop do GPE za hitrejšo obdelavo. Pojdite v Colab Spletna stran in kliknite na ' Nov zvezek ” možnost za začetek dela:



2. korak: uvozite Essential Torch Library

Vsa funkcionalnost ogrodja PyTorch je vsebovana v ' Bakla ' knjižnica. Vsak projekt PyTorch se začne z namestitvijo in uvozom te knjižnice:

!pip namestite svetilko

uvozna svetilka

Zgornja koda deluje na naslednji način:

  • “! pip ” je namestitveni paket za Python, ki se uporablja za namestitev knjižnic v projekte.
  • ' uvoz ” ukaz se uporablja za priklic nameščenih knjižnic v projekt.
  • Ta projekt potrebuje le funkcionalnost » svetilka ' knjižnica:

3. korak: Definirajte tenzor PyTorch z gradientom

Uporabi ' baklo.tenzor ()' metoda za definiranje tenzorja z gradientom ' requires_grad=Res ” metoda:

A = torch.tensor([5.0], requires_grad=True)

4. korak: Definirajte preprosto funkcijo izgube

Funkcija izgube je definirana z uporabo preproste aritmetične enačbe, kot je prikazano:

funkcija_izgube = A*5

5. korak: Izračunajte preliv in natisnite na izpis

Uporabi ' nazaj ()« za izračun neprilagojenega gradienta, kot je prikazano:

izguba_funkcije.nazaj()

unscaled_grad = A.grad

print('Nerazmerjen gradient tenzorja PyTorch: ', unscaled_grad)

Zgornja koda deluje na naslednji način:

  • Uporabi ' nazaj ()« za izračun neprilagojenega gradienta prek širjenja nazaj.
  • Dodelite ' A.grad ' do ' unscaled_grad ” spremenljivka.
  • Na koncu uporabite » tiskanje ()« za predstavitev rezultatov neprilagojenega gradienta:

Opomba : Do našega zvezka Colab lahko dostopate tukaj povezava .

Pro-Nasvet

Neskalirani gradient tenzorjev lahko prikaže natančno razmerje vhodnih podatkov s funkcijo izgube za nevronsko mrežo v okviru PyTorch. Surov neurejen gradient prikazuje, kako sta obe vrednosti sistematično povezani.

uspeh! Pravkar smo pokazali, kako izračunati neprilagojen gradient tenzorja v PyTorchu.

Zaključek

Izračunajte neskalirani gradient tenzorja v PyTorchu tako, da najprej definirate tenzor in nato uporabite metodo backward(), da poiščete gradient. To prikazuje, kako model globokega učenja povezuje vhodne podatke z definirano funkcijo izgube. V tem spletnem dnevniku smo podali postopno vadnico o tem, kako izračunati neprilagojen gradient tenzorja v PyTorchu.