機器學習基石16:三個重要原則(Three Learning Principles)

本節介紹了機器學習中三個重要原則,包括奧卡姆剃刀原理,樣本偏差,數據窺探;並對16課程所學知識進行了總結。


系列文章

機器學習基石01:機器學習簡介
機器學習基石02:感知器算法(Perceptron Algorithm)
機器學習基石03:機器學習的類型(Types of ML)
機器學習基石04:機器學習的可行性(Feasibility of ML)
機器學習基石05:訓練與測試(Training versus Testing)
機器學習基石06:泛化理論(Theory of Generalization)
機器學習基石07:VC維(The VC Dimension)
機器學習基石08:噪聲和誤差(Noise and Error)
機器學習基石09:線性迴歸(Linear Regression)
機器學習基石10:邏輯迴歸(Logistic Regression)
機器學習基石11:線性模型分類(Linear Models for Classification)
機器學習基石12:非線性變換(Nonlinear Transformation)
機器學習基石13:過擬合風險(Hazard of Overfitting)
機器學習基石14:正則化(Regularization)
機器學習基石15:交叉驗證(Cross Validation)
機器學習基石16:三個重要原則(Three Learning Principles)



16. Three Learning Principles

16.1 Occam’s Razor

entia non sunt multiplicanda praeter necessitatem(entities must not be multiplied beyond necessity) – William of Occam (1287-1347)

這邊是奧卡姆剃刀原理(Occam’s razor)的出處。一句話總結:“如無必要,勿增實體。”

機器學習中 奧卡姆剃刀原理 的意思是 應儘可能選擇簡單的模型進行設計。

看一個模型選擇例子:
在這裏插入圖片描述

左邊的模型雖然可能有分錯的情況,但模型簡單,滿足需求;右邊的模型雖然都分類正確,但過於複雜。依據奧卡姆剃刀原理,選擇左邊的模型作爲設計的模型。考慮以下兩個問題:

  • 簡單模型中的“簡單”是如何界定的?
  • 爲什麼簡單模型比複雜模型要好?(奧卡姆剃刀原理爲什麼在機器學習中適用?)

先看第一個問題:簡單模型中的“簡單”是如何界定的?
在這裏插入圖片描述
由上圖可知,“簡單”有兩個方面:

  • 對於單個假設函數 hh 來說,參數越少意味着越簡單。如上圖中左邊的分類超平面只用圓心和半徑就能表達,因此參數很少,這就是“簡單”的,而右邊的超平面則過於複雜,包含很多高次項,參數量很多,因此並不“簡單”;
  • 對於假設空間 HH 來說,有效假設的數量越少意味着越簡單。

二者是密切相關的,一個假設空間 HH 中的假設函數 hh 的數量 H=2l|H| = 2^l;如果假設空間 HH 中的模型複雜度 Ω(H)\Omega(H) 很小,則假設函數的模型複雜度 Ω(h)\Omega(h) 也會很小。

接下來,看第二個問題:爲什麼簡單模型比複雜模型要好?

假設一個數據集的規律性很差,如樣本的標記都是隨便標記的,此種情況,很少有甚至沒有假設函數能使得該樣本的 Ein0E_{in} \approx 0 。如果一個數據集能被某個模型分開,則該數據集的規律性不會特別差。在使用簡單模型將數據大致分開時,則可以確定該數據集是具有某種規律性的;如果用複雜模型將某數據集分開,則無法確定是數據集具有規律性還是模型足夠複雜將數據集分開。因此,在實際應用中,應該儘量先選擇簡單模型,例如最簡單的線性模型。


習題1:
在這裏插入圖片描述


16.2 Sampling Bias

用一個例子說明:1948年美國總統大選的兩位熱門候選人是Truman和Dewey。一家報紙通過電話採訪,統計人們把選票投給了Truman還是Dewey。經過大量的電話統計顯示,投給Dewey的票數要比投個Truman的票數多,所以這家報紙就在選舉結果還沒公佈之前,信誓旦旦地發表了“Dewey Defeats Truman”的報紙頭版,但結果卻是Truman贏得了大選的勝利。

爲什麼會出現跟電話統計完全相反的結果呢?因爲當時電話比較貴,有電話的家庭比較少,而有電話的人大多都支持Dewey,沒有電話的人大多都支持Truman。也就是說樣本選擇偏向於有錢人那邊,不具有廣泛的代表性,才造成Dewey支持率更多的假象。

這個例子表明,抽樣的樣本會影響到結果,用一句話表示:如果抽樣有偏差,則學習的結果也會產生偏差。這種情形稱爲 抽樣偏差(Sampling Bias)。從技術上來說,就是訓練數據和驗證數據要服從同一個分佈,最好都是獨立同分布的,這樣訓練得到的模型才具有代表性。


習題2:
在這裏插入圖片描述


16.3 Data Snooping

之前提到過,在選擇模型時,應該儘量避免數據偷窺(Data Snooping),因爲這樣會人爲地傾向於某種模型,而不是根據數據進行隨機選擇。所以應該自由選取,最好不要偷窺原始數據。在使用數據的任何過程中,都算是間接地偷窺了數據,然後在進行模型的選擇或者決策的時候,就會增加模型複雜度(model complexity),也就是引入了污染。下面舉例說明。

假如有8年的貨幣交易數據,希望通過這些數據來預測貨幣的走勢。前6年數據作爲訓練數據,後2年數據作爲測試數據訓練模型。輸入20天的數據,預測第21天的貨比交易情況。
在這裏插入圖片描述
上圖中,紅線表示使用8年的數據建立模型預測後兩年的收益情況;藍線表示使用前6年的數據建立模型預測後兩年的收益情況。

由圖中曲線可知,使用8年數據進行訓練的模型對後2年的預測的收益更大,似乎效果更好。但是這是一種自欺欺人的做法,因爲訓練的時候已經使用了後2年的數據,用這樣的模型再來預測後2年的走勢是不科學的。這種做法屬於間接偷窺數據。

在機器學習過程中,避免“偷窺數據”非常重要,但完全避免很困難。實際操作中,有一些方法可以輔助避免偷窺數據。

  • “看不見”數據。在選擇模型的時候,儘量用經驗和知識做選擇,而不是通過數據選擇。先選模型,再看數據。
  • 保持懷疑。時刻保持對別人的論文或者研究成果保持警惕與懷疑,要通過自己的研究與測試來進行模型選擇,這樣才能得到比較正確的結論。

在這裏插入圖片描述


習題3:
在這裏插入圖片描述


16.4 Power of Three

本部分是對機器學習基石系列課程(16節課程,每節4小節)的總結,課程介紹的內容都與數字“3”有關,小節題目因此得名。

本課程介紹了機器學習的如下內容:

三個應用領域

在這裏插入圖片描述

  • 數據挖掘(Data Mining)
  • 人工智能(Artificial Intelligence)
  • 數理統計(Statistics)

三個約束理論

  • 霍夫丁不等式(Hoeffding)
  • 多箱霍夫丁不等式(Multi-Bin Hoeffding)
  • VC 限制理論

在這裏插入圖片描述


三個線性模型

  • 線性感知器算法/pocket算法(PLA/pocket )
  • 線性迴歸(linear regression)
  • 邏輯迴歸(logistic regression)

在這裏插入圖片描述


三個關鍵工具

  • 特徵變換(Feature Transform)
  • 正則化項(Regularization)
  • 交叉驗證(Cross Validation)

在這裏插入圖片描述


三個重要原則

  • 奧卡姆剃刀原理(Occam’s Razer)
  • 樣本偏差(Sampling Bias)
  • 數據偷窺(Data Snooping)

在這裏插入圖片描述


三項未來工作

在這裏插入圖片描述


林軒田老師的機器學習基石課程筆記至此整理完結。

接下來會繼續學習整理林老師的機器學習技法課程相關筆記。


參考:
https://www.cnblogs.com/ymingjingr/p/4306666.html
https://github.com/RedstoneWill/HsuanTienLin_MachineLearning

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章