上節課,我們主要介紹了根據不同的設定,機器學習可以分爲不同的類型。其中,監督式學習中的二元分類和迴歸分析是最常見的也是最重要的機器學習問題。本節課,我們將介紹機器學習的可行性,討論問題是否可以使用機器學習來解決。
一、Learning is Impossible
首先,考慮這樣一個例子,如下圖所示,有 3 個 label 爲 -1 的九宮格和 3 個 label 爲 +1 的九宮格。根據這 6 個樣本,提取相應 label 下的特徵,預測右邊九宮格是屬於 -1 還是 +1 ?結果是,如果依據對稱性,我們會把它歸爲 +1 ;如果依據九宮格左上角是否是黑色,我們會把它歸爲 -1。除此之外,還有根據其它不同特徵進行分類,得到不同結果的情況。而且,這些分類結果貌似都是正確合理的,因爲對於 6 個訓練樣本來說,我們選擇的模型都有很好的分類效果。
再來看一個比較數學化的二分類例子,輸入特徵 x 是二進制的、三維的,對應有 8 種輸入,其中訓練樣本 有5個。那麼,根據訓練樣本對應的輸出 y ,假設有 8 個hypothesis,這 8 個 hypothesis 在 D 上,對 5 個訓練樣本的分類效果都完全正確。但是在另外3個測試數據上,不同的 hypothesis 表現有好有壞。在已知數據 上,;但是在D以外的未知數據上,不一定成立。而機器學習目的,恰恰是希望我們選擇的模型能在未知數據上的預測與真實結果是一致的,而不是在已知的數據集D上尋求最佳效果。
這個例子告訴我們,我們想要在 以外的數據中更接近目標函數似乎是做不到的,只能保證對 有很好的分類結果。機器學習的這種特性被稱爲沒有免費午餐(No Free Lunch)定理。NFL 定理表明沒有一個學習算法可以在任何領域總是產生最準確的學習器。不管採用何種學習算法,至少存在一個目標函數,能夠使得隨機猜測算法是更好的算法。平常所說的一個學習算法比另一個算法更“優越”,效果更好,只是針對特定的問題,特定的先驗信息,數據的分佈,訓練樣本的數目,代價或獎勵函數等。從這個例子來看, NFL 說明了無法保證一個機器學習算法在 以外的數據集上一定能分類或預測正確,除非加上一些假設條件,我們以後會介紹。
二、Probability to the Rescue
從上一節得出的結論是:在訓練集 以外的樣本上,機器學習的模型是很難,甚至似乎做不到正確預測或分類的。那是否有一些工具或者方法能夠對未知的目標函數 f 做一些推論,讓我們的機器學習模型能夠變得有用呢?
如果有一個裝有很多(數量很大數不過來)橙色球和綠色球的罐子,我們能不能推斷橙色球的比例 ?統計學上的做法是,從罐子中隨機取出 N 個球,作爲樣本,計算這 N 個球中橙色球的比例 v,那麼就估計出罐子中橙色球的比例約爲 v。
這種隨機抽取的做法能否說明罐子裏橙色球的比例一定是 呢?答案是否定的。但是從概率的角度來說,樣本中的 很有可能接近我們未知的 。下面從數學推導的角度來看 與 是否相近。
已知 是罐子裏橙色球的比例, 是 N 個抽取的樣本中橙色球的比例。當 N 足夠大的時候, 接近於 。這就是 Hoeffding’s inequality:
Hoeffding 不等式說明當 N 很大的時候, 與 相差不會很大,它們之間的差值被限定在 之內。我們把結論 稱爲probably approximately correct(PAC)。
三、Connection to Learning
下面,我們將罐子的內容對應到機器學習的概念上來。機器學習中 hypothesis 與目標函數相等的可能性,類比於罐子中橙色球的概率問題;罐子裏的一顆顆彈珠類比於機器學習樣本空間的 x;橙色的彈珠類比於 h(x) 與 f 不相等;綠色的彈珠類比於 h(x) 與 f 相等;從罐子中抽取的 N 個球類比於機器學習的訓練樣本 ,且這種抽樣的樣本與總體樣本之間都是獨立同分布的。所以,如果樣本N夠大,且是獨立同分布的,那麼,從樣本中 的概率就能推導在抽樣樣本外的所有樣本中 的概率是多少。
映射中最關鍵的點是講抽樣中橙球的概率理解爲樣本數據集 上 錯誤的概率,以此推算出在所有數據上 錯誤的概率,這也是機器學習能夠工作的本質,即我們爲啥在採樣數據上得到了一個假設,就可以推到全局呢?因爲兩者的錯誤率是 PAC 的,只要我們保證前者小,後者也就小了。
這裏我們引入兩個值 和 。 表示在抽樣樣本中,h(x) 與 不相等的概率; 表示實際所有樣本中,h(x) 與 f(x) 不相等的概率是多少。
同樣,它的 Hoeffding’s inequality 可以表示爲:
該不等式表明, 也是PAC的。如果 ,且 很小,那麼就能推斷出 很小,也就是說在該數據分佈 P 下,h 與 f 非常接近,機器學習的模型比較準確。
一般地,h 如果是固定的,N 很大的時候, ,但是並不意味着 。因爲 h 是固定的,不能保證 足夠小,即使 ,也可能使 偏大。所以,一般會通過演算法 A,選擇最好的 h,使 足夠小,從而保證 很小。固定的 h,使用新數據進行測試,驗證其錯誤率是多少。
四、Connection to Real Learning
假設現在有很多罐子 M 個(即有 M 個 hypothesis),如果其中某個罐子抽樣的球全是綠色,那是不是應該選擇這個罐子呢?我們先來看這樣一個例子:150 個人拋硬幣,那麼其中至少有一個人連續 5 次硬幣都是正面朝上的概率是
可見這個概率是很大的,但是能否說明 5 次正面朝上的這個硬幣具有代表性呢?答案是否定的!並不能說明該硬幣單次正面朝上的概率很大,其實都是 0.5。一樣的道理,抽到全是綠色球的時候也不能一定說明那個罐子就全是綠色球。當罐子數目很多或者拋硬幣的人數很多的時候,可能引發 Bad Sample,Bad Sample 就是 和 差別很大,即選擇過多帶來的負面影響,選擇過多會惡化不好的情形。
根據許多次抽樣的到的不同的數據集 ,Hoeffding’s inequality 保證了大多數的 都是比較好的情形(即對於某個 h,保證 ),但是也有可能出現Bad Data,即 和 差別很大的數據集 ,這是小概率事件。
也就是說,不同的數據集 ,對於不同的 hypothesis,有可能成爲 Bad Data。只要 在某個 hypothesis 上是 Bad Data,那麼 就是 Bad Data。只有當 在所有的 hypothesis 上都是好的數據,才說明 不是 Bad Data,可以自由選擇演算法 A 進行建模。那麼,根據 Hoeffding’s inequality,Bad Data 的上界可以表示爲連級(union bound)的形式:
其中,M 是 hypothesis 的個數,N 是樣本 的數量, 是參數。該 union bound 表明,當 M 有限,且 N 足夠大的時候,Bad Data 出現的概率就更低了,即能保證 對於所有的 h 都有 ,滿足PAC,演算法 A 的選擇不受限制。那麼滿足這種 union bound 的情況,我們就可以和之前一樣,選取一個合理的演算法(PLA/pocket),選擇使 最小的 作爲矩 ,一般能夠保證 ,即有不錯的泛化能力。
所以,如果 hypothesis 的個數 M 是有限的,N 足夠大,那麼通過演算法 A 任意選擇一個矩 g,都有 成立;同時,如果找到一個矩 ,使,PAC 就能保證 。至此,就證明了機器學習是可行的。
但是,如上面的學習流程圖右下角所示,如果 M 是無數個,例如之前介紹的 PLA 直線有無數條,是否這些推論就不成立了呢?是否機器就不能進行學習呢?這些內容和問題,我們下節課再介紹。
五、總結
本節課主要介紹了機器學習的可行性。首先引入 NFL 定理,說明機器學習無法找到一個矩 能夠完全和目標函數 一樣。接着介紹了可以採用一些統計上的假設,例如Hoeffding 不等式,建立 和 的聯繫,證明對於某個 ,當 N 足夠大的時候, 和 是 PAC 的。最後,對於 h 個數很多的情況,只要有 h 個數 M 是有限的,且 N 足夠大,就能保證 ,證明機器學習是可行的。