Aan de slagGa gratis aan de slag

Preparing a model for tuning

Let's tune the hyperparameters of a binary classification model that does well classifying the breast cancer dataset.

You've seen that the first step to turn a model into a sklearn estimator is to build a function that creates it. The definition of this function is important since hyperparameter tuning is carried out by varying the arguments your function receives.

Build a simple create_model() function that receives both a learning rate and an activation function as arguments. The Adam optimizer has been imported as an object from tensorflow.keras.optimizers so that you can also change its learning rate parameter.

Deze oefening maakt deel uit van de cursus

Introduction to Deep Learning with Keras

Cursus bekijken

Oefeninstructies

  • Set the learning rate of the Adam optimizer object to the one passed in the arguments.
  • Set the hidden layers activations to the one passed in the arguments.
  • Pass the optimizer and the binary cross-entropy loss to the .compile() method.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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
Code bewerken en uitvoeren