1. 程式人生 > >機器學習基石 Lecture4: Feasibility of Learning

機器學習基石 Lecture4: Feasibility of Learning

機器學習基石 Lecture4: Feasibility of Learning

Learning is Impossible?

假設有一個實際的面向人的益智問題,給出上面6個例子,判斷下方圖形對應的y:
在這裡插入圖片描述
根據不同的規律,可以給出不同的對應函式f。於是最後一張圖片也會有相反的結果。比如:
在這裡插入圖片描述
因此對於這個問題來說沒有一個正確的答案。這只是一個引例。那麼對於一個實際的機器學習二分類問題,假設有如下的資料樣例:
在這裡插入圖片描述


對於這個問題,由於輸入和輸出都是有限的,因此可以枚舉出所有的實際對應的函式 f f 。如果使用了類似PLA的演算法得到一個在訓練資料 D D 中都和 f
f
的結果一致的結果 g g ,那麼是否能夠說明這個 g f g\approx f
?可以枚舉出所有的 f f ,可以看出得出的 g g 並不一定接近實際函式 f f
在這裡插入圖片描述
可以看出來並沒有一個固定的 g g 能夠在 D D 之外確定地接近 f f 。這就是No Free Lunch Theorem,也就是說,在沒有限制的情況下,沒有一個演算法得到的結果能夠確定比其它所有演算法都好。除非做一定的限制。

Probability to the Rescue

既然很難推斷出 D D 之外的 f f 的表現,那麼是否可以推斷出其他情況下的一些東西呢?比如有一個瓶子裡有一些綠色和黃色的彈珠。如果想要推斷兩種顏色各自所佔比例 μ 1 μ \mu 和1-\mu ,那麼就可以選擇從中取樣出 N N 個彈珠觀察樣本里兩種顏色各自所佔比例 ν 1 ν \nu 和 1-\nu 。但是樣本取樣得到的概率 ν \nu 能夠說明樣本之外的瓶子中玻璃珠所佔比例呢?
在這裡插入圖片描述
根據 Hoeffding’s Inequality,取樣的概率與樣本外的概率關係為:
在這裡插入圖片描述
也就是概率 μ \mu 與概率 ν \nu 相等這樣的說法有可能是大致正確的(probably approximately correct,PAC)。因此對於比較大的 N N 來說,可以大致通過 ν \nu 來推斷 μ \mu

Connection to Learning

而上述不等式與機器學習演算法有何關聯呢?如下圖所示:
在這裡插入圖片描述
彈珠可以看成樣本,假設 h h 的結果是否正確可以對應兩種顏色。N個取樣可以對應資料集 D D 中的資料樣例。類似的,通過較大的取樣數量 N N ,可以通過在已知資料集 D D 上的 h h 的正確率來大致估計資料集之外的 h h 相對於 f f 的正確率。也就是:
在這裡插入圖片描述
但是對於返回一個固定的假設 h h 作為結果 g g 的演算法,不能夠叫做一個好的學習演算法。因為對於資料集 D D 上的錯誤率 E i n ( h ) E_{in}(h) 比較大的情況時這個 g g (PAC)不等於 f f

因此一個真正的學習演算法 A A 需要能夠在假設集合 H H 中進行選擇得到最終的 g g 而不是返回一個固定的 h h 作為 g g

Connection to Real Learning

在不同的假設函式裡進行選擇如下圖所示,每個 h h 都對應一個 E i n E_{in} 和一個 E o u t E_{out}
在這裡插入圖片描述
那麼一個最重要的問題是,是否在集合 D D 上的例子中錯誤率最小的假設函式就是最好的假設呢?

假設150個人丟同樣的硬幣,每個人丟5次。有大於99%的機率會有至少一個人丟出來5次都是正面向上。但是這並不能說明這個人的硬幣丟出正面的概率比其它人更大。在這個取樣裡 E i n E_{in} E o u t E_{out} 相差很遠,也就是說這個人的取樣是一個比較失敗的取樣。但是這樣的取樣對於選擇假設函式時影響非常大。只要有比較失敗的取樣那麼演算法就不能夠按照 E i n E_{in} 進行自由選擇不同的假設函式。對於一個假設集合而言,資料集合 D D 只要對其中一個假設函式來說是比較失敗的取樣,那麼它就是失敗的。
在這裡插入圖片描述
假設空間一共有M個假設函式,那麼這個假設空間遇到比較壞的取樣的概率上限為:
在這裡插入圖片描述
也就是說,對於比較大的N和有限的M來說,不論是什麼樣的演算法, E i n ( g ) = E o u t ( g ) E_{in}(g)=E_{out}(g) 是有可能大致正確的(PAC)。因此最合理的演算法 A A 會選擇在資料集 D D 上錯誤率最小的假設 h h 作為 g g

因此整體的學習過程如下:
在這裡插入圖片描述
也就是說對於假設空間是有限的情況下,學習是可行的。而一個合理的演算法最終會選擇一個在 D D 上錯誤率最小的假設 h h 作為結果 g g 。但是對於假設空間無限大的情況,以後的課上再講。