吳恩達公開課心得——logistic回歸

1.邏輯迴歸和線性迴歸的對比

吳恩達公開課心得——logistic迴歸

2.為啥必須使用logistic函數?

如果直接採用線性迴歸的代價函數,將得到一個非凸函數。其實物理意義也不對,h(x)表示y=1的概率,範圍在(0,1)內,代價函數中的y是最終結果0或者1。

把h(x)看成一個隨機變量,那麼在樣本足夠大的情況下,頻率趨向頻率,而且一般假設它滿足正態分佈。而正太分佈的概率函數恰恰是logistic函數。因此使用logistic函數與h(x)的物理意義正好吻合。

3.代價函數是怎麼得到的?

cost function是採用了極大似然估計(MLE)得到的一個表達式。它的物理意義是當取合適的theta時,這個表達式能取得最小值,此時h(x)是對y的概率的極大似然估計,也就是說y的概率函數為h(x)。

4.視頻中的一個筆誤(見 《簡單代價函數與梯度下降》)

logistics regression中的梯度下降算法的表達式中還少了一個1/m,由於我直接從視頻中拷貝出來的,就沒有修改,這裡註明一下。

5.其他高級算法的一些瞭解和思考

當然實際使用時,我們可能都不會使用梯度下降算法來求解這類問題,因為效率較低。

其他的更高級的算法包括:

  • Conjugate gradient 共軛梯度算法
  • BGFS 牛頓法
  • L-BFGS 擬牛頓法

為啥梯度下降算法在線性迴歸中表現很好,在logistics迴歸時表現不好呢?關鍵區別在於,線性迴歸中,如果算法收斂的話,梯度絕對值總是越來越小,步長的選擇就不那麼重要了。logistics迴歸中的代價函數是非線性函數,梯度的變化不是很有規律的。例如牛頓法在計算下一個搜索方向時,同時考慮和代價函數的一階偏導和二階偏導,使得迭代效率明顯提升。但是牛頓法的缺點就是二階偏導的計算往往會比較複雜。共軛梯度法介於梯度下降法和牛頓法之間,它在計算下一個搜索方向時同時考慮以前用過的搜索方向,這樣可以找到一個更好的搜索方向。擬牛頓法的借鑑牛頓法,不過它使用一個正定矩陣代替了牛頓法中二階偏導矩陣,結果得到的新搜索方向是以前所有搜索方向的一個線性組合,從這點看,他和共軛梯度法類似,只不過它選擇的方向可能優於共軛梯度算法,因此效率更高。

以上描述,如有紕漏,請不吝指教。


分享到:


相關文章: