日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

机器学习中为什么需要梯度下降_梯度下降直觉 - 机器是如何学习的

發布時間:2023/12/19 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 机器学习中为什么需要梯度下降_梯度下降直觉 - 机器是如何学习的 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

梯度下降法是一種求函數最小值的算法。在機器學習中,預測值和實際值之間的差稱為誤差。將所有數據點上的所有誤差加在一起時稱為成本。

當然,我們希望最小化代表此成本的函數 - 成本函數。

在機器學習中梯度下降是什么意思呢?

通過使用稱為反向傳播的技術來訓練神經網絡。梯度下降是反向傳播的一個非常重要的部分。

梯度下降法是一種非常流行的方法來調整機器學習模型的參數,以達到最小的誤差狀態。

機器學習算法是告訴機器學習數據的行為。鑒于機器只能理解0和1,有必要通過數學模型表示數據。任何數學模型都會有一些參數,例如直線有兩個參數 - 斜率和截距:y = m * x + b。

正如線性回歸中所解釋的那樣,我們的目的是為我們的數據擬合一條直線。這本質上意味著調整參數m和b,使之符合線表示數據的方式。

上 :直線模型的參數 下:神經網絡的參數

其他的數學模型也包含參數,例如神經網絡中所有隱含層的權重都是該網絡的參數。權重是一層神經元和另一層神經元之間連接的強度。每一個權重都成為一個需要調整的參數,以便我們的模型能夠最好地表示數據并在未來給出準確的預測。

注意m和b是如何變化的。

Gradient Descent如何運作?

好了,現在我們知道梯度下降用于找到機器學習模型的最小誤差(最低成本)狀態,讓我們看看它是如何工作的。

想象一個迷路的徒步旅行者。他在山頂附近迷路了,不知道要走哪條路。他需要從他可以走的地方找到通往山谷的路。

實質上,梯度下降也是如此。

  • 隨機選擇我們的旅行者的起點。
  • 我們測量了他站的那個點的山的坡度
  • 我們往下走了一步
  • 步長與該點的斜率絕對值成正比。這意味著斜率越陡步長越大。
  • 迷路的徒步旅行者

    現在讓我們試著把這個類比和我們的實際問題等同起來。

    • 山=成本函數
    • 旅行者的地面位置=參數
    • 山的斜率=成本函數的導數
    • Step =改變參數
    • 如果cost函數包含2個參數,那么這座山就是三維的,看起來就像這兩個參數中的一個:

    數學

    要了解Gradient Descent,我們需要了解以下內容

    • 參數
    • 成本函數
    • 梯度=成本函數的導數
    • 學習率
    • 更新規則

    1)參數

    假設我們有n + 1個參數表示

    2)成本函數

    成本函數基本上是用不同的方法來總結誤差——預測的b/w和實際的b/w之差。我們不討論成本函數是怎樣的,我們用字母J來表示它,因為J是所有參數的函數,我們把它寫成

    對于1個變量情況,我們只有θ0和J(θ0)

    3)梯度=斜率

    為了計算斜率,我們計算該點處的損失函數的導數。下面的符號表示損失函數,即對theta_j的偏導數。

    這是正斜率。如果那個徒步旅行者在左邊的山峰上,他會得到一個-ve

    4)學習率

    學習率由字符α表示。Alpha控制我們在下降期間采取的步長有多大。由于我們的步長由上面所示的導數確定,因此alpha乘以該導數以控制步長。

    如果α太小,徒步旅行者將花費太長時間來到山谷,即梯度下降將花費太長時間來收斂

    非常小的alpha導致極小的步驟,導致收斂慢

    如果阿爾法太大,徒步旅行者將移動得非常快,錯過山谷。

    大alpha不會讓梯度下降收斂

    5)更新規則

    最后,梯度下降只不過是更新規則。更新規則同時更新所有參數。通過步長值減去參數的當前值。其公式來自于上述所有項的組合。

    更新規則

    注意:如果斜率為負,第二項將變為正(由于負號),這將導致參數值增加。所以當斜率為-ve時,則向右移動了一點。如果斜率是+ve,徒步旅行者向左移動一點。當斜率為0時,第二項為0,則值不變。

    綜上所述

    • 對所有thetas /參數進行初步猜測
    • 應用更新規則,直到成本函數達到穩定的最小值

    要注意的事情

    • 梯度下降的第一步總是隨機初始化。現在我們可能很幸運,將我們的theta初始化為最低限度,但這很少見。更有可能的是,我們最終可能從一個點開始它永遠不會到達全局最小值。它可能會陷入局部極小值。例如,如果徒步旅行者從山頂的右側出發,他會被困在局部的最小值中。

    局部最小值問題

    • 步長:坡度越大,我們所采取的步長就越大。這是因為更陡的斜率會導致更大的導數值,θ就會使變化更大。所以越高,徒步旅行者移動得越快,當我們接近最小值時,我們就會慢下來。
    • 收斂:如果alpha太小,我們可能永遠不會收斂,如果它太大,我們可能會 overshoot。下面你可以看到alpha = 0.03太慢,alpha = 0.4恰好,而alpha = 1.02太大。
    • 算法的靈活性:由于梯度下降與數學模型無關,并且僅依賴于成本函數,因此它適用于各種機器學習算法 - 線性回歸,邏輯回歸,神經網絡等。
    • 動量:還記得局部的最小問題嗎?有時人們使用動量的概念來防止GD卡住。動量項確保系統只在全局最小值上穩定。

    上:Momentum讓系統達到全局最小化。下:陷入局部極小值

    總結

    以上是生活随笔為你收集整理的机器学习中为什么需要梯度下降_梯度下降直觉 - 机器是如何学习的的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。