Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Mehrstufige Rückpropagation | Fortgeschrittenere Konzepte
PyTorch-Grundlagen

bookMehrstufige Rückpropagation

Wie Tensorflow ermöglicht auch PyTorch das Erstellen komplexerer Rechen-Graphen mit mehreren Zwischentensoren.

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

Der Gradient von output_mean bezüglich x wird mithilfe der Kettenregel berechnet. Das Ergebnis zeigt, wie stark eine kleine Änderung in jedem Element von x den Wert von output_mean beeinflusst.

Deaktivierung der Gradientenverfolgung

In bestimmten Fällen kann es sinnvoll sein, die Gradientenverfolgung zu deaktivieren, um Speicher und Rechenleistung zu sparen. Da requires_grad=False das Standardverhalten ist, kann der Tensor ohne Angabe dieses Parameters erstellt werden:

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

Swipe to start coding

Sie sollen ein einfaches neuronales Netzwerk in PyTorch erstellen. Ziel ist es, den Gradienten des Verlusts bezüglich der Gewichtsmatrix zu berechnen.

  1. Definieren Sie eine zufällige Gewichtsmatrix (Tensor) W der Form 1x3, initialisiert mit Werten aus einer gleichverteilten Zufallsverteilung über [0, 1], mit aktiviertem Gradienten-Tracking.
  2. Erstellen Sie eine Eingabematrix (Tensor) X basierend auf dieser Liste: [[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]].
  3. Führen Sie eine Matrixmultiplikation zwischen W und X durch, um Y zu berechnen.
  4. Berechnen Sie den mittleren quadratischen Fehler (MSE): loss = mean((Y - Ytarget)2).
  5. Berechnen Sie den Gradienten des Verlusts (loss) bezüglich W mittels Backpropagation.
  6. Geben Sie den berechneten Gradienten von W aus.

Lösung

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 2
single

single

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

close

Awesome!

Completion rate improved to 5

bookMehrstufige Rückpropagation

Swipe um das Menü anzuzeigen

Wie Tensorflow ermöglicht auch PyTorch das Erstellen komplexerer Rechen-Graphen mit mehreren Zwischentensoren.

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

Der Gradient von output_mean bezüglich x wird mithilfe der Kettenregel berechnet. Das Ergebnis zeigt, wie stark eine kleine Änderung in jedem Element von x den Wert von output_mean beeinflusst.

Deaktivierung der Gradientenverfolgung

In bestimmten Fällen kann es sinnvoll sein, die Gradientenverfolgung zu deaktivieren, um Speicher und Rechenleistung zu sparen. Da requires_grad=False das Standardverhalten ist, kann der Tensor ohne Angabe dieses Parameters erstellt werden:

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

Swipe to start coding

Sie sollen ein einfaches neuronales Netzwerk in PyTorch erstellen. Ziel ist es, den Gradienten des Verlusts bezüglich der Gewichtsmatrix zu berechnen.

  1. Definieren Sie eine zufällige Gewichtsmatrix (Tensor) W der Form 1x3, initialisiert mit Werten aus einer gleichverteilten Zufallsverteilung über [0, 1], mit aktiviertem Gradienten-Tracking.
  2. Erstellen Sie eine Eingabematrix (Tensor) X basierend auf dieser Liste: [[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]].
  3. Führen Sie eine Matrixmultiplikation zwischen W und X durch, um Y zu berechnen.
  4. Berechnen Sie den mittleren quadratischen Fehler (MSE): loss = mean((Y - Ytarget)2).
  5. Berechnen Sie den Gradienten des Verlusts (loss) bezüglich W mittels Backpropagation.
  6. Geben Sie den berechneten Gradienten von W aus.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

close

Awesome!

Completion rate improved to 5
Abschnitt 2. Kapitel 2
single

single

some-alt