機器學習 正則化 Regularization

2021-09-27 13:20:21 字數 908 閱讀 6113

正則化是指修改學習演算法,使其降低泛化誤差.

正則化是一種為了減小測試誤差的行為(有時候會增加訓練誤差)。

我們在構造機器學習模型時,最終目的是讓模型在面對新資料的時候,可以有很好的表現。當你用比較複雜的模型比如神經網路,去擬合資料時,很容易出現過擬合現象(訓練集表現很好,測試集表現較差),這會導致模型的泛化能力下降,這時候,我們就需要使用正則化,降低模型的複雜度。

在訓練過程中:

因為欠擬合和過擬合都不能良好的反應乙個模型應用新樣本的能力,因此需要找到辦法解決這個問題。

想要解決這個問題,有兩個辦法:

比如下面的曲線,針對高次項的引數,在後面多加一項乘以1000。這樣在優化損失函式的時候,會強制θ3和θ4不會很大,並且趨近於0,只有這樣才會保證損失函式的值足夠小。

得到的公式如下,注意只會針對x1開始,θ0相當於只是針對偏置項設定的,因此不需要加正則項。 

但是如果λ設定的過大,相當於所有的θ都變成了0,損失函式的曲線相當於一條直線,就沒有任何意義了,因此選擇適合的λ很重要,後面也會講解如何選擇正確的λ。

新增正則項之後,梯度下降的公式就發生了變化:

機器學習正則化

設p 1的實 數,p norm 定義為 x i 1 n xi p 1 p 1.1 這裡寫描述 如果方陣a是非奇異的,那麼a的conditio nnumber定義為 a a a 1 condition number是乙個矩陣穩定性或者敏感度的度量。矩陣的condition number在1附近,那麼它...

機器學習 正則化

為了增加模型的泛化能力,避免模型出現過擬合的現象,我們經常會加入正則化處理 當模型偏差較低,但是方差很大,尤其在輸入的維數較高時,很容易出現過擬合現象,當加入正則項,模型損失了一部分偏差,卻大大降低了模型的方差 l1和l2正則是我們經常用到的方法。l1正則 這種方法的結果會讓引數向量中許多元素趨於0...

機器學習正則化

正則化項可以是模型引數向量的範數 首先,範數是指推廣到高維空間中的模,給定向量x x1,x2,x3,xn 常用的向量的範數如下 l0範數 向量非零元素的個數 l1範數 向量各個元素絕對值之和 l2範數 向量各個元素的平方和然後求平方根 lp範數 向量各個元素絕對值的p次方求和然後求1 p次方 l正則...