CommencerCommencer gratuitement

Modifier les paramètres d’optimisation

Il est temps de passer à la pratique avec l’optimisation. Vous allez entraîner un modèle avec un taux d’apprentissage très faible, un très élevé, puis un « juste milieu ». Après l’exécution, examinez les résultats en gardant à l’esprit qu’une valeur faible de la fonction de perte est souhaitable.

Pour ces exercices, nous avons préchargé les prédicteurs et les valeurs cibles de vos modèles de classification précédents (prédire qui survivrait au Titanic). Vous devez repartir de zéro à chaque changement de taux d’apprentissage pour comparer équitablement leurs performances. Nous avons donc créé une fonction get_new_model() qui génère un modèle non optimisé à entraîner.

Cet exercice fait partie du cours

Introduction au Deep Learning en Python

Afficher le cours

Instructions

  • Importez SGD depuis tensorflow.keras.optimizers.
  • Créez une liste de taux d’apprentissage à tester appelée lr_to_test. Elle doit contenir .000001, 0.01 et 1.
  • À l’aide d’une boucle for parcourant lr_to_test :
    • Utilisez la fonction get_new_model() pour construire un nouveau modèle non optimisé.
    • Créez un optimiseur appelé my_optimizer avec le constructeur SGD() et l’argument nommé lr=lr.
    • Compilez votre modèle. Définissez le paramètre optimizer sur l’objet SGD créé ci‑dessus et, comme il s’agit d’un problème de classification, utilisez 'categorical_crossentropy' pour le paramètre loss.
    • Ajustez votre modèle avec predictors et target.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Import the SGD optimizer
____

# Create list of learning rates: lr_to_test
lr_to_test = ____

# Loop over learning rates
for lr in lr_to_test:
    print('\n\nTesting model with learning rate: %f\n'%lr )
    
    # Build new model to test, unaffected by previous models
    model = ____
    
    # Create SGD optimizer with specified learning rate: my_optimizer
    my_optimizer = ____
    
    # Compile the model
    ____
    
    # Fit the model
    ____
Modifier et exécuter le code