5月班第5次课caffe TensorFlow使用与CNN训练注意事项

CNN训练注意事项与框架使用

Mini-batch SGD
 不断循环:
① 采样一个batch数据(比如32张,可以做镜像对称)
② 前向计算得到损失loss
③ 反向传播计算梯度(一个 batch上的)
④ 用这部分梯度迭代更新权重参数

 训练注意点

 2种方式去均值
 不要做标准化、PCA和白化

 权重初始化

 

 对于层次不深的神经网络OK
 深层网络容易带来整个网络(激活传递)的不对称性

权重初始化
 10层神经网络(500神经元),使用tanh作为激励函数

 

关于Batch Normalization
① 期望激励过后的结果是高斯分布的,那我们就手动修一下

 通常在全连接层后,激励层前做

 

  关于Batch Normalization好处

梯度传递(计算)更为顺畅

学习率设高一点也没关系

对于初始值的依赖减少了!!!

说起来,其实这里也可以看做一种正则化,减少了对dropout
的需求。

 Dropout

 

Life is short, but I have a cat.
原文地址:https://www.cnblogs.com/koocn/p/7754738.html