梯度下降

一、梯度下降的本質

機器學習“三板斧”:選擇模型家族,定義損失函數量化預測誤差,通過優化算法找到最小化損失的最優模型參數。

機器學習 vs?人類學習

梯度下降的本質:用于求解機器學習和深度學習中的最優化問題。

梯度下降的基本思想是從一個初始點出發,沿著損失函數的負梯度方向不斷更新參數,直到達到一個局部最小值或者全局最小值。

梯度下降的基本思想

梯度下降的關鍵步驟

二、梯度下降的原理

在梯度下降中,利用方向導數的最小值(即梯度的反方向)來更新參數,從而逼近函數的最小值。

方向導數:在梯度下降算法中,方向導數用于確定函數值下降的最快方向。

方向導數

梯度(Gradient):在梯度下降算法中,梯度提供了函數下降的方向和速度信息。

梯度

三、梯度下降的算法

批量梯度下降(BGD)在每次迭代中,批量梯度下降使用整個數據集來計算損失函數的梯度,并根據這個梯度來更新模型的所有參數。

批量梯度下降(BGD)

隨機梯度下降(SGD)與批量梯度下降不同,隨機梯度下降在每次迭代中僅隨機選擇一個樣本來計算損失函數的梯度,并根據這個梯度來更新模型的一個或多個參數。

隨機梯度下降(SGD)

優點:

  1. 計算效率高:由于每次迭代只處理一個樣本,隨機梯度下降的計算效率通常比批量梯度下降高得多,特別是在處理大規模數據集時。
  2. 內存消耗小:隨機梯度下降只需要加載一個樣本到內存中,因此對于內存的需求相對較低。
  3. 有助于跳出局部最小值:由于每次更新都是基于單個樣本的梯度,隨機梯度下降在優化過程中具有更大的隨機性,這有助于模型跳出局部最小值,找到更好的全局最小值。

缺點:

  1. 收斂過程不穩定:由于每次更新都是基于單個樣本的梯度,隨機梯度下降的收斂過程通常比批量梯度下降更不穩定,可能會產生較大的波動。
  2. 難以達到全局最優:在某些情況下,隨機梯度下降可能會陷入局部最小值,而無法達到全局最優解。
  3. 需要額外的技巧:為了提高隨機梯度下降的性能和穩定性,通常需要采用一些額外的技巧,如逐漸減小學習率(學習率衰減)、使用動量等。

本文章轉載微信公眾號@架構師帶你玩轉AI

上一篇:

神經網絡算法 - 一文搞懂Loss Function(損失函數)

下一篇:

人工智能數學基礎 - 貝葉斯統計(Bayesian Statistics)
#你可能也喜歡這些API文章!

我們有何不同?

API服務商零注冊

多API并行試用

數據驅動選型,提升決策效率

查看全部API→
??

熱門場景實測,選對API

#AI文本生成大模型API

對比大模型API的內容創意新穎性、情感共鳴力、商業轉化潛力

25個渠道
一鍵對比試用API 限時免費

#AI深度推理大模型API

對比大模型API的邏輯推理準確性、分析深度、可視化建議合理性

10個渠道
一鍵對比試用API 限時免費