Alteração dos parâmetros de otimização
É hora de você colocar a mão na massa com a otimização. Agora, você tentará otimizar um modelo com uma taxa de aprendizado muito baixa, uma taxa de aprendizado muito alta e uma taxa de aprendizado "ideal". Você deverá analisar os resultados depois de executar esse exercício, lembrando que um valor baixo para a função de perda é bom.
Para esses exercícios, pré-carregamos os preditores e os valores-alvo de seus modelos de classificação anteriores (previsão de quem sobreviveria no Titanic). Você desejará que a otimização comece do zero toda vez que alterar a taxa de aprendizagem, para oferecer uma comparação justa de como cada taxa de aprendizagem se comportou em seus resultados. Portanto, criamos uma função get_new_model()
que cria um modelo não otimizado para você otimizar.
Este exercício faz parte do curso
Introdução à aprendizagem profunda em Python
Instruções de exercício
Importar
SGD
detensorflow.keras.optimizers
.Crie uma lista de taxas de aprendizado para tentar otimizar com o nome
lr_to_test
. As taxas de aprendizado nele devem ser.000001
,0.01
e1
.Usando um loop
for
para iterar sobrelr_to_test
:Use a função
get_new_model()
para criar um modelo novo e não otimizado.Crie um otimizador chamado
my_optimizer
usando o construtorSGD()
com o argumento de palavra-chavelr=lr
.Compile seu modelo. Defina o parâmetro
optimizer
como o objeto SGD que você criou acima e, como esse é um problema de classificação, use'categorical_crossentropy'
para o parâmetroloss
.Ajuste seu modelo usando os sites
predictors
etarget
.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# Import the SGD optimizer
____
# Create list of learning rates: lr_to_test
lr_to_test = ____
# Loop over learning rates
for lr in lr_to_test:
print('\n\nTesting model with learning rate: %f\n'%lr )
# Build new model to test, unaffected by previous models
model = ____
# Create SGD optimizer with specified learning rate: my_optimizer
my_optimizer = ____
# Compile the model
____
# Fit the model
____