ComeçarComece gratuitamente

Detecção de sobreajuste

Neste exercício, trabalharemos com um pequeno subconjunto de exemplos do conjunto de dados original de letras da língua de sinais. Uma amostra pequena, juntamente com um modelo altamente parametrizado, geralmente leva a um ajuste excessivo. Isso significa que seu modelo simplesmente memorizará a classe de cada exemplo, em vez de identificar recursos que generalizam para muitos exemplos.

Você detectará o ajuste excessivo verificando se a perda da amostra de validação é substancialmente maior do que a perda da amostra de treinamento e se ela aumenta com o treinamento adicional. Com uma amostra pequena e uma alta taxa de aprendizado, o modelo terá dificuldade para convergir para um ótimo. Você definirá uma taxa de aprendizado baixa para o otimizador, o que facilitará a identificação do excesso de ajuste.

Observe que keras foi importado de tensorflow.

Este exercício faz parte do curso

Introdução ao TensorFlow em Python

Ver Curso

Instruções de exercício

  • Defina um modelo sequencial em keras chamado model.
  • Adicione uma primeira camada densa com 1024 nós, uma ativação relu e uma forma de entrada de (784,).
  • Defina a taxa de aprendizado como 0,001.
  • Defina a operação fit() para iterar sobre a amostra completa 50 vezes e use 50% da amostra para fins de validação.

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

# Define sequential model
____

# Define the first layer
____

# Add activation function to classifier
model.add(keras.layers.Dense(4, activation='softmax'))

# Finish the model compilation
model.compile(optimizer=keras.optimizers.Adam(lr=____), 
              loss='categorical_crossentropy', metrics=['accuracy'])

# Complete the model fit operation
model.fit(sign_language_features, sign_language_labels, epochs=____, validation_split=____)
Editar e executar código