Batch Normalization

BN本質(zhì)上解決的是反向傳播過(guò)程中的梯度問(wèn)題。

詳細(xì)點(diǎn)說(shuō),反向傳播時(shí)經(jīng)過(guò)該層的梯度是要乘以該層的參數(shù)的,即前向有:
h_l=w^T_lh_{l-1}

那么反向傳播時(shí)便有:
\frac{\partial l}{\partial h_{l-1}} = \frac{\partial l}{\partial h_l} . \frac{\partial h_l}{\partial h_{l-1}} = \frac{\partial l}{\partial h_l} w_l

那么考慮從l層傳到k層的情況,有:
\frac{\partial l}{\partial h_k} = \frac{\partial l}{\partial h_l} \prod _{i=k+1}^{l} w_i

上面這個(gè)\prod_{i=k+1}^l w_i 便是問(wèn)題所在。因?yàn)榫W(wǎng)絡(luò)層很深,如果w_i大多小于1,那么傳到這里的時(shí)候梯度會(huì)變得很小比如0.9^{100};而如果w_i又大多大于1,那么傳到這里的時(shí)候又會(huì)有梯度爆炸問(wèn)題 比如1.1^{100}。BN所做的就是解決這個(gè)梯度傳播的問(wèn)題,因?yàn)锽N作用抹去了w的scale影響。

具體有:

h_l=BN(w_lh_{l-1}) = BN(\alpha w_lh_{l-1})

那么反向求導(dǎo)時(shí)便有了:
\frac{\partial h_l}{\partial h_{l-1}}=\frac{\partial BN w_lh_{l-1}}{\partial h_{l-1}} =\frac{\partial BN \alpha w_lh_{l-1}}{\partial h_{l-1}}

可以看到此時(shí)反向傳播乘以的數(shù)不再和w的尺度相關(guān),也就是說(shuō)盡管我們?cè)诟逻^(guò)程中改變了w的值,但是反向傳播的梯度卻不受影響。更進(jìn)一步:
\frac{\partial h_l}{\partial w_l} = \frac{\partial BNw_lh_{l-1}}{\partial w_l} = \frac{1}{\alpha}.\frac{\partial BN \alpha w_l h_{l-1}}{\partial w_l}

即尺度較大的w將獲得一個(gè)較小的梯度,在同等的學(xué)習(xí)速率下其獲得的更新更少,這樣使得整體w的更新更加穩(wěn)健起來(lái)。

總結(jié)起來(lái)就是BN解決了反向傳播過(guò)程中的梯度問(wèn)題(梯度消失和爆炸),同時(shí)使得不同scale的w整體更新步調(diào)更一致。

轉(zhuǎn)自:知乎

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容