CNN总结
本次的博客内容来自对cs231n的Convolutional Neural Networks的总结,原始的博文链接是[github地址-
网络的层次的种类:
- convelutional layer:一般输入为3D(width*height*depth)的数据,输出一般也是一个三维数据。对于该层有stride、zero-padding、depth0三个超参数。该层次上利用一个指定的width和height取值来指定一个在3维数据上的范围,depth上的取值与输入的depth与输入数据的depth一致。通过这个三维的参数与输入数据的一个区域做点积得到一个数据,而通过stride来控制输入数据与参数相乘的部分从而得到一个二维数据。这个数据可以捕获数据的一些特征,该参数称为一个filter。而输出数据还有一个depth0参数,这个参数指定的是filter的个数,每个filter的结果按照这个维度来堆放到一起。zero-padding是用来指定用0来填充输入数据的边缘,使得stride的滑动能够正好到数据的边缘。
- pooling layer:通过一个矩阵取得输入数据的一块区域,而该区域只输出一个值,从而降低数据量。
- Normalization layer: these layers have since fallen out of favor because in practice their contribution has been shown to be minimal, i
- full-connected layer
- converting full-connected layer to convelutional layer