3.1 線性迴歸對於分類問題的侷限性
由於離群點的存在,線性迴歸不適用於分類問題。如下圖(閾值為0.5),由於最右離群點,再用線性迴歸與實際情況不擬合。引入 邏輯迴歸(logistic regression) 演算法,來解決這個問題。
- 邏輯迴歸模型
3.2 決策邊界 decision boundary
- 什麼情況下是分界線
- eg1
- eg2
3.3 代價函式 cost function
3.3.1 cost function的匯出
- 線性迴歸的損失函式J 採用的是平方誤差squared error cost,應用到分類問題時候的J影像不是convext凸函式,無法用梯度下降找到全域性最小值!
- 將線性迴歸的代價函式改寫為如下形式 (即把1/2提到後面去)得到邏輯迴歸的cost function
- 定義loss function
注意區分loss function和cost function
損失函式 loss function是在一個訓練樣本的表現,把所有訓練樣本的損失加起來得到的代價函式cost function,才能衡量模型在整個訓練集上的表現
5.3.2 邏輯迴歸的代價函式和梯度下降
把分類討論巧妙利用條件合併為一個式子
進而得到的cost function J 為
- 梯度下降
- 注意:邏輯迴歸的梯度下降看似與線性迴歸的梯度下降相同,但本質不同,因為他們的fx的原型不一樣
5.4 過擬合問題
5.4.1 過擬合
- 當變數過多時,訓練出來的假設能很好地擬合訓練集,所以代價函式實際上可能非常接近於0,但得到的曲線為了千方百計的擬合資料集,導致它無法泛化到新的樣本中,無法預測新樣本資料
- eg
解決過擬合方法:
- 得到更多的資料
- 特徵選擇——選用特徵的一部分
- 正則化——減少引數大小
5.5 過擬合的代價函式(正則化原理)
加上兩項後,為了最小化代價函式,自然而然地w3,w4要儘可能小,相當於懲罰這兩項使得原來的式子變為二次函式
在一般的迴歸函式中,使引數的值更小一般會使得曲線更為平滑而減少過擬合情況的發生
- 引入正則化項 的代價函式
- 如果有很多引數,我們不清楚哪個引數是高階項,即不知道懲罰哪個能獲得更好擬合的結果,因此引入正則化項統一懲罰引數以得到較為簡單的函式
- 統一懲罰能得到簡單結果是因為,高階項受到懲罰的效果會更強,反映在影像上就是使其影響變弱
- 其中
.+ 後的一項為正則化項,
λ 為正則化引數,作用是控制兩個不同目標之間的取捨
(1)第一個目標與第一項有關,即我們想要更加擬合資料集 fit data!
(2)第二個目標與第二項有關,即我們想要引數θj儘量小 keep wj samll - 懲罰從w1到wn,不包括b(之所以不懲罰b是為了讓擬合的函式儘量簡單,極端情況就是hw(x) = b,代表的一條水平線,不過實操中有無b影響不大)
- 若 λ 設定的過大,即對w1w2w3w4的懲罰程度過大,導致w1w2w3w4都接近於0,最後假設模型只剩一個b,出現欠擬合情況
5.6 用於線性迴歸和邏輯迴歸的正則方法
- 因為我們沒有對b正則化,沒有試圖去縮小b,因此求偏導沒有影響