Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Multi-Trins Backpropagation | Mere Avancerede Begreber
PyTorch-Grundlæggende

bookMulti-Trins Backpropagation

Ligesom Tensorflow tillader PyTorch også opbygning af mere komplekse beregningsgrafer, der involverer flere mellemliggende tensorer.

12345678910111213
import torch # Create a 2D tensor with gradient tracking x = torch.tensor([[1.0, 2.0, 3.0], [3.0, 2.0, 1.0]], requires_grad=True) # Define intermediate layers y = 6 * x + 3 z = 10 * y ** 2 # Compute the mean of the final output output_mean = z.mean() print(f"Output: {output_mean}") # Perform backpropagation output_mean.backward() # Print the gradient of x print("Gradient of x:\n", x.grad)
copy

Gradienten af output_mean med hensyn til x beregnes ved hjælp af kædereglen. Resultatet viser, hvor meget en lille ændring i hvert element af x påvirker output_mean.

Deaktivering af gradientsporing

I visse tilfælde kan det være ønskeligt at deaktivere gradientsporing for at spare hukommelse og beregning. Da requires_grad=False er standardindstillingen, kan du blot oprette tensoren uden at angive denne parameter:

x = torch.tensor([[1.0, 2.0, 3.0], [3.0, 2.0, 1.0]])
Opgave

Swipe to start coding

Du skal opbygge et simpelt neuralt netværk i PyTorch. Dit mål er at beregne gradienten af tabet med hensyn til vægtmatricen.

  1. Definér en tilfældig vægtmatrix (tensor) W med formen 1x3, initialiseret med værdier fra en uniform fordeling over [0, 1], med gradientsporing aktiveret.
  2. Opret en inputmatrix (tensor) X baseret på denne liste: [[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]].
  3. Udfør matrixmultiplikation mellem W og X for at beregne Y.
  4. Beregn middelkvadreret fejl (MSE): tab = mean((Y - Ytarget)2).
  5. Beregn gradienten af tabet (loss) med hensyn til W ved hjælp af backpropagation.
  6. Udskriv den beregnede gradient af W.

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 2
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Suggested prompts:

Can you explain how the gradients are calculated in this example?

What happens if I change the values in the tensor `x`?

How do I disable gradient tracking for specific operations?

close

Awesome!

Completion rate improved to 5

bookMulti-Trins Backpropagation

Stryg for at vise menuen

Ligesom Tensorflow tillader PyTorch også opbygning af mere komplekse beregningsgrafer, der involverer flere mellemliggende tensorer.

12345678910111213
import torch # Create a 2D tensor with gradient tracking x = torch.tensor([[1.0, 2.0, 3.0], [3.0, 2.0, 1.0]], requires_grad=True) # Define intermediate layers y = 6 * x + 3 z = 10 * y ** 2 # Compute the mean of the final output output_mean = z.mean() print(f"Output: {output_mean}") # Perform backpropagation output_mean.backward() # Print the gradient of x print("Gradient of x:\n", x.grad)
copy

Gradienten af output_mean med hensyn til x beregnes ved hjælp af kædereglen. Resultatet viser, hvor meget en lille ændring i hvert element af x påvirker output_mean.

Deaktivering af gradientsporing

I visse tilfælde kan det være ønskeligt at deaktivere gradientsporing for at spare hukommelse og beregning. Da requires_grad=False er standardindstillingen, kan du blot oprette tensoren uden at angive denne parameter:

x = torch.tensor([[1.0, 2.0, 3.0], [3.0, 2.0, 1.0]])
Opgave

Swipe to start coding

Du skal opbygge et simpelt neuralt netværk i PyTorch. Dit mål er at beregne gradienten af tabet med hensyn til vægtmatricen.

  1. Definér en tilfældig vægtmatrix (tensor) W med formen 1x3, initialiseret med værdier fra en uniform fordeling over [0, 1], med gradientsporing aktiveret.
  2. Opret en inputmatrix (tensor) X baseret på denne liste: [[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]].
  3. Udfør matrixmultiplikation mellem W og X for at beregne Y.
  4. Beregn middelkvadreret fejl (MSE): tab = mean((Y - Ytarget)2).
  5. Beregn gradienten af tabet (loss) med hensyn til W ved hjælp af backpropagation.
  6. Udskriv den beregnede gradient af W.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

close

Awesome!

Completion rate improved to 5
Sektion 2. Kapitel 2
single

single

some-alt