ÎncepețiÎncepe gratuit

Explorând convoluțiile

Inspectarea activărilor unui strat convoluțional este un lucru fascinant. Merită să o faci cel puțin o dată!

Pentru aceasta, vei construi un model nou folosind obiectul Model din Keras, care primește o listă de intrări și o listă de ieșiri. Ieșirile pe care le vei furniza acestui model nou reprezintă ieșirile primului strat convoluțional atunci când i se oferă ca intrare o cifră MNIST.

Modelul convoluțional model pe care l-ai construit în exercițiul anterior a fost deja antrenat pentru tine. Acum poate clasifica corect imagini MNIST scrise de mână. Poți verifica acest lucru cu model.summary() în consolă.

Hai să vedem măștile convoluționale învățate în primul strat convoluțional al acestui model!

Acest exercițiu face parte din cursul

Introducere în Deep Learning cu Keras

Vezi cursul

Instrucțiuni pentru exercițiu

  • Obține o referință la ieșirile primului strat convoluțional din model.
  • Construiește un model nou folosind intrarea primului strat al modelului și first_layer_output ca ieșiri.
  • Folosește acest first_layer_model pentru a face predicții pe X_test.
  • Reprezintă grafic activările primei cifre din X_test pentru filtrul neuronal 15 și filtrul neuronal 18.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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()
Editează și rulează codul