Förbereda en modell för finjustering
Nu ska du justera hyperparametrarna för en binär klassificeringsmodell som klassificerar bröstcancerdataset väl.
Du har sett att det första steget för att omvandla en modell till en sklearn-estimator är att bygga en funktion som skapar den. Hur den funktionen är definierad spelar stor roll, eftersom hyperparameterjustering går till genom att variera argumenten som funktionen tar emot.
Bygg en enkel create_model()-funktion som tar emot både en inlärningshastighet och en aktiveringsfunktion som argument. Adam-optimeraren har importerats som ett objekt från tensorflow.keras.optimizers så att du även kan ändra dess inlärningshastighetsparameter.
Den här övningen är en del av kursen
Introduktion till djupinlärning med Keras
Övningsinstruktioner
- Ange inlärningshastigheten för
Adam-optimerarobjektet till det värde som skickas in via argumenten. - Ange aktiveringsfunktionen för de dolda lagren till det värde som skickas in via argumenten.
- Skicka optimeraren och binär korsentriopi-förlusten till
.compile()-metoden.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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