標(biāo)簽:
機器學(xué)習(xí)
![]() 欠擬合與過擬合概念 本次課程大綱: 1、 局部加權(quán)回歸:線性回歸的變化版本 2、 概率解釋:另一種可能的對于線性回歸的解釋 3、 Logistic回歸:基于2的一個分類算法 4、 感知器算法:對于3的延伸,簡要講
復(fù)習(xí):
令
n為特征數(shù)量
定義成本函數(shù)J,定義為:
m為訓(xùn)練樣本 通過正規(guī)方程組推導(dǎo)的結(jié)論:
1、 過擬合與欠擬合
通常,你選擇交給學(xué)習(xí)算法處理的特征的方式對算法的工作過程有很大影響。
例:上次課的例子中,用x1表示房間大小。通過線性回歸,在橫軸為房間大小,縱軸為價格的圖中,畫出擬合曲線。回歸的曲線方程為:
若定義特征集合為:x1表示房子大小,x2表示房子大小的平方,使用相同的算法,擬合得到一個二次函數(shù),在圖中即為一個拋物線,即: 以此類推,若訓(xùn)練集有7個數(shù)據(jù),則可擬合出最高6次的多項式,可以找到一條完美的曲線,該曲線經(jīng)過每個數(shù)據(jù)點。但是這樣的模型又過于復(fù)雜,擬合結(jié)果僅僅反映了所給的特定數(shù)據(jù)的特質(zhì),不具有通過房屋大小來估計房價的普遍性。而線性回歸的結(jié)果可能無法捕獲所有訓(xùn)練集的信息。
所以,對于一個監(jiān)督學(xué)習(xí)模型來說,過小的特征集合使得模型過于簡單,過大的特征集合使得模型過于復(fù)雜。
對于特征集過小的情況,稱之為欠擬合(underfitting); 對于特征集過大的情況,稱之為過擬合(overfitting)
解決此類學(xué)習(xí)問題的方法: 1) 特征選擇算法:一類自動化算法,在這類回歸問題中選擇用到的特征 2) 非參數(shù)學(xué)習(xí)算法:緩解對于選取特征的需求,引出局部加權(quán)回歸
參數(shù)學(xué)習(xí)算法(parametric learning algorithm)
定義:參數(shù)學(xué)習(xí)算法是一類有固定數(shù)目參數(shù),以用來進行數(shù)據(jù)擬合的算法。設(shè)該固定的參數(shù)集合為
非參數(shù)學(xué)習(xí)算法(Non-parametric learning algorithm) 定義:一個參數(shù)數(shù)量會隨m(訓(xùn)練集大?。┰鲩L的算法。通常定義為參數(shù)數(shù)量雖m線性增長。換句話說,就是算法所需要的東西會隨著訓(xùn)練集合線性增長,算法的維持是基于整個訓(xùn)練集合的,即使是在學(xué)習(xí)以后。
2、 局部加權(quán)回歸(Locally Weighted Regression) 一種特定的非參數(shù)學(xué)習(xí)算法。也稱作Loess。
算法思想: 假設(shè)對于一個確定的查詢點x,在x處對你的假設(shè)h(x)求值。
對于線性回歸,步驟如下:
1) 擬合出
2) 返回
對于局部加權(quán)回歸,當(dāng)要處理x時: 1) 檢查數(shù)據(jù)集合,并且只考慮位于x周圍的固定區(qū)域內(nèi)的數(shù)據(jù)點 2) 對這個區(qū)域內(nèi)的點做線性回歸,擬合出一條直線 3) 根據(jù)這條擬合直線對x的輸出,作為算法返回的結(jié)果
用數(shù)學(xué)語言描述即:
1) 擬合出 2) w為權(quán)值,有很多可能的選擇,比如:
- 其意義在于,所選取的x(i)越接近x,相應(yīng)的w(i)越接近1;x(i)越遠離x,w(i)越接近0。直觀的說,就是離得近的點權(quán)值大,離得遠的點權(quán)值小。 - 這個衰減函數(shù)比較具有普遍意義,雖然它的曲線是鐘形的,但不是高斯分布。
-
3) 返回
總結(jié):對于局部加權(quán)回歸,每進行一次預(yù)測,都要重新擬合一條曲線。但如果沿著x軸對每個點都進行同樣的操作,你會得到對于這個數(shù)據(jù)集的局部加權(quán)回歸預(yù)測結(jié)果,追蹤到一條非線性曲線。
*局部加權(quán)回歸的問題: 由于每次進行預(yù)測都要根據(jù)訓(xùn)練集擬合曲線,若訓(xùn)練集太大,每次進行預(yù)測的用到的訓(xùn)練集就會變得很大,有方法可以讓局部加權(quán)回歸對于大型數(shù)據(jù)集更高效,詳情參見Andrew Moore的關(guān)于KD-tree的工作。
3、 概率解釋
概率解釋所解決的問題: 在線性回歸中,為什么選擇最小二乘作為計算參數(shù)的指標(biāo),使得假設(shè)預(yù)測出的值和真正y值之間面積的平方最小化?
我們提供一組假設(shè),證明在這組假設(shè)下最小二乘是有意義的,但是這組假設(shè)不唯一,還有其他很多方法可以證明其有意義。
(1) 假設(shè)1:
假設(shè)輸入與輸出為線性函數(shù)關(guān)系,表示為:
其中,
假設(shè) 高斯分布的概率密度函數(shù):
根據(jù)上述兩式可得:
即,在給定了特征與參數(shù)之后,輸出是一個服從高斯分布的隨機變量,可描述為:
*為什么選取高斯分布? 1) 便于數(shù)學(xué)處理 2) 對絕大多數(shù)問題,如果使用了線性回歸模型,然后測量誤差分布,通常會發(fā)現(xiàn)誤差是高斯分布的。 3) 中心極限定律:若干獨立的隨機變量之和趨向于服從高斯分布。若誤差有多個因素導(dǎo)致,這些因素造成的效應(yīng)的總和接近服從高斯分布。
注意:
假設(shè)每個 為IID(independently and identically distributed)獨立同分布 即誤差項彼此之間是獨立的,并且他們服從均值和方差相同的高斯分布
(2) 假設(shè)2:
設(shè)
由于
(3) 假設(shè)3:
極大似然估計:選取
定義對數(shù)似然函數(shù)為
上式兩個加項,前一項為常數(shù)。所以,使似然函數(shù)最大,就是使后一項最小,即:
這一項就是之前的
注意:高斯分布的方差對最終結(jié)果沒有影響,由于方差一定為正數(shù),所以無論取什么值,最后結(jié)果都相同。這個性質(zhì)會在下節(jié)課講到。
4、 Logistic回歸
這是我們要學(xué)習(xí)的第一個分類算法。之前的回歸問題嘗試預(yù)測的變量y是連續(xù)變量,在這個分類算法中,變量y是離散的,y只取{0,1}兩個值。
一般這種離散二值分類問題用線性回歸效果不好。比如x<=3,y=0;x>3,y=1,那么當(dāng)x>3的樣本占得比例很大是,線性回歸的直線斜率就會越來越小,y=0.5時對應(yīng)的x判決點就會比3大,造成預(yù)測錯誤。
若y取值{0,1},首先改變假設(shè)的形式,使假設(shè)得到的值總在[0,1]之間,即: 所以,選取如下函數(shù):
其中:
g函數(shù)一般被稱為logistic函數(shù),圖像如下:
z很小時,g(z)趨于0,z很大時,g(z)趨于1,z=0時,g(z)=0.5
對假設(shè)的概率解釋: 假設(shè)給定x以為參數(shù)的y=1和y=0的概率:
可以簡寫成:
參數(shù)的似然性:
求對數(shù)似然性:
為了使似然性最大化,類似于線性回歸使用梯度下降的方法,求對數(shù)似然性對
因為求最大值,此時為梯度上升。 偏導(dǎo)數(shù)展開:
則:
即類似上節(jié)課的隨機梯度上升算法,形式上和線性回歸是相同的,只是符號相反,
5、 感知器算法
在logistic方法中,g(z)會生成[0,1]之間的小數(shù),但如何是g(z)只生成0或1? 所以,感知器算法將g(z)定義如下:
同樣令
盡管看起來和之前的學(xué)習(xí)算法類似,但感知器算法是一種非常簡便的學(xué)習(xí)算法,臨界值和輸出只能是0或1,是比logistic更簡單的算法。后續(xù)講到學(xué)習(xí)理論是,會將其作為基本的構(gòu)造步驟。 |
|