批量歸一化--改變有些參數改變可能梯度很平滑,有些參數改變可能梯度很陡峭
有些參數改變可能梯度很平滑,有些參數改變可能梯度很陡峭
怎么改變這個,使每個參數改變盡可能梯度都一樣呢

特征歸一化
對于每個維度i:均值:(\(m_i\))標準差:(\(\sigma_i\))
\(\widetilde{x}_i^r \leftarrow \frac{x_i^r - m_i}{\sigma_i}\)
所有維度的均值為 0,方差均為 1
一般來說,特征歸一化使梯度下降收斂更快。
分析與介紹
-
名稱:特征歸一化
-
原理
- 對每個特征維度i,計算該維度的均值(\(m_i\))和標準差(\(sigma_i\))。
- 通過公式\(\widetilde{x}_i^r \leftarrow \frac{x_i^r - m_i}{\sigma_i}\)對特征進行變換,使得每個特征維度的均值為 0,方差為 1。
-
作用:使梯度下降算法在訓練模型時收斂更快,提升模型訓練效率,是數據預處理和深度學習模型優化中的重要技術手段,為后續批量歸一化等技術的提出奠定了基礎。

在 \(Sigmoid\) 前后進行歸一化對結果影響不大

計算過程

只要其中一個改變,\(\mu\) 和\(\sigma\)都會改變,導致后邊的都很跟著變,一個\(Batch\)都會改變

加上\(\beta\) 和 \(\gamma\)防止\(z\)的平均為 0

在Test中沒有\(\mu\) 和\(\sigma\)怎么辦呢
在train的時候,每個\(Batch\)的\(\mu\)都會拿出來,根據下面的公式計算出均值代替


浙公網安備 33010602011771號