Как определить количество сверточных операторов в CNN?

10

В задачах компьютерного зрения, таких как классификация объектов, с помощью сверточных нейронных сетей (CNN), сеть обеспечивает привлекательную производительность. Но я не уверен, как настроить параметры в сверточных слоях. Например, в градациях серого изображения ( 480x480) первый сверточный слой может использовать сверточный оператор, например 11x11x10, где число 10 означает количество сверточных операторов.

Вопрос в том, как определить количество сверточных операторов в CNN?

Чжи Лу
источник

Ответы:

11

Я предполагаю, что когда вы говорите, 11x11x10вы имеете в виду, что у вас есть слой с фильтрами 10, 11x11. Таким образом, количество сверток, которые вы будете делать, составляет просто 10, 2D дискретных сверток на фильтр в вашем банке фильтров. Итак, допустим, что у вас есть сеть:

480x480x1    # your input image of 1 channel
11x11x10     # your first filter bank of 10, 11x11 filters
5x5x20       # your second filter bank of 20, 5x5 filters
4x4x100      # your final filter bank of 100, 4x4 filters    

10+20+100знак равно130

10+200+2000знак равно2,210

Теперь это говорит лишь о том, сколько один канале 2D свертка вы делаете, не так, как с интенсивными вычислениями каждой свертка, вычислительная интенсивность каждого свертка будет зависеть от различных параметров , в том числе image_size, image_depth, filter_size, ваш stride(как далеко вы шаг между каждым человеком фильтр расчета), количество слоев пула и т. д.

sabalaba
источник