Kā PyTorch aprēķināt tenzora nemērogoto gradientu?

Ka Pytorch Aprekinat Tenzora Nemerogoto Gradientu



Atsevišķi datu ieraksti tiek glabāti formā “ Tenzori 'PyTorch un ' gradienti ” tenzori tiek aprēķināti, izmantojot atpakaļejošu izplatīšanos dziļās mācīšanās modeļa apmācības cilpas ietvaros. Termiņš ' nemērogots ” nozīmē, ka dati ir neapstrādāti un nav iesaistīta iepriekšēja apstrāde vai optimizācija. Tensora nemērogotais gradients nodrošina izmaiņu patieso vērtību attiecībā uz norādīto zudumu funkciju.

Šajā emuārā mēs apspriedīsim, kā PyTorch aprēķināt Tensor nemērogotu gradientu.







Kas ir PyTorch tenzora nemērogots gradients?

Tensori ir daudzdimensiju masīvi, kas satur datus un var darboties PyTorch GPU. Tensorus, kas satur neapstrādātus datus no datu kopas bez iepriekšējas apstrādes, transformācijām vai optimizācijas, sauc par nemērogotiem tensoriem. Tomēr ' Nemērogots gradients ” atšķiras no tenzora bez mērogošanas, un ir jāuzmanās, lai nesajauktu abus. Nemērogots tenzora gradients tiek aprēķināts attiecībā pret izvēlēto zuduma funkciju, un tam nav papildu optimizācijas vai mērogošanas.



Kā PyTorch aprēķināt tenzora nemērogoto gradientu?

Tensora nemērogotais gradients ir ieejas datu izmaiņu ātruma faktiskā vērtība attiecībā uz atlasīto zudumu funkciju. Neapstrādāti gradienta dati ir svarīgi, lai izprastu modeļa uzvedību un tā progresēšanu apmācības cikla laikā.



Veiciet tālāk norādītās darbības, lai uzzinātu, kā PyTorch aprēķināt tenzora nemērogoto gradientu:





1. darbība. Sāciet projektu, iestatot IDE

Google Colaboratory IDE ir viena no labākajām izvēlēm PyTorch projektu izstrādei, jo tā nodrošina bezmaksas piekļuvi GPU ātrākai apstrādei. Dodieties uz Colab tīmekļa vietne un noklikšķiniet uz ' Jauna piezīmju grāmatiņa ” iespēja sākt darbu:



2. darbība. Importējiet Essential Torch Library

Visas PyTorch ietvara funkcionalitātes ir ietvertas ' Lāpa ” bibliotēka. Katrs PyTorch projekts sākas ar šīs bibliotēkas instalēšanu un importēšanu:

!pip uzstādīt lāpu

importa lāpa

Iepriekš minētais kods darbojas šādi:

  • “! pip ” ir Python instalācijas pakotne, ko izmanto, lai projektos instalētu bibliotēkas.
  • ' imports ” komanda tiek izmantota, lai projektā izsauktu instalētās bibliotēkas.
  • Šim projektam ir nepieciešama tikai “ lāpa ” bibliotēka:

3. darbība: definējiet PyTorch tensoru ar gradientu

Izmantojiet ' lāpa.tensors ()' metode, lai definētu tensoru ar gradientu ' prasa_grad=Tiesa ” metode:

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

4. darbība: definējiet vienkāršu zaudēšanas funkciju

Zaudējumu funkcija tiek definēta, izmantojot vienkāršu aritmētisko vienādojumu, kā parādīts:

zuduma_funkcija = A*5

5. darbība: aprēķiniet gradientu un izdrukājiet izvadē

Izmantojiet ' atpakaļ ()” metode nemērogotā gradienta aprēķināšanai, kā parādīts attēlā:

loss_function.backward()

unscaled_grad = A.grad

print('PyTorch Tensor bezmērogotais gradients: ', unscaled_grad)

Iepriekš minētais kods darbojas šādi:

  • Izmantojiet ' atpakaļ ()” metode, lai aprēķinātu nemērogotu gradientu, izmantojot atpakaļejošu datu pārraidi.
  • Piešķirt “ A.grad 'uz' unscaled_grad ” mainīgais.
  • Visbeidzot izmantojiet ' drukāt ()” metode, lai parādītu nemērogotā gradienta izvadi:

Piezīme : mūsu Colab piezīmju grāmatiņai varat piekļūt šeit saite .

Pro-Tip

Nemērogotais tensoru gradients var parādīt precīzu ievades datu saistību ar neironu tīkla zuduma funkciju PyTorch sistēmā. Neapstrādāts nerediģēts gradients parāda, kā abas vērtības ir sistemātiski saistītas.

Veiksmi! Mēs tikko parādījām, kā PyTorch aprēķināt tenzora nemērogotu gradientu.

Secinājums

Aprēķiniet tenzora nemērogotu gradientu programmā PyTorch, vispirms definējot tensoru un pēc tam izmantojot metodi backward(), lai atrastu gradientu. Tas parāda, kā dziļās mācīšanās modelis saista ievades datus ar definēto zudumu funkciju. Šajā emuārā mēs esam snieguši pakāpenisku pamācību par to, kā PyTorch aprēķināt tenzora nemērogoto gradientu.