Preparando um modelo para ajuste
Vamos ajustar os hiperparâmetros de um modelo de classificação binária que tenha bom desempenho no conjunto de dados de câncer de mama.
Você viu que o primeiro passo para transformar um modelo em um estimador do sklearn é criar uma função que o constrói. A definição dessa função é importante, pois o ajuste de hiperparâmetros é feito variando os argumentos que sua função recebe.
Crie uma função simples create_model() que receba a taxa de aprendizado e a função de ativação como argumentos. O otimizador Adam foi importado como um objeto de tensorflow.keras.optimizers para que você também possa alterar seu parâmetro de taxa de aprendizado.
Este exercício faz parte do curso
Introdução ao Deep Learning com Keras
Instruções do exercício
- Defina a taxa de aprendizado do objeto otimizador
Adampara a que foi passada nos argumentos. - Defina as ativações das camadas ocultas para a que foi passada nos argumentos.
- Passe o otimizador e a loss de entropia cruzada binária para o método
.compile().
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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