1x1convolutionってたまに見かけるけど何の為にしてんの?
概要
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/482094/0e89978d-3e0a-de42-71e9-be4645027bb4.png)
入力画像のサイズを変えずにチャネル方向のみに畳み込みをする
28x28x192のinputに28x28x192のfilter32個を掛け合わせると、28x28x32の出が得られる!
出力チャネル数が減った事により計算量を削減できる!
例
入力28x28x192 出力28x28x192とする
3x3 convの場合
(28x28x192) x (3x3x192) = 260,112,384
1x1 conv(half channel) => 3x3 convの場合
(28x28x192) x (1x1x96) + (28x28x96) x (3x3x192) = 14,450,688 + 130,056,192 = 144,506,880
参考文献
Network In Network
https://arxiv.org/pdf/1312.4400.pdf
1×1 Convolution
https://axa.biopapyrus.jp/deep-learning/cnn/1x1_convolution.html
A Comprehensive Tutorial to learn Convolutional Neural Networks from Scratch (deeplearning.ai Course #4)
https://www.analyticsvidhya.com/blog/2018/12/guide-convolutional-neural-network-cnn/