本文地址:http://blog.csdn.net/mounty_fsc/article/details/51290446
本部分介绍Caffe中卷积的实现。
1 简介
- 使用im2col分别将featrue maps 以及卷积核转换成矩阵
- 调用GEMM(GEneralized Matrix Multiplication)对两矩阵内积。
- 图来自引用论文[1]
2 详细介绍
最后,Filter Matrix乘以Feature Matrix的转置,得到输出矩阵Cout x (H x W),就可以解释为输出的三维Blob(Cout x H x W)。
3 作者的说明
在引用[3]中,作者说明了为何这样做卷积。
大致是:优化CNN中的卷积不是一件简单的事。由于时间、成本上的种种原因,作者作用了这样一种temporary、lazy的方案。但是却发现这样一种方案取得的效果还比较好。
[1]. High Performance Convolutional Neural Networks for Document Processing
[2]. https://github.com/Yangqing/caffe/wiki/Convolution-in-Caffe:-a-memo
[3]. https://www.zhihu.com/question/28385679