深度學習中,為什麼需要對資料進行歸一化

2021-09-27 03:36:46 字數 409 閱讀 5731

使用gradient descent來訓練模型的話都要在資料預處理步驟進行資料歸一化。原因如下:

根據反向傳播公式:

如果輸入層 x 很大,在反向傳播時候傳遞到輸入層的梯度就會變得很大。梯度大,學習率就得非常小,否則會越過最優。在這種情況下,學習率的選擇需要參考輸入層數值大小,而直接將資料歸一化操作,能很方便的選擇學習率。而且受 x 和 w 的影響,各個梯度的數量級不相同,因此,它們需要的學習率數量級也就不相同。對 w1 適合的學習率,可能相對於 w2 來說會太小,如果仍使用適合 w1 的學習率,會導致在 w2 方向上走的非常慢,會消耗非常多的時間,而使用適合 w2 的學習率,對 w1 來說又太大,搜尋不到適合 w1 的解。

機器學習中為什麼需要對資料進行歸一化?

如下圖所示,藍色的圈圈圖代表的是兩個特徵的等高線。其中左圖兩個特徵x1和x2的區間相差非常大,x1區間是 0,2000 x2區間是 1,5 其所形成的等高線非常尖。當使用梯度下降法尋求最優解時,很有可能走 之字型 路線 垂直等高線走 從而導致需要迭代很多次才能收斂 而右圖對兩個原始特徵進行了歸一化,...

為什麼一些機器學習模型需要對資料進行歸一化?

針對這個問題參考了wiki的解釋 歸一化後有兩個好處 1 歸一化後加快了梯度下降求最優解的速度 2 歸一化有可能提高精度 1 歸一化為什麼能提高梯度下降法求解最優解的速度?如下圖所示,藍色的圈圈圖代表的是兩個特徵的等高線。其中左圖兩個特徵x1和x2的區間相差非常大,x1區間是 0,2000 x2區間...

為什麼一些機器學習模型需要對資料進行歸一化?

本文 機器學習模型被網際網路行業廣泛應用,如排序 參見 排序學習實踐 推薦 反作弊 定位 參見 基於樸素貝葉斯的定位演算法 等。一般做機器學習應用的時候大部分時間是花費在特徵處理上,其中很關鍵的一步就是對特徵資料進行歸一化,為什麼要歸一化呢?很多同學並未搞清楚,維基百科給出的解釋 1 歸一化後加快了...