Préparer l’entraînement par lots
Avant de pouvoir entraîner un modèle linéaire par lots, nous devons d’abord définir des variables, une fonction de perte et une opération d’optimisation. Dans cet exercice, nous allons préparer l’entraînement d’un modèle qui prédira price_batch, un lot de prix de maisons, à partir de size_batch, un lot de superficies de parcelles en pieds carrés. Contrairement à la leçon précédente, nous allons charger les données par lots avec pandas, les convertir en tableaux numpy, puis les utiliser pour minimiser la fonction de perte étape par étape.
Variable(), keras() et float32 ont été importés pour vous. Notez que vous ne devez pas définir de valeurs d’arguments par défaut ni pour le modèle ni pour la fonction de perte, car nous générerons les données par lots pendant l’entraînement.
Cet exercice fait partie du cours
Introduction à TensorFlow en Python
Instructions
- Définissez
interceptavec une valeur initiale de 10.0 et un type de données flottant 32 bits. - Définissez le modèle pour renvoyer les valeurs prédites en utilisant
intercept,slopeetfeatures. - Définissez une fonction appelée
loss_function()qui prendintercept,slope,targetsetfeaturescomme arguments, dans cet ordre. Ne définissez pas de valeurs d’arguments par défaut. - Définissez la fonction de perte d’erreur quadratique moyenne en utilisant
targetsetpredictions.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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.____(____, ____)