Criando seu próprio modelo de reconhecimento de dígitos

Você chegou ao exercício final do curso - agora você sabe tudo o que precisa para criar um modelo preciso para reconhecer dígitos escritos à mão!

Já fizemos a manipulação básica do conjunto de dados MNIST mostrado no vídeo, então você tem X e y carregados e prontos para modelar. Sequential e Dense de tensorflow.keras também são pré-importados.

Para adicionar um desafio extra, carregamos apenas 2.500 imagens, em vez das 6.000 que você verá em alguns resultados publicados. Os modelos de aprendizagem profunda têm melhor desempenho com mais dados, mas também levam mais tempo para serem treinados, especialmente quando começam a se tornar mais complexos.

Se você tiver um computador compatível com CUDA GPU , poderá aproveitá-lo para melhorar o tempo de computação. Se você não tiver um GPU, não há problema! Você pode configurar um ambiente de aprendizagem profunda na nuvem que pode executar seus modelos em um GPU. Aqui está uma postagem do blog de Dan que explica como fazer isso - dê uma olhada nela depois de concluir este exercício! É uma ótima próxima etapa para você continuar sua jornada de aprendizado profundo.

Você está pronto para levar sua aprendizagem profunda para o próximo nível? Confira Advanced Deep Learning with Keras para ver como o Keras functional API permite que você crie conhecimento de domínio para resolver novos tipos de problemas. Depois que você souber como usar o API funcional, dê uma olhada em Image Processing with Keras in Python para aprender aplicações específicas de imagem do Keras.

Este exercício faz parte do curso

Introdução à aprendizagem profunda em Python

Ver Curso

Instruções de exercício

  • Crie um objeto Sequential para iniciar seu modelo. Você pode chamar isso de model.
  • Adicione a primeira camada oculta Dense de unidades 50 ao seu modelo com a ativação 'relu'. Para esses dados, o site input_shape é (784,).
  • Adicione uma segunda camada oculta Dense com unidades 50 e uma função de ativação 'relu'.
  • Adicione a camada de saída. Sua função de ativação deve ser 'softmax', e o número de nós nessa camada deve ser o mesmo que o número de saídas possíveis nesse caso: 10.
  • Compile o site model como você fez com os modelos anteriores: Usando 'adam' como optimizer, 'categorical_crossentropy' para a perda e metrics=['accuracy'].
  • Ajuste o modelo usando X e y usando um validation_split de épocas 0.3 e 10.

Exercício interativo prático

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

# Create the model: model
model = ____

# Add the first hidden layer
____

# Add the second hidden layer
____

# Add the output layer
____

# Compile the model
____

# Fit the model
____