Förberedelse för batchträning
Innan vi kan träna en linjär modell i batchar måste vi först definiera variabler, en förlustfunktion och en optimeringsoperation. I den här övningen förbereder vi träningen av en modell som ska prediktera price_batch, en batch med huspriser, med hjälp av size_batch, en batch med tomtstorlekar i kvadratfot. Till skillnad från föregående lektion gör vi detta genom att läsa in batchar av data med pandas, konvertera dem till numpy-arrayer och sedan använda dem för att minimera förlustfunktionen stegvis.
Variable(), keras() och float32 har redan importerats. Observera att du inte ska ange standardvärden för argumenten i varken modellen eller förlustfunktionen, eftersom vi genererar data i batchar under träningsprocessen.
Den här övningen är en del av kursen
Introduktion till TensorFlow i Python
Övningsinstruktioner
- Definiera
interceptmed startvärdet 10.0 och datatypen 32-bitars float. - Definiera modellen så att den returnerar de predikterade värdena med hjälp av
intercept,slopeochfeatures. - Definiera en funktion kallad
loss_function()som tarintercept,slope,targetsochfeaturessom argument, i den ordningen. Ange inga standardvärden för argumenten. - Definiera medelkvadratfelets förlustfunktion med hjälp av
targetsochpredictions.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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.____(____, ____)