1. 程式人生 > >有監督迴歸:約束條件下的最小二乘法

有監督迴歸:約束條件下的最小二乘法

1.前言

前面介紹的最小二乘學習法,是眾多機器學習演算法中極為重要的一種基礎演算法。但是,單純的最小二乘法對於包含噪聲的學習過程經常有過擬合的弱點。如下圖所示:


這往往是由於學習模型對於訓練樣本而言過於複雜。因此,本篇部落格將介紹能夠控制模型複雜程度的帶有約束條件的最小二乘學習法。

2.部分空間約束的最小二乘學習法

在有引數線性模型:


的一般最小二乘學習法中,因為引數{Θj}j=1->b可以自由設定,使用的是如下圖所示的全體引數空間:


本篇部落格中將要介紹的部分空間約束的最小二乘法,則是通過把引數空間限制在一定範圍內,來防止過擬合現象。


在這裡,P是滿足P^2=P和P’=P的b*b維矩陣,表示的是矩陣P的值域R(P)的正交投影矩陣。如下圖所示:


通過附加PΘ=Θ這樣得約束條件,引數Θ就不會便宜到值域R(P)的範圍外了。

部分統建約束的最小二乘學習法的解Θ’,一般通過將最小二乘學習的設計矩陣Φ置換為ΦP的方式求得的:


對於引言中的例子,如果我們採用了部分空間約束的最小二乘學習法,可以得到如下圖所示:


雖然和引言部分使用了同一組資料,但是我在這裡添加了一個條件進行約束,將及函式引數限制在cos(2.5x)和sin(2.5x)之內。

通過上面結果,我們也能看到,過擬合現象得到了一定的減輕。

注意:正交矩陣P通常是手動進行設定的,利用的是主成分分析法,正交投影矩陣P也可以基於資料進行設定

3.L2約束的最小二乘學習法

部分空間約束的最小二乘學習法中,只是用了引數空間的一部分,但是由於正交投影矩陣P的設定有很大的自由度,因此在實際中操作起來是有很大難度的。還有一種很不錯的方法值得參考——L2約束的最小二乘學習法。


如下圖所示:


L2約束的最小二乘學習法的引數空間

L2約束的最小二乘學習法十一引數空間的原點為圓心,在一定半徑範圍的圓內(大部分是超球)進行求解。R表示的就是圓的半徑。

3.1 拉格朗日對偶問題


3.2 拉格朗日對偶問題求解


這裡之所以把朗格朗日待定因子λ變為λ/2,是為了樂曲計算域Θ相關的偏微分時產生的2。拉格朗日對偶問題的待定因子λ的解由圓的半徑決定。如果不根據半徑R來決定λ,而是直接指定的話,L2約束的最小二乘學習法的解Θ’就可以通過下式求得:


上式的第一項Jls(Θ)表示的是對訓練樣本的擬合程度,通過與第二項的“約束”相結合,來防止對訓練樣本的過擬合。

方法:對上述目標函式進行關於Θ的偏微分,並設為零,即可求得最小的訓練損失

L2約束的最小二乘學習法的解為:


在這裡,I是單位矩陣,在L2約束的最小二乘學習法中,通過將矩陣Φ'Φ和λI相加提高其正則性,進而就可以更穩定地進行逆矩陣求解。因此,L2約束的最小二乘學習法也稱為L2正則化的最小二乘學習法,其實我們剛才講的“約束”項正是正則項,λ為正則化引數。

3.3 設計矩陣的奇異值求解

如果考慮設計矩陣Φ的奇異值求解:


L2約束的最小二乘學習法的解Θ’就可以像下式這樣表示:


當λ=0時,L2約束的最小二乘學習法就與一般的最小二乘法相同。當設計矩陣Φ的計算條件很惡劣,比如包含非常小的奇異值Kk的時候,Kk/(Kk^2+λ)就會變成非常大的數值,訓練輸出向量y包含的噪聲就會有所增加。另一方面,在L2約束的最小二乘學習法中,通過在分母的Kk^2中加入徵得常數λ,使的Kk/(Kk^2+λ)避免變得過大,進而就可以達到防止過擬合的目的。

3.4 平移到高斯核模型

同理,對於下面的高斯核模型:


執行L2約束的最小二乘學習法的例項如下所示:


在這個例子裡,頻寬h設為0.3,正則化引數λ為0.1。通過加入正則項,使得過擬合現象得到很好地抑制。

4.模型選擇與總結

4.1 總結

本篇文章,通過使用部分空間約束的最小二乘學習法或L2約束的最小二乘學習法,使得最小二乘學習過程中的過擬合現象得到了一定成都的緩和。

但是,我們不得不承認,這些方法都過分依賴於正交投影矩陣P和正則化引數λ的選擇,在一定策劃給你堵上制約了這些方法的實際應用。因此,為了使有約束條件的最小二乘學習法能夠得到最好的結果,選擇合適的P和λ至關重要。

另外,使用線性模型時,基函式的種類和數量的選擇,以及使用核模型時核函式的種類等選擇,也都需要進行優化。

對於高斯核的頻寬和正則引數λ對學習結果的影響如下圖所示:


4.2 模型選擇

實際應用中,最常用到的是“交叉驗證法”。

在交叉驗證法中,把訓練樣本的一部分拿出來做為測試樣本,不將其用來學習,而只用於評價最終學習結果的泛化誤差。

具體而言就是按照下圖的流程進行泛化誤差的評價,通過運用交叉驗證法,可以對繁華誤差晶型較為精確地評估。


交叉驗證法


交叉驗證法的演算法流程

4.3 交叉驗證法的例項

同樣,我們還是來研究高斯核模型:


頻寬h∈{0.03,0.3,3};正則化引數λ∈{0.0001,0.1,100};分割的幾何數m=5。

實驗結果如下圖所示:


交叉驗證試驗

結論:(h,λ)=(0.3,0.1)時,誤差達到最小值。