НачатьНачать бесплатно

Визуализация откликов ядра свёртки

Один из способов интерпретировать веса нейронной сети — посмотреть, как ядра, закодированные в этих весах, «воспринимают» изображение. Иными словами, какие свойства изображения выделяет данное ядро. В этом упражнении вы сделаете именно это: выполните свёртку изображения с ядром и визуализируете результат. Используйте переменную test_data с изображениями, функцию extract_kernel() для извлечения ядра из модели и функцию convolution(), которую мы определили в первой главе, — извлеките ядро, загрузите данные из файла и визуализируйте их с помощью matplotlib.

Глубокая CNN model, функция convolution() и kernel, извлечённое в одном из предыдущих упражнений, доступны в вашем рабочем пространстве.

Хотите выйти на новый уровень глубокого обучения? Пройдите курс Advanced Deep Learning with Keras и узнайте, как функциональный API Keras позволяет применять экспертные знания для решения новых типов задач.

Это упражнение является частью курса

Моделирование изображений с помощью Keras

Посмотреть курс

Инструкции к упражнению

  • С помощью функции convolution() выполните свёртку извлечённого ядра с первым каналом четвёртого изображения в массиве.
  • Визуализируйте результат свёртки с помощью imshow().

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

import matplotlib.pyplot as plt

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

# Visualize the result
____
plt.show()
Редактировать и запускать код