1. 程式人生 > >【機器學習基礎】理解為什麼機器可以學習——Hoeffding不等式

【機器學習基礎】理解為什麼機器可以學習——Hoeffding不等式

引入

在上一小節“理解為什麼機器可以學習——PAC學習模型”中,我們主要討論了假設的錯誤率問題和如何說一個學習器是可學習的,並給出了PAC學習理論。這一小節,我們將沿著這個方向,討論一下,有限假設空間的樣本複雜度,並用Hoeffding不等式來界定概率邊界。

假設空間的樣本複雜度

PAC可學習性很大程度上由所需的訓練樣本數量決定。隨著問題規模的增長所帶來的所需訓練樣本的增長稱為學習問題的樣本複雜度(sample complexity)。在多數實際問題中,最限制學習器成功的因素是有限的可用的訓練資料。
我們通常都喜歡能與訓練資料擬合程度更高的假設,當一個學習器在可能時都輸出能完美擬合訓練資料的假設時,我們稱該學習器是一致的(consistent)。這就要求訓練錯誤率是0。
遺憾的是,如果假設空間裡不總是能找到一個零錯誤率的假設,這時,最多能要求學習器輸出的假設在訓練資料上有最小的錯誤率。


在更一般的情形下,我們要考慮學習器有非零訓練錯誤率的假設時,仍能找到一個邊界來限定學習器所需的樣本數量。

Hoeffding邊界

描述問題

現在,我們來更準確的描述我們要解決的問題。
令D代表學習器可觀察的特定的訓練資料集合,而P代表整個資料集合背後滿足的概率分佈。令Ein(h)代表假設h的訓練錯誤率(在機器學習基石課程中,該錯誤率被稱為in-sample error),確切的說,Ein(h)是資料集D中被h誤分類的訓練資料所佔比例,Ein(h)是定義在訓練資料集D上的,而真實錯誤率Eout(h)(out-of-sample error)是定義在整個概率分佈P上的。現在令g代表H中有最小訓練錯誤率的假設。問:多少訓練資料才足以保證真實錯誤率Eout(h)和訓練錯誤率Ein(h)很接近,並且接近0。

Hoeffding不等式

Hoeffding Inequality
Hoeffding刻畫的是某個事件的真實概率及其m個獨立重複試驗中觀察到的頻率之間的差異,更準確的將,它是應用於m個不同的Bernoulli試驗。
該不等式給出了一個概率邊界,它說明任意選擇的假設訓練錯誤率不能代表真實情況。

確認(verification)流程


我們發現滿足上面給的邊界不等式的h可不可以說它是一個好的學習器呢?當然不能,上面的不等式只能說明h的訓練錯誤率和真實錯誤率很接近,但卻不一定是最小的,即h不一定是最佳的假設。所以,這只是對一個假設做確認的過程。
這裡因為只有一個hypothesis在手上,所以我們還不能做選擇,但是我們可以給它一些verifying examples來讓它做確認,看看h的表現如何,正如上圖流程所示。

有限假設空間的錯誤率的概率邊界

Hoeffding不等式告訴我們什麼呢?較好擬合訓練資料的假設與該假設針對整個資料集合的預測,這兩者的錯誤率差別很大的那種情況發生的概率是很小的。
那麼現在的問題是什麼呢?如果在多個假設中,其中一個假設針對訓練資料的輸出都是正確的,那要不要選這個假設作為演算法的輸出的假設呢?
帶著這個問題,我們先了解一下什麼叫做不好的資料。

Bad Sample and Bad Data

壞的樣本就是訓練錯誤率Ein=0,而真實錯誤率Eout=1/2的情況。
壞的資料是Ein和Eout差別很大的情況,通常Ein很小,Eout很大。

而Hoeffding說明的是如果把所有的訓練資料(從輸入空間中,隨機選取產生的資料的不同組合)窮舉出來,得到的不好的樣本(Bad Sample)的概率是很小的。
所以壞的樣本就是讓演算法的預測的準確率和訓練時的正確率差別很大的情況(Ein和Eout差別很大)。

上圖說明:

  • 對於一個假設hi(每一行),Hoeffding保證其不好的情況總體的概率是很小的
  • 對於含有BAD的每一列來說,只要有BAD,演算法就無法從所有假設中自由做選擇
  • 表中D1126這個資料集是好的資料

Bound of BAD Data

我們來算一下壞的資料的概率邊界:

這個式子是有限個假設的Hoeffding不等式。
對於這個式子來說,如果訓練資料的數量N夠大的話,那麼能保證Ein和Eout差別很小。

統計學習流程


上面的流程總結了我們這篇文章討論的問題,那就是如果現有有限個假設且訓練資料量夠多的情況下,那麼不管我們如何選擇訓練資料,訓練錯誤率和真實錯誤率都會很接近;我們設計演算法來找一個Ein最小的,PAC理論就保證了Eout很小。這樣機器學習演算法是有可能學到有用的知識的!

小結

我們至此討論的是有限個假設的情況,說明了機器學習演算法可以做到一些事情。那麼無限多假設的情況該是如何處理呢?我將在下一小節中介紹VC理論的有關知識。

參考資料

機器學習, Tom M.Mitchell ,機械工業出版社
機器學習基石課程,林軒田,臺灣大學