2016年8月23日 星期二

[學習筆記9] 機器學習基石 - Feasibility of Learning :: Connection to Learning

前面老師提到了從罐子裡抽取彈珠的例子

我們可以將它類比到機器學習領域的知識

如下圖呈現的

x是指手上有的彈珠,大寫的X則是指資料的集合

我們目前並不知道我們的假設模型 h(x) 與我們想要達成的目標 f(x)差距多少

先把資料抓出來之後,檢查看看手上的資料跟正不正確

假設的 h 跟 目標f 相符不相符

如果不符合,則把彈珠漆成橘色 (Label成橘色)

如果符合,則把彈珠漆成綠色 (Label成綠色)

並檢查 h 在 D 這組資料上的表現到底有多好

看看有幾筆 h(x) 跟 yn不相同

如果相符合的程度很

就可以用這個來預測未知的橘色彈珠的出現機率mu (下圖左邊第一行)

可以得到ㄧ個大概接近(PAC)的預測模型 

(但是別忘了,手上取樣的資料未必能夠代表其他尚未被取樣出來資料)


現在,我們開始把原本的模型變得更完備 (補充 : 讓我想到線性控制系統中的知識,我們可以用手邊目前得到資訊,設計ㄧ個估測器預測下ㄧ步系統的走向)

我們有ㄧ個未知的資料分佈機率 P(不需要知道),虛線的部分代表未知的部分

由P來衡量右上角的 "?"發生了什麼事情

從H裡面取ㄧ個h出來出來

透過我們手上有的資料來判斷h與f是否接近

所以這邊我們可以用我們手邊知道的事情 Ein (In-sample error)

來推估 Eout (Out-of-sample error)



換句話說,根據霍夫丁不等式,隨著取樣的N越大,Ein跟Eout的差距會越來越小

所以如果差距夠小的情況下(Q:到底怎樣才算小?),Ein可以代表Eout

所以不需要知道Eout,Ein就能夠進行預測



如果今天Ein很小,表示Error很小,那麼我們選的h效果會很不錯

剛剛前面的推論都是建立在同ㄧ個h上

而且如果都強迫選擇同一套h的話,學習的結果通常就不佳 

因為相當於常用同一套方法應付不同問題

有很大的可能,Ein會很大,那麼準確度就不好


當然,我們選完h之後,不是就沒事了

還要透過其他的驗證流程來確保這個假設模型 h 真的能成為適合的學習模型 g



沒有留言:

張貼留言

/* 載入prettify的autoloader */ /* 載入JQuery */