0、引入算法
統計機器學習的目標是要從假設集H中選擇一個假設函數h,使得h和產生數據的f(未知的)儘量接近。一般咱們是選擇在訓練集上出錯最少的那個h,而後使用選定的h進行預測。可是這樣選出來的h靠譜嗎?也就是說,在訓練集上表現最好的h,在訓練集之外的數據上是否表現良好?機器學習
下面咱們將引入假設:訓練集和測試集都是來自同一個分佈的簡單隨機樣本,而後在統計的範疇下討論上述問題。咱們將會證實,在數量足夠大的狀況下,上述選擇是靠譜的。函數
一、基礎學習
假設訓練集和測試集都是來自同一個分佈的簡單隨機樣本(獨立同分布),則根據霍夫丁不等式,有以下結論測試
………… (1)spa
其中Ein和Eout分別爲事件
和基礎
也就是說,對於某一個固定的假設函數h,它在訓練集上的錯誤率,和它在真實狀況下的錯誤率,這兩個錯誤率出現較大誤差的機率,會小於某一個量(這個量隨着訓練樣本數量N的增大呈指數級遞減)。變量
那麼,咱們是否是能夠說,在訓練集足夠大的狀況下,只要咱們選擇一個Ein很小的假設函數h就能夠了?若是訓練集足夠大,那麼咱們就能夠以很高的機率保證Ein和Eout差距很小,選擇一個Ein很小的假設函數h,則Eout很小的機率也就很高,那麼咱們就能夠以很高的機率保證所選h的Eout很小,也就是說在訓練集意外的數據上表現很好。方法
是這樣的嗎?答案是否認的。
不等式(1)的結論保證了固定的h的狀況,可是咱們要說的是選擇一個h。至於怎麼選擇取決於算法,而實際上咱們每每傾向於選擇Ein較小的h,實際狀況能夠想象,咱們選擇Ein較小的h和不考慮Ein隨機選擇一個h,這兩種狀況相比,前一種狀況Ein和Eout相差比較大的機率明顯是會比後一種高的。
更理論的解釋是,當咱們執行某種學習算法選擇h時,不等式的左側就變成P[ | Ein(h) - Eout(h) | >ε | 學習算法選擇h]。能夠看到,這時不等式左側變成了一個條件機率,即,算法選擇h的條件下,該h的Ein和Eout相差大於ε的機率。除非咱們的學習算法在選擇假設函數時不考慮Ein,那麼能夠說 學習算法選擇h 和 | Ein(h) - Eout(h) |> ε 這兩個隨機事件相互獨立,咱們能夠丟掉條件,仍然適用上述不等式(1)。可是實際狀況是,咱們須要選擇Ein較小的h,那麼 學習算法選擇h 和 | Ein(h) - Eout(h) |> ε 這兩個隨機事件天然是不獨立的。
很顯然,經過 P[ | Ein(h) - Eout(h) |> ε | 學習算法選擇h] 來對統計機器學習給出機率保障是作不到的,咱們沒法對於學習算法選擇h這一事件進行機率建模。因此須要換一種思路,就是不管學習算法如何選擇h,Ein和Eout相差較大的狀況出現的機率都小於某一個可控的量。換一種說法就是,假設集H中就不存在h可以使得 Ein和Eout相差較大的狀況出現的機率大於某一個可控的量 。轉換爲機率語言就是,隨機事件 假設集H中存在使得Ein和Eout相差很大的h 發生的機率小於某個可控的量。即 P[ ∃ h ∈ H,| Ein(h) - Eout(h) |>ε ] < 某個可控的量。恩達教授的CS229課程講義就是按照這個思路來說解的。下邊分爲有限假設集和無限假設集兩種狀況來講明。
二、有限假設集
有以下兩種理解思路,其本質是同樣的。
(1)第一種理解思路
根據第一部分的分析可作以下推導:
P[ ∃ h ∈ H,| Ein(h) - Eout(h) |> ε ]
= P[ |Ein(h1)-Eout(h1)|> ε 或 |Ein(h2)-Eout(h2)|> ε 或 ... 或 |Ein(hm)-Eout(hm)|> ε ]
≤ P[ |Ein(h1)-Eout(h1)|> ε ] + P[ |Ein(h2)-Eout(h2)|> ε ] + ... +P|Ein(hm)-Eout(hm)|> ε ]
≤2exp(-2ε^2N) + 2exp(-2ε^2N) + ... + 2exp(-2ε^2N)
=2mexp(-2ε^2N)
到此咱們就獲得了咱們想要的結論了。
(2)第二種理解思路
對於機率不等式(1),其中的隨機變量是訓練集D。因此咱們能夠把不等式中的隨機事件 |Ein(h) - Eout(h)|>ε 描述爲對於h咱們的訓練集D是很差的(BAD D for h)。之因此稱其爲「 很差的 」是由於Ein和Eout相差較大的狀況是咱們不但願獲得的。咱們但願的是不管對於假設集中的哪個,咱們的訓練集D都是好的。因此對於任意一個h咱們的訓練集是很差的,咱們就稱訓練集D是很差的(BAD D)。
(3)結論
對於有限假設集,只要數據量足夠多,經過選擇在訓練數據集上表現好(Ein小)的假設函數,就能夠保證,所選假設函數以很高的機率在真實使用中表現很好(Eout很小)。
三、無限假設集
對於假設集無限的狀況,咱們是經過將無限轉化爲有限的方法來對Ein和Eout的差異進行機率保障,從而間接保障了選擇Ein小的假設函數,其Eout大多數時候也很小。
明天再寫吧……