機器學習筆記 - 吳恩達 - 目錄
筆記
描述
正則化是什麼?
正則化是通過對假設函數附加一項正則化參數,來減小該項的擬合程度。
爲什麼要有正則化?
有的時候,爲了更好的擬合數據的情況,我們會在訓練時,添加高階項。但這會引發新的問題,如果訓練的足夠多,那會產生過擬合現象,這時候很難對測試數據有更好的泛化性。如果訓練的不夠,又會導致欠擬合情況,連訓練集都無法準確預測。
如何正則化?
爲了不過擬合,我們想要保持高階項的係數足夠小(又不想直接去除該項,因爲高階項或多或少有一定影響),引入一個懲罰項,稱爲正則化項,使得模型相對簡單。
爲何正則化能減小某一項的影響?
我們通過設置正則化參數λ,該值設得越大,就對其特徵θj懲罰程度越大,使其特徵θj的影響越小。
(這是由於,訓練時有正則化項,預測時沒有,所以θj的值小了,影響小了)
注:懲罰過大,可能出現欠擬合
關鍵點
(我們不對j=0對應的θ0作懲罰,因爲θ0項的x0=1,沒有必要懲罰)
線性迴歸的正則化:
代價函數:
J(θ)=2m1[i=1∑m(hθ(x(i))−yi)2+λj=1∑nθj2]
更新系數:
θ0:=θ0−αm1i=1∑m(hθ(x(i))−y(i))xj(i) (j=0)θj:=θj−α[m1i=1∑m(hθ(x(i))−y(i))xj(i)+mλθj]:=θj(1−λmλ)−αm1i=1∑m(hθ(x(i))−y(i))xj(i) (j=1,2,...,n)
(其中,λ∑j=1nθj2就是正則化參數regularization parameter)
邏輯迴歸的正則化:
代價函數:
J(θ)=−[m1i=1∑myiloghθ(x(i))+(1−yi)log(1−hθ(xi))]+2mλj=1∑nθj2
更新系數:
θ0:=θ0−αm1i=1∑m(hθ(x(i))−y(i))xj(i) (j=0)θj:=θj−α[m1i=1∑m(hθ(x(i))−y(i))xj(i)+mλθj] (j=1,2,3,...,n)
(其中,2m1λ∑j=1nθj2就是正則化參數regularization parameter)