-----相关名词介绍:
CNN:Convolutional Neural Networks
FC:Fully Connected
IoU:intersection over Union(LoU的定义:Region Proposal 与 GROUnd TRUth的窗口的交集和并集的比值,如果IoU低于0.5,那么相当于目标还是没有被检测到)
ICCV:International Conference on Computer Vision
R-CNN:Region-based Convolutional NeuralNetworks
AR:Average Recall
RPN:Region Proposal Networks
FAIR:Facebook AI research
w.r.t:with respect to
Image Classificarion:图像分类
Object Detetction 、Localization、Segmentation:对角检测、定位、分割
i.e.:in other words
dot product:点乘
ReLu:Rectified Linear Units??类似sigmod函数 的分类器映射
the stride :滤波器的步调
the amount of zero padding :0填充的数目
----CNN的物理意义:
图像的主要问题在于其高维度,原因是对高维度的处理时间和运算能力成本很高。卷积网络就是为了通过各种方式降低图像的维度而设计的。过滤器步幅即是减少维度的一种方法,另一种方法是降采样。
----Input Image 与filter:
滤波器的深度和输入的深度一致,滤波器和输入的每个深度分别进行卷积得到activaton map ,比如32*32*3的输入图像和5*5*3的滤波器卷积,会得到28*28*1的activation map.
----Activation map与filter:
-有多少个filters ,activation map的维度就是多少,如有两种滤波器,那么会生成28*28*2的activation map。
-Activation map的每个维度的(它的维度可看作它的数目)共享对应fliter的权重和偏差。
----ConvNet的结构:
---Pooling(池化/降采样)的物理意义:
Pooling层一般用于降维,将一个kxk的区域内取平均或取最大值,作为这一个小区域内的特征,传递到下一层。传统的Pooling层是不重叠的,使Pooling层重叠可以降低错误率,而且对防止过拟合有一定的效果。
---Conv Layer的总结:
K:filters的数目
F:filter的空间大小
S:步调长度(向前移动的步数)
P:0填充数目
----深度革命中遇到的问题:
随着CNN网络的发展,尤其的VGG网络的提出,大家发现网络的层数是一个关键因素,貌似越深的网络效果越好。但是随着网络层数的增加,问题也随之而来。
第一个问题: vanishing/exploding gradients(即梯度消失或爆炸):这就导致训练难以收敛。但是随着 normalized initialization and BN(Batch Normalization)的提出,解决了梯度消失或爆炸问题。
第二个问题:网络越深,训练误差和测试误差越大。在收敛问题解决后,又一个问题暴露出来:随着网络深度的增加,系统精度得到饱和之后,迅速的下滑。让人意外的是这个性能下降不是过拟合导致的。对一个合适深度的模型加入额外的层数导致训练误差变大。如下图所示,可通过Deep Residual Learning 框架来解决这种因为深度增加而导致准确性下降问题。