CommencerCommencer gratuitement

Préparer un modèle pour l’optimisation

Optimisons les hyperparamètres d’un modèle de classification binaire performant sur le jeu de données du cancer du sein.

Vous avez vu que la première étape pour transformer un modèle en estimateur sklearn consiste à écrire une fonction qui le crée. La définition de cette fonction est essentielle, car l’optimisation des hyperparamètres s’effectue en faisant varier les arguments que votre fonction reçoit.

Créez une fonction simple create_model() qui reçoit en arguments un taux d’apprentissage et une fonction d’activation. L’optimiseur Adam a été importé en tant qu’objet depuis tensorflow.keras.optimizers, ce qui vous permet également de modifier son paramètre de taux d’apprentissage.

Cet exercice fait partie du cours

Introduction au Deep Learning avec Keras

Afficher le cours

Instructions

  • Définissez le taux d’apprentissage de l’objet optimiseur Adam sur la valeur passée en argument.
  • Définissez les fonctions d’activation des couches cachées sur celle passée en argument.
  • Passez l’optimiseur et la perte binary cross-entropy à la méthode .compile().

Exercice interactif pratique

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

# Creates a model given an activation and learning rate
def create_model(learning_rate, activation):
  
  	# Create an Adam optimizer with the given learning rate
  	opt = Adam(lr = ____)
  	
  	# Create your binary classification model  
  	model = Sequential()
  	model.add(Dense(128, input_shape = (30,), activation = ____))
  	model.add(Dense(256, activation = ____))
  	model.add(Dense(1, activation = 'sigmoid'))
  	
  	# Compile your model with your optimizer, loss, and metrics
  	model.compile(optimizer = ____, loss = ____, metrics = ['accuracy'])
  	return model
Modifier et exécuter le code