У нас есть цветная картинка, размером 6 х 6 пикселей и два 3 х 3 фильтра, которые на выходе дают две матрицы размера 4 х 4:
Для того, чтобы превратить эту свёртку в полноценный слой CNN, нужно к получившимся матрицам добавить bias (\(b_1\) и \(b_2\)) и отправить эту сумму на вход нелинейной функции, например, ReLU:
на выходе получится две матрицы 4 х 4.
Слой обычной NN выглядит как вычисление \(z\):
\[z^{[1]}= w^{[1]}a^{[0]} + b^{[1]}\]и применение к полученному результату нелинейной функции:
\[a^{[1]} = g(z^{[1]})\]Если проводить параллели между CNN и обычной NN, то \(a^{[0]}\) — это исходная картинка, а параметры \(w^{[1]}\) — это значения фильтров:
В результате этой операции \(a^{[0]}\) размера 6 х 6 х 3, пройдя через один слой CNN, превращается в \(a^{[1]}\) размера 4 x 4 x 2
Если фильтров будет не 2, а, например, 10, то на выходе размер будет, соответственно, 4 x 4 x 10.