CNN中的一些概念

时间:2022-03-30 14:53:20
池化层往往跟在卷积层后面。通过平均池化或者最大池化的方法将之前卷基层得到的特征图做一个聚合统计。假设L层的卷积层得到的某一特征图有100*100这么大的尺寸。选一个2*2的区域做不重叠的最大池化,池化层会输出50*50那么大的图,达到降低数据量的目的。
因为图像具有一种“静态性”的属性,这也就意味着在一个图像区域有用的特征极有可能在另一个区域同样适用。例如,卷积层输出的特征图中两个相连的点的特征通常会很相似,假设a[0,0],a[0,1],a[1,0],a[1,1]都表示颜色特征是红色,没有必要都保留作下一层的输入。池化层可以将这四个点做一个整合,输出红色这个特征。可以达到降低模型的规模,加速训练的目的。

参考UFLDL中的池化概念:

http://deeplearning.stanford.edu/wiki/index.php/%E6%B1%A0%E5%8C%96

另外:UFLDL中关于“卷积特征提取”的概念:

http://deeplearning.stanford.edu/wiki/index.php/%E5%8D%B7%E7%A7%AF%E7%89%B9%E5%BE%81%E6%8F%90%E5%8F%96

最后还有对C++实现的CNN代码的详细解释:

http://blog.csdn.net/column/details/tiny-cnn.html