Preparação de um modelo para ajuste
Vamos ajustar os hiperparâmetros de um modelo de classificação binária que classifica bem o conjunto de dados de câncer de mama.
Você viu que a primeira etapa para transformar um modelo em um estimador do Sklearn é construir uma função que o crie. A definição dessa função é importante, pois o ajuste do hiperparâmetro é realizado variando os argumentos que a função recebe.
Crie uma função create_model()
simples que receba uma taxa de aprendizado e uma 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 aprendizagem.
Este exercício faz parte do curso
Introdução à aprendizagem profunda com o Keras
Instruções de exercício
- Defina a taxa de aprendizado do objeto otimizador
Adam
como a taxa passada nos argumentos. - Defina as ativações das camadas ocultas de acordo com a ativação passada nos argumentos.
- Passe o otimizador e a perda de entropia cruzada binária para o método
.compile()
.
Exercício interativo prático
Experimente este exercício preenchendo 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