Com calcular el gradient sense escala d'un tensor a PyTorch?

Com Calcular El Gradient Sense Escala D Un Tensor A Pytorch



Les entrades de dades individuals s'emmagatzemen en forma de ' Tensors ” al PyTorch i “ gradients ” de tensors es calculen mitjançant la propagació cap enrere dins del bucle d'entrenament d'un model d'aprenentatge profund. El terme ' sense escala ” significa que les dades són en brut i no hi ha cap preprocessament ni optimització. El gradient sense escala d'un tensor proporciona el valor real del canvi sobre la funció de pèrdua especificada.

En aquest bloc, parlarem de com calcular el gradient sense escala d'un Tensor a PyTorch.







Què és un gradient sense escala d'un tensor a PyTorch?

Els tensors són matrius multidimensionals que contenen dades i que es poden executar a les GPU a PyTorch. Els tensors que contenen dades en brut del conjunt de dades sense cap preprocessament, transformacions o optimitzacions s'anomenen tensors sense escala. No obstant això, un ' Gradient sense escala ” és diferent d'un tensor sense escala i s'ha de tenir cura de no confondre els dos. Es calcula un gradient sense escala d'un tensor respecte a la funció de pèrdua seleccionada i no té cap més optimització o escala.



Com calcular el gradient sense escala d'un tensor a PyTorch?

El gradient sense escala d'un Tensor és el valor real de la taxa de canvi de les dades d'entrada relacionades amb la funció de pèrdua seleccionada. Les dades de gradient en brut són importants per entendre el comportament del model i la seva progressió durant el bucle d'entrenament.



Seguiu els passos que s'indiquen a continuació per aprendre a calcular el gradient sense escala d'un tensor a PyTorch:





Pas 1: inicieu el projecte configurant l'IDE

L'IDE de Google Colaboratory és una de les millors opcions per al desenvolupament de projectes PyTorch perquè proporciona accés gratuït a les GPU per a un processament més ràpid. Aneu al Colab lloc web i feu clic a ' Nou quadern ” opció per començar a treballar:



Pas 2: importeu la biblioteca Essential Torch

Tota la funcionalitat del marc PyTorch està continguda dins del ' Torxa ” biblioteca. Cada projecte de PyTorch comença instal·lant i important aquesta biblioteca:

!pip instal·lar torxa

torxa d'importació

El codi anterior funciona de la següent manera:

  • “! pip ” és un paquet d'instal·lació per a Python utilitzat per instal·lar biblioteques en projectes.
  • El ' importar ” s'utilitza per cridar les biblioteques instal·lades al projecte.
  • Aquest projecte només necessita la funcionalitat del ' torxa ” biblioteca:

Pas 3: definiu un tensor PyTorch amb degradat

Utilitzar el ' torxa.tensor ()' mètode per definir un tensor amb un gradient ' requires_grad=Veritat ” mètode:

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

Pas 4: definiu una funció de pèrdua simple

Una funció de pèrdua es defineix mitjançant una equació aritmètica senzilla com es mostra:

funció_pèrdua = A*5

Pas 5: calculeu el degradat i imprimiu a la sortida

Utilitzar el ' cap enrere ()' mètode per calcular el gradient sense escala tal com es mostra:

elss_function.backward()

unscaled_grad = A.grad

print('Gradient sense escala del tensor PyTorch: ', unscaled_grad)

El codi anterior funciona de la següent manera:

  • Utilitzar el ' cap enrere ()” mètode per calcular el gradient sense escala mitjançant propagació cap enrere.
  • Assigna el ' A.grad ' fins al ' grau_no escalat ” variable.
  • Finalment, utilitzeu el ' imprimir ()” mètode per mostrar la sortida del gradient sense escala:

Nota : Podeu accedir al nostre quadern Colab aquí enllaç .

Pro-Tip

El gradient sense escala dels tensors pot mostrar la relació exacta de les dades d'entrada amb la funció de pèrdua d'una xarxa neuronal dins del marc PyTorch. El gradient sense editar mostra com tots dos valors es relacionen sistemàticament.

Èxit! Acabem de mostrar com calcular el gradient sense escala d'un tensor a PyTorch.

Conclusió

Calculeu el gradient sense escala d'un tensor a PyTorch definint primer el tensor i després utilitzant el mètode backward() per trobar el gradient. Això mostra com el model d'aprenentatge profund relaciona les dades d'entrada amb la funció de pèrdua definida. En aquest bloc, hem donat un tutorial pas a pas sobre com calcular el gradient sense escala d'un tensor a PyTorch.