上一節課,我們主要介紹了VC Dimension的概念。如果Hypotheses set的VC Dimension是有限的,且有足夠多N的資料,同時能夠找到一個hypothesis使它的Ein≈0E_{in}\approx 0,那麼就能說明機器學習是可行的。本節課主要講了資料集有Noise的情況下,是否能夠進行機器學習,并且介紹了假設空間H下演算法A的Error估計。
上節課推導VC Dimension的資料集是在沒有Noise的情況下,本節課讨論如果資料集本身存在Noise,那VC Dimension的推導是否還成立呢?
首先,Data Sets的Noise一般有三種情況:
由于人為因素,正類被誤分為負類,或者負類被誤分為正類;
同樣特征的樣本被模型分為不同的類;
樣本的特征被錯誤記錄和使用。

之前的資料集是确定的,即沒有Noise的,我們稱之為Deterministic。現在有Noise了,也就是說在某點處不再是确定分布,而是機率分布了,即對每個(x,y)出現的機率是P(y|x)。
因為Noise的存在,比如在x點,有0.7的機率y=1,有0.3的機率y=0,即y是按照P(y|x)分布的。數學上可以證明如果資料集按照P(y|x)機率分布且是iid的,那麼以前證明機器可以學習的方法依然奏效,VC Dimension有限即可推斷E{in}和E{out}是近似的。
P(y|x)稱之為目标分布(Target Distribution)。它實際上告訴我們最好的選擇是什麼,同時伴随着多少noise。其實,沒有noise的資料仍然可以看成“特殊”的P(y|x)機率分布,即機率僅是1和0.對于以前确定的資料集: P(y|x)=1,for \space y=f(x) P(y|x)=0,for \space y\neq f(x)
在引入noise的情況下,新的學習流程圖如下所示:
機器學習需要考慮的問題是找出的矩g與目标函數f有多相近,我們一直使用E_{out}進行誤差的估計,那一般的錯誤測量有哪些形式呢?
我們介紹的矩g對錯誤的衡量有三個特性:
out-of-sample:樣本外的未知資料
pointwise:對每個資料點x進行測試
classification:看prediction與target是否一緻,classification error通常稱為0/1 error
PointWise error實際上就是對資料集的每個點計算錯誤并計算平均,E{in}和E{out}的pointwise error的表達式為:
pointwise error是機器學習中最常用也是最簡單的一種錯誤衡量方式,未來課程中,我們主要考慮這種方式。pointwise error一般可以分成兩類:0/1 error和squared error。0/1 error通常用在分類(classification)問題上,而squared error通常用在回歸(regression)問題上。
Ideal Mini-Target由P(y|x)和err共同決定,0/1 error和squared error的Ideal Mini-Target計算方法不一樣。例如下面這個例子,分别用0/1 error和squared error來估計最理想的mini-target是多少。0/1 error中的mini-target是取P(y|x)最大的那個類,而squared error中的mini-target是取所有類的權重平方和。
有了錯誤衡量,就會知道目前的矩g是好還是不好,并會讓演算法不斷修正,得到更好的矩g,進而使得g與目标函數更接近。是以,引入error measure後,學習流程圖如下所示:
Error有兩種:false accept和false reject。false accept意思是誤把負類當成正類,false reject是誤把正類當成負類。 根據不同的機器學習問題,false accept和false reject應該有不同的權重,這根實際情況是符合的,比如是超市優惠,那麼false reject應該設的大一些;如果是安保系統,那麼false accept應該設的大一些。
機器學習演算法A的cost function error估計有多種方法,真實的err一般難以計算,常用的方法可以采用plausible或者friendly,根據具體情況而定。
引入algorithm error measure之後,學習流程圖如下:
實際上,機器學習的Cost Function即來自于這些error,也就是算法裡面的疊代的目标函數,通過優化使得Error(Ein)不斷變小。 cost function中,false accept和false reject賦予不同的權重,在演算法中展現。對不同權重的錯誤懲罰,可以選用virtual copying的方法。
本節課主要講了在有Noise的情況下,即資料集按照P(y|x)機率分布,那麼VC Dimension仍然成立,機器學習算法推導仍然有效。機器學習cost function常用的Error有0/1 error和squared error兩類。實際問題中,對false accept和false reject應該選擇不同的權重。
注明:
文章中所有的圖檔均來自中國台灣大學林軒田《機器學習基石》課程。