1. 程式人生 > >Stanford機器學習課程(Andrew Ng) Week 1 Parameter Learning --- 線性迴歸中的梯度下降法

Stanford機器學習課程(Andrew Ng) Week 1 Parameter Learning --- 線性迴歸中的梯度下降法

本節將梯度下降與代價函式結合,並擬合到線性迴歸的函式中

這裡寫圖片描述

這是我們上兩節課得到的函式,包括:

  • 梯度下降的公式
  • 用於擬合的線性假設和h(x)
  • 平方誤差代價函式 J(θ0 , θ1)

步驟

  • 我們把J(θ0 , θ1)帶入到左邊的梯度下降公式中,展開成下面形式
    這裡寫圖片描述

  • 我們假設梯度下降演算法起始地兩個初值J = 0 , 1 。分別對θ0 和θ1求偏導
    這裡寫圖片描述

  • 帶入到我們的梯度下降公式中得到:
    這裡寫圖片描述
  • 然後我們不斷執行演算法,θ0 和 θ1 不斷被更新,直到收斂。
    這就是我們的線性迴歸演算法。

梯度下降演算法是如何工作的?

我們上節課展示的梯度下降演算法是這樣的

這裡寫圖片描述

不同的點可能走到不同的區域性最優點
但是事實證明用於線性迴歸的代價函式總是一個凸函式的形式
這裡寫圖片描述
線上性迴歸中,無論如何我們只能找到一個全域性最優解
下面我們通過輪廓圖展示下降過程:

輪廓圖展示:

這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述

圖左邊對應著相應的假設函式,最終我們找到了資料最好的擬合結果,現在就可用利用這條直線來預測結果。

批量梯度下降法:

這裡寫圖片描述

剛才這種梯度下降法同樣也可以稱為批量梯度下降法,因為在剛才的下降過程中,我們每一步都計算了對訓練集中所有的樣本就行了求和運算。

  • 當然也有些梯度下降演算法在每次計算式只關注資料集中小部分。將在後面課程介紹。