斯坦福2014机器学习笔记五----正则化
版權聲明:本文為博主原創文章,轉載請指明轉載地址
一、綱要
欠擬合和過擬合
代價函數正則化
正則化線性回歸
正則化邏輯回歸
二、內容詳述
1、欠擬合和過擬合
欠擬合,也叫高偏差,就是沒有很好的擬合數據集的情況。如下圖中的左圖所示
過擬合,也叫高方差,就是雖然高階多項式可以完美的擬合所有的數據,但會導致函數過于龐大,變量太多而我們又沒有足夠的數據來約束這個模型,這就是過度擬合。過度擬合的原因,簡單來說就是過多的特征變量和過少的數據集。如下圖右。
過擬合帶來的效果就是,雖然可以完美的擬合現有的數據集,但是在預測新數據方面卻表現的不盡如人意。所以最適合的還是中間的方式。
當然上面是線性回歸的過擬合問題,邏輯回歸中也存在這樣的問題,就以多項式理解,階數越高,擬合程度越好,但是預測方面就表現的很差。那么如何解決這些問題呢?這里就要引入“正則化”的概念!
2、代價函數正則化
以第一個問題中的線性回歸過擬合為例,我們應該怎樣用正則化解決這個問題呢?我們知道如果讓高次項系數為0的話,我們就可以比較好的進行擬合。所以我們假設代價函數是,然后在求解代價函數J最小化的
過程中我們就會使Θ3、Θ4盡可能的小,這樣的話高次項就趨于0,就能很好的解決這個問題。這就給了我們正則化算法的啟示。
我們在代價函數J后面加入一個正則項,代價函數就變為,其中λ為正則化參數。需要注意的是,這里的正則項Θ的Θj是從j=1開始到j=n為止,而不包括Θ0,雖然加與不加Θ0的結果相差不大,但是按照慣例一般Θ0單獨考慮。所以我們在使用梯度算法的時候Θ0的參數更新要與其他Θj分開考慮。
這里需要強調的一點是,正則化參數的選擇非常重要,如果λ過大,那么就會使得Θj(j=1,2,3...n)都基本趨于0,也就是只剩下hθ(x)=θ0,就如下圖的情況,這樣就變成了欠擬合的問題(Too big lamda),而當λ選擇合適的話,過擬合的曲線(Unregulated)就會變成良好的Regulated
3、正則化線性回歸
正則化線性回歸的代價函數J為,在使用梯度下降法之前需要對J進行偏導,,然后帶入梯度下降法得到:,之前說過這里Θ0的參數更新要與其他Θj分開考慮的原因。對θj進行調整得到,這個式子是不是很熟悉?跟之前的梯度下降法參數更新公式很像,區別只是θj變成了θj(1-α*(λ/m)),這里1-α*(λ/m)就是一個小于1的常數,可能是0.99或0.98.這里可以看出正則化線性回歸的梯度下降算法的變化在于,每次都在原有的更新規則的基礎上令θ額外減去一個值。
之前我們說的線性回歸還有一種正規方程解法,我們同樣可以對線性回歸正規方程進行正則化,方法為
X = [(x(0))T ? ?(x(1))T ? ?(x(2))T ? ?... ? ?(x(n))T]T,y=[y(1) ? ?y(2) ? ?y(3) ? ?... ? ?y(m)]T,X是m*(n+1)維矩陣,y為m*1維矩陣
圖中矩陣的尺寸為(n+1)*(n+1)
4、正則化邏輯回歸
代價函數為,用梯度下降法進行參數更新得到的方程為:
這里雖然形式跟線性回歸的梯度下降法一樣,但是由于hθ(x)的不同,所以兩者還是有很大差別
?
?
?
?
?
?
?
?
?
?
轉載于:https://www.cnblogs.com/kl2blog/p/7712210.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的斯坦福2014机器学习笔记五----正则化的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 201421440008网络攻防实验三
- 下一篇: 百度定位sdk使用说明