ComeçarComece gratuitamente

Observando as convoluções

Inspecionar as ativações de uma camada convolucional é uma coisa legal. Você precisa fazer isso pelo menos uma vez na vida!

Para isso, você criará um novo modelo com o objeto Keras Model, que recebe uma lista de entradas e uma lista de saídas. Os resultados que você fornecerá a esse novo modelo são os resultados da primeira camada convolucional quando receber um MNIST dígito como imagem de entrada.

O convolucional model que você criou no exercício anterior já foi treinado para você. Agora você pode classificar corretamente MNIST imagens manuscritas. Você pode verificar isso com model.summary() no console.

Vamos dar uma olhada nas máscaras convolucionais que foram aprendidas na primeira camada convolucional desse modelo!

Este exercício faz parte do curso

Introdução à aprendizagem profunda com o Keras

Ver Curso

Instruções de exercício

  • Obter uma referência para as saídas da primeira camada convolucional no modelo.
  • Crie um novo modelo usando a entrada da primeira camada do modelo e o site first_layer_output como saídas.
  • Use este first_layer_model para fazer previsões em X_test.
  • Trace as ativações do primeiro dígito de X_test para o 15º e o 18º filtro de neurônios.

Exercício interativo prático

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

# Obtain a reference to the outputs of the first layer
first_layer_output = model.layers[____].output

# Build a model using the model's input and the first layer output
first_layer_model = Model(inputs = model.layers[0].input, outputs = ____)

# Use this model to predict on X_test
activations = ____.____(____)

# Plot the activations of first digit of X_test for the 15th filter
axs[0].matshow(activations[____,:,:,14], cmap = 'viridis')

# Do the same but for the 18th filter now
axs[1].matshow(activations[0,:,:,____], cmap = 'viridis')
plt.show()
Editar e executar código