LoslegenKostenlos loslegen

Ein lineares Modell trainieren

In dieser Übung machen wir dort weiter, wo die vorige aufgehört hat. Der Achsenabschnitt und die Steigung, intercept und slope, sind definiert und initialisiert. Außerdem ist eine Funktion loss_function(intercept, slope) definiert, die den Loss auf Basis der Daten und Modellvariablen berechnet.

Du definierst jetzt eine Optimierungsoperation als opt. Anschließend trainierst du ein univariates lineares Modell, indem du den Loss minimierst, um die optimalen Werte für intercept und slope zu finden. Beachte: Die Operation opt nähert sich mit jedem Schritt dem Optimum an, benötigt dafür aber viele Schritte. Du musst die Operation daher wiederholt ausführen.

Diese Übung ist Teil des Kurses

Einführung in TensorFlow mit Python

Kurs anzeigen

Anleitung zur Übung

  • Initialisiere einen Adam-Optimizer als opt mit einer Lernrate von 0,5.
  • Wende die Methode .minimize() auf den Optimizer an.
  • Übergebe loss_function() mit den passenden Argumenten als Lambda-Funktion an .minimize().
  • Gib die Liste der zu aktualisierenden Variablen über var_list an.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Initialize an Adam optimizer
opt = keras.optimizers.____(0.5)

for j in range(100):
	# Apply minimize, pass the loss function, and supply the variables
	opt.____(lambda: ____(____, ____), var_list=[____, ____])

	# Print every 10th value of the loss
	if j % 10 == 0:
		print(loss_function(intercept, slope).numpy())

# Plot data and regression line
plot_results(intercept, slope)
Code bearbeiten und ausführen