Я понимаю, как работает свертка, но я не понимаю, как одномерные свертки применяются к двумерным данным.
В этом примере вы можете увидеть 2D свертку в 2D данных. Но как было бы, если бы была 1D свертка? Просто 1D ядро скользит таким же образом? А если шага было 2?
Спасибо!
conv-neural-network
Gustavo
источник
источник
Ответы:
Для немного более математического объяснения, вы можете проверить Ji Young Lee, Franck Dernoncourt. « Последовательная классификация коротких текстов с рекуррентными и сверточными нейронными сетями ». NAACL 2016 . раздел 2.1.2:
источник
1D свертки используются в сверточных сетях для дискретизации с понижением и увеличения дискретизации в измерении фильтра. Сверточные сети строят эти карты фильтров по мере того, как вы проходите через сеть, вы действительно можете думать о них как о 3-м измерении. Обычный базовый случай измерения карты фильтра - размер 3, так как у нас часто будут изображения RGB, проходящие через нашу сеть.
Эти одномерные свертки могут быть полезны для понижающей дискретизации, выполнения некоторой операции, а затем для повторной выборки обратно до того же измерения. Это очень полезно по соображениям производительности.
Чтобы действительно интуитивно понять, я предлагаю прочитать:
Сеть в сети - http://arxiv.org/abs/1312.4400
Углубляясь с извилинами - https://www.google.com/url?sa=t&source=web&rct=j&url=http://www.cs.unc.edu/~wliu/papers/GoogLeNet.pdf&ved=0ahUKEwi89oeuxqnLAhXhuIMKHZrTCe0QFggkMAE&usg=AFQjCNGCEEnUgrgCn- rrECNQ72wI3PH1Qw & Sig2 = VhjfaMvuskNIDVKhFfNiqQ
источник