欠擬合與過擬合概念


欠擬合與過擬合概念

  1. 欠擬合與過擬合概念

3-1 欠擬合與過擬合概念演示

通常,你選擇讓交給學習算法處理的特征的方式對算法的工作過程有很大影響。如圖3-1中左圖所示,采用了y = θ0 + θ1x的假設來建立模型,我們發現較少的特征並不能很好的擬合數據,這種情況稱之為欠擬合(underfitting)。而如果我們采用了y = θ0 + θ1x+ θ2x2的假設來建立模型,發現能夠非常好的擬合數據(如中圖所示);此外,如果我們采用了y = θ0 + θ1x+ θ2x2+ θ3x3 + θ4x4 + θ5x5,發現較多的特征導致了所有的訓練數據都被完美的擬合上了,這種情況稱之為過擬合(overfitting)

這里,我們稍微談一下過擬合問題,過擬合的標准定義(來自Mitchell的機器學習)標准定義:給定一個假設空間H,一個假設h屬於H,如果存在其他的假設h'屬於H,使得在訓練樣例上h的錯誤率比h'小,但在整個實例分布上h'h的錯誤率小,那么就說假設h過度擬合訓練數據。過擬合問題往往是由於訓練數據少(無法覆蓋所有的特征學習,換句話也可以認為是特征太多)等原因造成的。在以后的課程會具體講解。

對於此類學習問題,一般使用特征選擇算法(有一講專門講)或非參數學習算法,下面將要降到的局部加權線性回歸就是屬於該方法,以此緩解對於特征選取的需求。

 

  1. 局部加權線性回歸

局部加權線性回歸(locally weighted linear regression)屬於非參數學習算法的一種,也稱作Loess

對於原始的回歸分析,我們基本的算法思想是:

1) 尋找合適的θ使得最小;2) 預測輸出

而對於局部加權線性回歸算法的基本思想是:

1) 尋找合適的θ使得最小;2) 預測輸出

這里,局部加權線性回歸與原始回歸分析不同在於,多了權重wi,該值是正的。對於特點的點,如果權重w較大,那么我們選擇合適的θ使得最小;如果權重w較小,那么誤差的平方方在擬合過程中將會被忽略掉。換言之,對於局部加權回歸,當要處理x時,會檢查數據集合,並且只考慮位於x周圍的固定區域內的數據點(較遠點不影響因權重較低而被忽略),對這個區域內的點做線性回歸,擬合出一條直線,根據這條擬合直線對x的輸出,作為算法返回的結果。

一個標准的且常用的權重選擇如下:

wi = exp(-)

需要注意,這里的x是我們要預測的輸入,而xi是訓練樣本數據。從公式看,離x越近的點,權重越大,而這里的權重公式雖然與高斯分布很像,但是沒有任何關系,當然用戶可以選擇不同的函數作為權重函數。而τ決定了各個點權重隨距離下降的速度,稱之為波長。τ越大,即波長越大,權重下降速度越慢。如何選擇合適的τ值,將會在模型選擇一講講述。另外需要注意的是,如果x是多維特征數據的時候,那么權重是多維特征參與計算后的結果(結果為一維),即w(i) = exp(−(x(i)−x)T (x(i)−x)/())(i表示樣本下標,j表示特征下標)

參數學習算法(parametric learning algorithm)定義:參數學習算法是一類有固定數目參數,以用來進行數據擬合的算法。設該固定的參數集合為。線性回歸即使參數學習算法的一個例子。非參數學習算法(Non-parametric learning algorithm)定義:一個參數數量會隨m(訓練集大小)增長的算法。通常定義為參數數量雖m線性增長。換句話說,就是算法所需要的東西會隨着訓練集合線性增長,算法的維持是基於整個訓練集合的,即使是在學習以后。

由於每次進行預測都要根據訓練集擬合曲線,如果訓練樣本非常大,那么該方法可能是代價較大,可以參考Andrew MooreKD-tree方法來思考解決。此外,局部加權線性回歸依舊無法避免欠擬合和過擬合的問題。

 

  1. 回歸模型的概率解釋

對於回歸問題,我們不禁要問為什么線性回歸或者說為什么最小均方法是一個合理的選擇呢?這里我們通過一系列的概率假設給出一個解釋。

首先,我們假設預測值y與輸入變量滿足如下方程:

y(i) = θT*x(i)+ ε(i)

其中ε(i)表示由於各種未考慮的因素造成的殘差或者噪音等,我們進一步假設ε(i)獨立同分布(誤差項彼此之間是獨立的,並且他們服從均值和方差相同的高斯分布),服從均值為0,方差為δ2的正態分布,即ε(i) (0, δ2)(為什么如此假設呢?一個是便於數學計算,另一個是可以通過中心極限定理等證明該殘差服從正態分布)具體表示為:

p(ε(i)) =

代入之后如下:

p(y(i)|x(i); θ) =

這里的θ不是隨機變量,而是具體的值。p(y(i)|x(i); θ),表示對於給定的x(i)θy(i)出現的概率。那么對於一組y的話,可以表示為p(|X; θ),這就相當於θ的似然性。(注意似然性與概率性不同,概率用於在已知一些參數的情況下,預測接下來的觀測所得到的結果,而似然性則是用於在已知某些觀測所得到的結果時,對有關事物的性質的參數進行估計。那么參數θ的似然函數如下:

L(θ) = L(θ;X, ) = p(|X; θ)

根據以上的假設和分析,我們得到:

L(θ)     =

        =

對於該似然函數,我們已知了x,y,需要找一個合適且合理的方法求取θ。最大似然法則告訴我們選擇的θ應該是L(θ)最大。實際意義,選擇參數使數據出現的可能性盡可能的大(讓發生的事情概率最大化)。為了方便計算,我們通常對似然函數求取對數,將乘機項轉化成求和。化簡如下(注意本文中log的含義表示取自然對數,而不是取10為底對數)

ℓ(θ)     = log(L(θ))

        = log()

        =

        =m*log() -

對於上式,最大化似然函數L(θ)就相當於最小化,即J(θ)

總結而言,對於數據作出概率假設之后,最小二乘回歸方法相當於最大化θ的似然函數。通過概率假設,我們驗證該方法的合理性,然而這些概率假設對於最小二乘法的合理性卻並不是必要的,當然確實有其他的更自然的假設能夠證明最小二乘法的合理性。

需要注意的是,對於上面的討論,最終的θ選擇並不依賴於(我們假設的誤差俯沖的分布方差)盡管值並不知道。當討論到指數族和廣義線性回歸的時候,我們還會提到這些。

注意:我們用到的假設,第一殘差項獨立同分布且分布均值為0,樣本之間相互獨立,此外,要想有結果需要輸入特征不存在多重共線性,即輸入特征是滿秩矩陣。

  1. Logistic回歸模型

在以上的討論中,主要是關於回歸問題。借來下,我們討論分類問題,與回歸問題很類似,不過待預測的y不是連續變量,而是有限的離散變量。這里,我們主要討論二元分類,即預測的結果只有是否或者對錯之類,習慣用01表示,其中0表示否定(negative)的結果,1表示肯定(positive)的結果。對於給定的輸入Xy也被稱之為標簽(label)

針對分類問題,我們可以暫時忽略y的離散性,而采用回歸分析的方法進行分析。然而,我們很容易發現回歸分析效果很差,尤其是不好解釋預測值不等於{0,1}的情況。為此,我們需要更改我們假設:

hθ(x) = g() = 這里的g(z) = ,被稱之為logistic函數或sigmoid函數。函數圖形如下:

z趨近於無窮大的時候,g(z)趨近於1,當z趨近於無窮小的時候,g(z)趨近於0。這里需要注意的是:我們仍然設定截距x0=1, = θ0 + 。此外,對於g(z)的導數g' (z) : g'(z) = g(z)*(1-g(z))。因此,對於使用logistic函數作為假設H的模型,我們同樣采用假設和使用最小二乘法來最大化參數的最大似然函數。

我們假設:P(y=1 | x;θ) = hθ(x) P(y=0 | x;θ) = 1- hθ(x) 該假設可以歸結為:

    p(y | x;θ) = (hθ(x))y* (1- hθ(x))(1-y)

那么最大似然函數如下:

取對數優化后:

同樣,我們采用梯度下降法來迭代求取參數值,即按照θj := θj− α*方式跟新參數值。

在推導過程中,我們使用g'(z)=g(z)*(1-g(z))該特性。最終的更新結果如下:

對比LMS算法中更新參數的方法,與logistic回歸法更新權重的一樣。唯一不同的在於假設hθ(x),這個時候的假設是非線性的。當我們將到廣義線性回歸的時候,我們再來看是不是所有的算法夠可以歸結到這樣的更新方式呢?

  1. 感知器學習模型

logistic方法中,g(z)會生成[0,1]之間的小數,但如何是g(z)只生成01?這里我們重新定義g(z)函數如下:

之后,我們同樣假設hθ(x) = g() ,按照之前的方法(梯度下降法)我們將會同樣得到參數更新的方式為:θj := θj + α(y-h(xi))*xji ,該模型稱之為感知器學習算法(perceptron learning algorithm)

20世紀60年代,認為在神經網絡模型采用"感知器學習"算法的神經元是較為粗糙的,但是他仍然能很好的表達學習算法理論。雖然從公式外形上來看,感知器學習與logistic回歸和線性回歸差不多,但是我們很難賦予感知器預測值的概率解釋,或者使用最大似然估計推導出感知器模型。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM