CNN中的调参指导

根据Very Deep Convolutional Networks for Large-Scale Image Recognition提出的调参指导,包含但不限于对imagenet类似的图像进行特征学习方法

CNN Configuration Principals

  1. 输入前唯一的预处理是减去均值。
  2. 1×1的核可以被看成是输入通道的线性变换。
  3. 使用较多的卷积核大小为3×3。因为它是最小的且能体现出上下左右中方位信息的卷积核.
  4. Max-Pooling 一般在2×2的像素窗口上做,with stride 2。(为了使层加深就要使下采样速度更慢)
  5. 除了最后一层全连接的分类层外,其他层都使用rectification non-linearity(RELU)。(或者是MaxW一类的可学习型激活函数,BN其实也可以看作激活函数的自适应)
  6. 不需要添加Local Response Normalization(LRN),因为它不提升效果反而会带来计算花费和内存花费,增加计算时间。
  7. 输入都是224by224

CNN Configuration

  1. 卷积层的通道数目(宽度)从64,每过一个max-pooling层翻倍,到512为止。
  2. 为甚么使用三层3×3代替一层7×7?
    第一,比起宽度,增加深度更具有效率;
    第二,假设同样的通道数C,那么三层3×3的参数数目为3×(3×3)C×C=27C×C,一层7×7参数数目为7×7×C×C=49C×C。大大减少了参数数目。
  3. 将全连接层转换为卷积层,第一个全连接转换为7×7的卷积,第二个转换为1×1的卷积。

Training

  1. 224×224输入的获得,将原始图片等比例缩放,保证短边大于224,然后随机选择224×224的窗口,为了进一步data augment,还要考虑随机的水平仿射和RGB通道切换。
  2. Multi-scale Training, 多尺度的意义在于图片中的物体的尺度有变化,多尺度可以更好的识别物体。有两种方法进行多尺度训练。在不同的尺度下,训练多个分类器,参数为S,参数的意义就是在做原始图片上的缩放时的短边长度。论文中训练了S=256和S=384两个分类器,其中S=384的分类器的参数使用S=256的参数进行初始化,且将步长调为10e-3。 另一种方法是直接训练一个分类器,每次数据输入时,每张图片被重新缩放,缩放的短边S随机从[min, max]中选择,本文中使用区间[256,384],网络参数初始化时使用S=384时的参数。

根据M. D. Zeiler and R. Fergus. Visualizing and understanding convolu-
tional neural networks. In ECCV, 2014.的论文,可视化与理解如下:

http://blog.csdn.net/whiteinblue/article/details/43312059

results matching ""

    No results matching ""