吳恩達機器學習課筆記week 3

本週主要講分類、邏輯迴歸以及正則化

分類

分類問題的幾個例子

  1. 判別一個郵件是/不是垃圾郵件
  2. 判別一個轉賬交易是/不是欺詐交易
  3. 判別腫瘤是惡性/良性
    也就是說輸出的y的取值是{0,1} ,0一般表示negative class,1表示positive class。對於多類別則是y{0,1,2,3,...}

  線性迴歸解決這個分類問題會有什麼問題?
如下圖所示:
這裏寫圖片描述
如果用線性迴歸的話,會出現假如樣本點有一個離均值很遠的點的情況下,這個點導致整個判別面發生巨大的改變。這裏邊最主要的一點就是線性迴歸的y=hθ(x) 可以>1可以<0。我們希望能夠有一個方法使得0y1

邏輯迴歸的hypothesis representation

  如下圖所示:
這裏寫圖片描述

我們在線性迴歸的基礎上,外邊套上一個非線性函數使得輸出在[0,1]之間。這個函數就是sigmoid 函數,或者叫logistic函數。

hθ(z)=11+exp(z)=11+exp(θTx)

  那麼現在這個hθ(x) 表達的是什麼意思呢?表達的是對一個輸入x,y等於1的概率是多少。也就是說假如y=0.1,那麼說明P(y=1)=0.1,P(y=0)=0.9。這就是邏輯迴歸。
這裏寫圖片描述

邏輯迴歸的決策面

  如下圖所示:
這裏寫圖片描述
假如我們認定如果hθ(x)>0.5 的話,我們就判定y=1 那麼,也就是要求z=θTx>0
所以對於線性分類面,只要考慮z>0z<0 的情況即可:
這裏寫圖片描述
非線性的分類面也是如此:
這裏寫圖片描述

邏輯迴歸的cost function

不能使用線性迴歸的cost function,因爲直接使用的話,cost function 會變成非凸函數。而是使用如下的:
這裏寫圖片描述
這裏寫圖片描述

梯度下降

這裏寫圖片描述

優化進階

  其實出了梯度下降之外,還有很多其他進階的優化方法,這些方法比梯度下降的方法要快,但是會比較複雜。
這裏寫圖片描述

多分類:one vs all

  one vs all(rest)這種方法,其實就是對每一類i,訓練一個邏輯迴歸分類器,然後有新的輸入x,那麼找到一個i,使得hθi(x) 最大。
這裏寫圖片描述
這裏寫圖片描述

正則化

過擬合

  過擬合就是因爲模型的feature太多,結果導致對訓練集上擬合的很好,但是泛化能力很弱。
這裏寫圖片描述
這裏寫圖片描述

過擬合的處理方法

  過擬合有幾種處理方法,一種是減少feature數量,然後在模型之間選擇,另外就是正則化,正則化就是減少參數θj 的幅度,這樣每一個feature都會給最終的模型貢獻一點點。這個對於很多feature的情況下很有用。
這裏寫圖片描述

Intuition

  其實就是假如各個參數的大小比較小,那麼一些高次的feature貢獻的就少,這時候就能夠不要那麼過擬合。
這裏寫圖片描述

方法就是在cost function後邊加上一個λj=1Nθj
這裏寫圖片描述

加上正則化之後,過擬合的情況就會得到改善:
這裏寫圖片描述

正好有一個小問題:假如λ 選的很大會出現什麼結果?答:underfitting,沒法擬合了。
這裏寫圖片描述

如下圖所示:
這裏寫圖片描述

線性迴歸的正則化

如下圖所示,其實可以看出來,L2 Regularization等價於weight decay:
這裏寫圖片描述

如果是正規方程的方法:
這裏寫圖片描述

可以看到,假如XXT 是奇異的,那麼經過正則化之後,變成非奇異的:
這裏寫圖片描述
其實思路很簡單,因爲XXT 的特徵值一定是非負的,非零特徵值一定大於1個,那麼加上這個矩陣之後,所有特徵值都是整的了,那麼就不是奇異的了。

邏輯迴歸的正則化

這裏寫圖片描述

同樣,加上weight decay。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章