TensorFlow实现
神来一笔:Variance_epsilon
在上面的函数中,我们将“输入”“均值”“方差”“偏移”“缩放”都添加了进去,末了还有个参数:variance_epsilon = 0.001
这个参数的作用在官方表明为:A small float number to avoid dividing by 0.
大概的意思就是需设定一个浮点数用来避免除以0产生的梯度爆炸
虽然在方差被除等于零是几率很小的事,可在几十层乃至几百层的神经网络里,盘算量也要大的惊人,根据墨菲定律:会出错的事总会出错
滑动平均与滑动方差
注:BN层在训练与测试时所用的滑动平均和滑动方差差别
申请滑动平均与滑动方差(这里就应该不用我多叙述了,纯基础范围,不太理解的可以去找一下关于滑动平均的博文):