正则化网络的激活函数
Batch归一化会使你的参数搜索变得很容易,使神经网络对超参数选择变得更加稳定。超参数范围会更庞大,工作效率也会更好。也会让你训练出更为深层次的神经网络。下面我们具体介绍一下Batch归一化
如图右侧的圈圈所示,我们之前已经学过了通过归一化手段如何将扁平的圈圈变成比较一般的圆形,但是这只是对逻辑回归而言的,对于神经网络应该怎么做呢?
我们在归一化的例子中看到了,如果对x1,x2和x3进行归一化,那么可以学到更好地w和b,同样的道理,在神经网络里,我们要想学到不错的w3和b3,那么需要对a2进行归一化处理。
那么问题是对于隐藏层,比如说这里的a2,能否实现归一化呢?
Batch归一化就可以做到这一点。实际上我们是对Z2进行的归一化而不是对a2进行的归一化。下面我们来介绍一下如何进行归一化
如图所示,假设你又一些隐藏单元,从z1一直到zm,这些都是 Z[l] Z [ l ] 层的。
对z实行了正则化之后我们有如下公式:
Z(i)˘=γZ(i)norm+β Z ( i ) ˘ = γ Z n o r m ( i ) + β
这里 γ γ 和 β β 是模型的学习参数。我们可以使用梯度下降或者一些其他的梯度下降法。比如说momentum或者Adam来更新这两个参数,就如同神经网络的权重一样。
事实上,如果