Aan de slagGa gratis aan de slag

Kernelresponsen visualiseren

Een manier om de gewichten van een neuraal netwerk te interpreteren, is kijken hoe de kernels in die gewichten de wereld “zien”. Met andere woorden: welke eigenschappen van een afbeelding worden door deze kernel benadrukt. In deze oefening doen we dat door een afbeelding te convolueren met de kernel en het resultaat te visualiseren. Met de afbeeldingen in de variabele test_data, een functie extract_kernel() die een kernel uit het gegeven netwerk haalt, en de functie convolution() die we in het eerste hoofdstuk hebben gedefinieerd, extraheer je de kernel, laad je de data uit een bestand en visualiseer je die met matplotlib.

Een diepe CNN model, een functie convolution(), en de kernel die je in een eerdere oefening hebt geëxtraheerd zijn beschikbaar in je werkruimte.

Klaar om je deep learning naar een hoger niveau te tillen? Bekijk Advanced Deep Learning with Keras om te zien hoe de functionele API van Keras je helpt domeinkennis op te bouwen om nieuwe soorten problemen op te lossen.

Deze oefening maakt deel uit van de cursus

Beeldmodellering met Keras

Cursus bekijken

Oefeninstructies

  • Gebruik de functie convolution() om de geëxtraheerde kernel te convolueren met het eerste kanaal van het vierde item in de afbeeldingsarray.
  • Visualiseer de resulterende convolutie met imshow().

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

import matplotlib.pyplot as plt

# Convolve with the fourth image in test_data
out = ____(____[____, :, :, 0], kernel)

# Visualize the result
____
plt.show()
Code bewerken en uitvoeren