Vorbereitung auf Batch-Training
Bevor wir ein lineares Modell in Batches trainieren können, müssen wir zunächst Variablen, eine Verlustfunktion und einen Optimierungsschritt definieren. In dieser Übung bereiten wir das Training eines Modells vor, das price_batch (einen Batch an Hauspreisen) mithilfe von size_batch (einem Batch an Grundstücksgrößen in Quadratfuß) vorhersagt. Im Gegensatz zur vorherigen Lektion laden wir dazu Batches von Daten mit pandas, konvertieren sie in numpy-Arrays und verwenden sie dann, um die Verlustfunktion schrittweise zu minimieren.
Variable(), keras(), und float32 wurden für dich importiert. Beachte, dass du keine Standardargumentwerte für das Modell oder die Verlustfunktion setzen solltest, da wir die Daten während des Trainingsprozesses in Batches erzeugen.
Diese Übung ist Teil des Kurses
Einführung in TensorFlow mit Python
Anleitung zur Übung
- Definiere
interceptmit einem Anfangswert von 10.0 und einem Datentyp von 32-Bit Float. - Definiere das Modell so, dass es die Vorhersagen mithilfe von
intercept,slopeundfeatureszurückgibt. - Definiere eine Funktion namens
loss_function(), dieintercept,slope,targetsundfeaturesin genau dieser Reihenfolge als Argumente entgegennimmt. Setze keine Standardargumentwerte. - Definiere die Verlustfunktion als mittleren quadratischen Fehler unter Verwendung von
targetsundpredictions.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Define the intercept and slope
intercept = ___
slope = Variable(0.5, float32)
# Define the model
def linear_regression(intercept, slope, features):
# Define the predicted values
return ____
# Define the loss function
def ____:
# Define the predicted values
predictions = linear_regression(____, ____, features)
# Define the MSE loss
return keras.losses.____(____, ____)