深度學習中saturation是什麼意思?

時間 2021-05-30 17:35:20

1樓:泰克尼客

就是指梯度接近於0(例如sigmoid函式的值接近於0或1時,函式曲線平緩,梯度接近於0)的狀態,這會導致採用梯度下降法求最值時,速度偏緩。解決方法是更換損失函式和啟用函式的組合。例如cross entropy/sigmoid,logloss/softmax。

其實質都是在數學層面上,這種組合下,cost function的梯度不會在特定區間上存在過於平緩的狀態。

2樓:杜客

圖例:左邊是Sigmoid,右邊是tanh。

怎麼理解呢?回憶一下,在反向傳播的時候,(區域性)梯度將會與整個損失函式關於該門單元輸出的梯度相乘。因此,如果區域性梯度非常小(你看但函式值非常接近0和1的時候,曲線的梯度是不是趨近於零?

),那麼相乘的結果也會接近零,這會有效地「殺死」梯度,幾乎就有沒有梯度訊號通過神經元傳到權重再到資料了。

為了防止飽和,一般對於權重矩陣初始化要特別留意。如果初始化權重過大,那麼大多數神經元將會飽和,將導致網路很難學習。

以上就是乙個簡要直觀的理解。如果想詳細了解,可以閱讀CS231n課程筆記翻譯:神經網路筆記1(上) - 智慧型單元 - 知乎專欄或其他相關文獻。

回答完畢。

深度學習中 number of training epochs 中的 epoch到底指什麼?

小島上的黑桃六 1 epoch batch size step sample size 1 batch size samplesize batch num 1次 epoch 計算 1次Loss 為後續迭代進行引數修正 1次 step 更新一次 params 對應計算 optimize functio...

深度學習中 Batch Normalization為什麼效果好?

用相對座標取代絕對座標。使在單一神經元輸出產生群體性的平移 放縮後,網路還可以接近0成本地適應新分布。由於不同神經元有功能性分工的差異,這種分工又無法在初始化的時候預知,所以好的初始化只能保證同層的多神經元混合的分布和目標分布 解的分布 一致,不能保證單一神經元的輸出分布和目標分布一致。所以單一神經...

深度學習中的深度一詞怎麼理解?

按照 Bengio 的說法,3 層以下為淺層。反之你可以理解為深。Bengio,Y.Learning deep architectures for AI.Foundations and Trends in Machine Learning,2009.2 1 從字面意思理解,深度 是指一種空間關係。後...