关于参数的调优:现在较大的范围内试试参数,然后在再一个比较好的参数范围内选择。
10-z次方选择参数。z=-5~5;
batch normalization 是对每次的minibatch 做某一个层的减均值除方差,然后乘以阿尔法加β,然后再通过激活函数。阿尔法和β也是要训练的参数。
batch normalization有正则化的作用,但是不能当作是正则化。类似dropout,每个minibatch可以说是带有噪声的。所以类似正则化。使得模型适应能力更强。比如原来网络训练的分辨黑猫和其他,那么训练好的网络可能也可以分别其他颜色的猫与其他不是猫的动物。注意可以使用流平均或者说用指数加权平均去计算训练过程中的均值和方差,然后用这个值粗略的在使用这个网络时使用。
一般需要找到最优解的网络可能是马鞍形。也就有一段很长的比较平滑的下降区域,然后达鞍点,然后才能更快的下降。使用adam(综合了RMSprop和momentum方法)方法或者是RMSprop(可以使用更大的学习率而不至于震动较大)都可以加快学习。一般momentum中的β设置成0.9,RMSprop中的β设置成0.99一般。训练的时候β设置成指数形式测试哪个数最好。比如r0.1,0.01,0.001对应的β=1-r是0.9,0.99,0.999