研究生的第一篇Paper是关于CNN的,为了能够理解这篇paper,在网上找了很多关于CNN的文章:
- Stanford的CNN介绍:斯坦福cs231的CNN课程、
- C3D:C3D: Generic Features for Video Analysis、
- Medium论坛:medium上的CNN基础架构理解、
- stack问答:filter数量与什么有关 、
- IEEE Paper:3D卷积,人体姿态检测……等等。
找的这些东西虽然确实也挺有帮助,但是我发现,就一个2-D CNN来说里面都有太多概念:receptive fileld、filter、weight、depth、channel、input feature map、pooling、FV……;另外还有,常见的网络结构:AlexNet,ResNet,FCN,MXnet,Faster-RCNN、计算机视觉的顶级会议:CVPR、ECCV、ICCV(计算机视觉顶级会议和期刊)、以及增加时间维度用于视频中动作识别的3-D卷积……等等。不过,总算整理出来了。
认识CNN(Convolutional Neural Network)卷积神经网络基本知识:
1 首先CNN的输入、输出是什么?
CNN网络的输入是一张图像,输出是一个类别
比如,有一张汽车的图像,把这张图片输入到CNN网络中,CNN网络出来就是一个类目名:Car:
2 CNN网络又是什么?
图中就是一个基础的CNN网络结构,其中有:卷积层(Convolutional layers),全连接层(Fully-connected layers),接了池化层(Pooling layers)和激活函数(Activation Functions)
当然,上面只是梳理了CNN网络结构中有什么内容,实际的CNN网络不会这么简单。
以AlexNet为例,看CNN网络结构。
下图即为AlexNet结构: