Hoe bereken je de ongeschaalde gradiënt van een tensor in PyTorch?

Hoe Bereken Je De Ongeschaalde Gradient Van Een Tensor In Pytorch



De afzonderlijke gegevensinvoer wordt opgeslagen in de vorm van “ Tensoren ” in de PyTorch en “ gradiënten ” van tensoren worden berekend met behulp van achterwaartse voortplanting binnen de trainingslus van een deep learning-model. De voorwaarde ' ongeschaald ”betekent dat de gegevens onbewerkt zijn en dat er geen voorbewerking of optimalisatie aan te pas komt. De ongeschaalde gradiënt van een tensor geeft de werkelijke waarde van de verandering rond de gespecificeerde verliesfunctie weer.

In deze blog bespreken we hoe je de ongeschaalde gradiënt van een Tensor in PyTorch kunt berekenen.







Wat is een ongeschaald verloop van een tensor in PyTorch?

Tensors zijn multidimensionale arrays die gegevens bevatten en kunnen draaien op GPU's in PyTorch. De tensoren die onbewerkte gegevens uit de dataset bevatten zonder enige voorverwerking, transformaties of optimalisaties, worden ongeschaalde tensoren genoemd. Echter, een “ Niet-geschaald verloop 'is anders dan een ongeschaalde tensor en er moet voor worden gezorgd dat deze twee niet worden verward. Een ongeschaalde gradiënt van een tensor wordt berekend met betrekking tot de geselecteerde verliesfunctie en kent geen verdere optimalisaties of schaling.



Hoe bereken je de ongeschaalde gradiënt van een tensor in PyTorch?

De ongeschaalde gradiënt van een tensor is de werkelijke waarde van de veranderingssnelheid van de invoergegevens met betrekking tot de geselecteerde verliesfunctie. De onbewerkte gradiëntgegevens zijn belangrijk om het gedrag van het model en de voortgang ervan tijdens de trainingslus te begrijpen.



Volg de onderstaande stappen om te leren hoe u de ongeschaalde gradiënt van een tensor in PyTorch kunt berekenen:





Stap 1: Begin het project door de IDE in te stellen

De Google Colaboratory IDE is een van de beste keuzes voor de ontwikkeling van PyTorch-projecten omdat deze gratis toegang biedt tot GPU's voor snellere verwerking. Ga naar de Colab website en klik op de “ Nieuw notitieboekje optie om te gaan werken:



Stap 2: Importeer de Essential Torch-bibliotheek

Alle functionaliteit van het PyTorch-framework is opgenomen in de “ Fakkel ' bibliotheek. Elk PyTorch-project begint met het installeren en importeren van deze bibliotheek:

!pip installeer de fakkel

fakkel importeren

De bovenstaande code werkt als volgt:

  • “! Pip ” is een installatiepakket voor Python dat wordt gebruikt om bibliotheken in projecten te installeren.
  • De ' importeren De opdracht wordt gebruikt om de geïnstalleerde bibliotheken in het project op te roepen.
  • Dit project heeft alleen de functionaliteit nodig van de “ fakkel ' bibliotheek:

Stap 3: Definieer een PyTorch-tensor met verloop

Gebruik de ' toorts.tensor ()” methode om een ​​tensor met een verloop te definiëren “ vereist_grad=Waar methode:

A = fakkel.tensor([5.0], vereist_grad=True)

Stap 4: Definieer een eenvoudige verliesfunctie

Een verliesfunctie wordt gedefinieerd met behulp van een eenvoudige rekenkundige vergelijking, zoals weergegeven:

verlies_functie = A*5

Stap 5: Bereken het verloop en druk af naar uitvoer

Gebruik de ' achteruit ()”methode om de ongeschaalde gradiënt te berekenen, zoals weergegeven:

verlies_functie.backward()

ongeschaalde_grad = A.grad

print('Ongeschaald verloop van PyTorch Tensor: ', unscaled_grad)

De bovenstaande code werkt als volgt:

  • Gebruik de ' achteruit ()”-methode om de ongeschaalde gradiënt te berekenen via achterwaartse voortplanting.
  • Wijs de “ A.grad ' naar de ' ongeschaalde_grad Variabel.
  • Gebruik ten slotte de “ afdrukken ()”-methode om de uitvoer van het ongeschaalde verloop te laten zien:

Opmerking : U kunt hier toegang krijgen tot ons Colab Notebook koppeling .

Pro-tip

De ongeschaalde gradiënt van tensoren kan de exacte relatie tonen van de invoergegevens met de verliesfunctie voor een neuraal netwerk binnen het PyTorch-framework. De onbewerkte, onbewerkte gradiënt laat zien hoe beide waarden systematisch met elkaar in verband staan.

Succes! We hebben zojuist laten zien hoe je de ongeschaalde gradiënt van een tensor in PyTorch kunt berekenen.

Conclusie

Bereken de ongeschaalde gradiënt van een tensor in PyTorch door eerst de tensor te definiëren en vervolgens de backward()-methode te gebruiken om de gradiënt te vinden. Dit laat zien hoe het deep learning-model de invoergegevens relateert aan de gedefinieerde verliesfunctie. In deze blog hebben we een stapsgewijze tutorial gegeven over hoe je de ongeschaalde gradiënt van een tensor in PyTorch kunt berekenen.