轉載請注明出處:http://www.cnblogs.com/ymingjingr/p/4271742.html
目錄
機器學習基石筆記1——在何時可以使用機器學習(1)
機器學習基石筆記2——在何時可以使用機器學習(2)
機器學習基石筆記3——在何時可以使用機器學習(3)(修改版)
機器學習基石筆記4——在何時可以使用機器學習(4)
機器學習基石筆記5——為什么機器可以學習(1)
機器學習基石筆記6——為什么機器可以學習(2)
機器學習基石筆記7——為什么機器可以學習(3)
機器學習基石筆記8——為什么機器可以學習(4)
機器學習基石筆記9——機器可以怎樣學習(1)
機器學習基石筆記10——機器可以怎樣學習(2)
機器學習基石筆記11——機器可以怎樣學習(3)
機器學習基石筆記12——機器可以怎樣學習(4)
機器學習基石筆記13——機器可以怎樣學得更好(1)
機器學習基石筆記14——機器可以怎樣學得更好(2)
機器學習基石筆記15——機器可以怎樣學得更好(3)
機器學習基石筆記16——機器可以怎樣學得更好(4)
六、Theory of Generalization
泛化理論(舉一反三)。
6.1 Restriction of Break Point
突破點的限制。
回顧一下上一章中提到的成長函數 的定義:假設空間在N個樣本點上能產生的最大二分(dichotomy)數量,其中二分是樣本點在二元分類情況下的排列組合。
上一章還介紹了突破點(break point)的概念,即不能滿足完全分類情形的樣本點個數,完全二分類情形(shattered)是可分出 種二分類(dichotomy)的情形。
繼續舉例說明,假設一種分類情形最小的突破點為2,即 。
容易求出在 時,成長函數
;
在 時,成長函數
(突破點是2),因此最大的二分類個數不可能超過3,假設為3。
繼續觀察 時的情形,因理解稍微有些復雜,還是以圖的形式表達,如圖6-1所示。
如圖6-1a)表示在三個樣本點時隨意選擇一種二分的情況,這種分類沒有任何問題,不會違反任意兩個樣本點出現四種不同的二分類情況(因為突破點是2);
如圖6-1b)表示在a)的基礎上,添加不與之前重復的一種二分類,出現了兩種不沖突的二分類,此時同樣也沒有任何問題,不會違反任意兩個樣本點出現四種不同的二分類情況;
如圖6-1c) 表示在b)的基礎上,再添加不與之前重復的一種二分類,出現了三種不沖突的二分類,此時同樣也沒有任何問題,不會違反任意兩個樣本點出現四種不同的二分類情況;
如圖6-1d) 表示在c)的基礎上,再添加不與之前重復的一種二分類,問題出現了,樣本 出現了四種不同的二分情況,和已知條件中k=2矛盾(最多只能出現三種二分類),因此將其刪去。
如圖6-1e) 表示在c)的基礎上,再添加不與之前重復的一種二分類,此時同樣也沒有任何問題,不會違反任意兩個樣本點出現四種不同的二分類情況;
如圖6-1f) 表示在e)的基礎上,再添加不與之前重復的一種二分類,問題又出現了,樣本 出現了四種不同的二分情況,和已知條件中k=2的條件不符(最多只能出現三種二分類),因此將其刪去。
a) b)
c) d)
e) f)
圖6-1 樣本數為3時的二分類情形
在突破點是2,樣本點為3時,最多只能有四種二分類情況,而 。
從上述情形,可以做一個猜想,成長函數 小於等於某個與突破點k有關的二次項,如果可以證明這一結論,即能尋找到一個可以取代無限大M的數值,同理即能公式4-6在假設空間為無限大時也是成立,即機器是可以學習的。
假設突破點 ,在樣本數為3時,最大的二分類個數是多少?答案是1,可以想象,在樣本為1時,只有一種分類情形,假設這種情形是正,則以后所有樣本也為正,才能滿足上述條件,所以樣本N不論為多少,其最大二分類數都是1。
6.2 Bounding Function- Basic Cases
上限函數的基本情形。
根據上一小節的例子,提出一個新的概念,上限函數 (bounding function),其定義為在最小突破點為k時,表示成長函數
最大值的函數。此函數將成長函數從各種假設空間的關系中解放出來,不用再去關心具體的假設,只需了解此假設的突破點,突破點相同的假設視為一類,抽象化成長函數與假設的關系。
二分類的個數或者稱之為成長函數 說白了就是二元(在圖中表示為"×"或者"○ "的符號)符號在在長度為N的情況下的排列組合(每個不同的排列代表一個二分類,每種二分類可看做一個向量)個數。
在強調一遍,提出這種上限函數的好處在於,它的性質可以不用關心到底使用的是何種假設空間,只需要知道突破點便可以得到一個上限函數來對成長函數做約束。
例如: 可以同時表示一維空間的感知器(1D perceptrons)和間隔為正(positive intervals)的兩種假設空間,因為兩者都滿足
。注意一維的成長函數為
,而間隔為正的成長函數為
,
一定比這兩種情況中最大的還要大,才能約束成長函數,回憶上限函數的定義,是成長函數
最大值的函數表示,從這個例子中可以理解為何還會出現"最大值"。
想要證明 。
先觀察已知的 如何表示,通過列表方式找出規律,如圖6-2所示。
圖6-2 已知的 取值
在 的這條斜線上,所有值都等於
,這一原因在上一節推導中已經提到過,原因是突破點代表不能完全二分類
的情況,因此在此情況下最大的二分類數可以是
。在這條斜線的右上角區域所有的點都滿足完全二分類的,因此值為
。
而在斜線右下角上已給出數值的點都是在上一節中已求出答案的點,空白地方的值則是下節需要介紹的內容。
6.3 Bounding Function- Inductive Cases
上限函數的歸納情形。
這一小節主要是將上一小節空白的內容填寫上,從已有的數據上可以看出一個似乎是正確的結論:每個值等於它正上方與左上方的值相加。如公式6-1所示。
(公式6-1)
當然單從觀察是無法證明該公式是成立的,以下從結論出發來驗證它的正確性。
首先通過計算機求出 的所有二分情況(自己編寫程序加上限制條件,在16個二分類中找出符合條件的),其結果如圖6-3所示。
圖6-3 的所有二分類
圖6-3中的展示效果還是有些混亂,對這11種情況做一次重新排序,將 與
分開觀察,如圖6-4所示,橙色部分為
兩兩一致、
成對(pair)出現的二分類,設橙色部分一共
對二分類,即
種二分類;紫色部分為各不相同的
,設紫色部分一共
種,得公式6-2。
(公式6-2)
圖6-4 以成對和單個的形式展示
注意 ,意味着在樣本點為3時,不能滿足完全二分的情形。需要觀察在樣本數為3時,這11種分類會有何變化,不妨假設這三個樣本是
,於是只剩如圖6-5所示的7種二分類情形。
圖6-5 三個樣本時縮減之后的二分類
其中橙色部分,原本兩兩成對出現的二分類,在去掉 所屬的那列樣本之后,就合並成了4種二分類情況(
),紫色部分不變依然為3種二分情況(
)。因為已知
,在樣本數為3時,圖6-5中即表示樣本書為3 的情況,其一定不能滿足完全二分,因此
與
一定滿足公式6-3。
(公式6-3)
繼續觀察橙色部分的區域,如圖6-6所示。
圖6-6 三個樣本時橙色區域的二分類
以下使用反證法證明。假設三個樣本在如上圖所示的四種二分類情況下,滿足任意兩個樣本都可完全二分類。將
中任意兩列取出,同之前被刪除的
列相結合,一定可得到一種三個樣本都滿足完全二分類的情形(因為不論是哪兩列與
相結合都會得到8種二分類,每一行二分類都對應兩個不同標記的
,因此為8種。且兩列四行的二分類是全完二分的,在此基礎上加上不同屬性的列,應該也不會重復,因此一定也是全完二分的)。但是此結論和已知任意三個樣本不能完全二分沖突了,因此假設不成立,即在圖6-6中一定存在某兩個樣本點不能完全二分的情況,因此得出如公式6-4所示的結論。
(公式6-4)
由公式6-2~公式6-4推導出公式6-5。
(公式6-5)
最終還能推導出公式6-6的通用結論,也就是開始時公式6-1的猜想。
(公式6-6)
根據這一結論將圖6-2補齊,如圖6-7所示。
圖6-7 補齊后的上限函數表
最后可以通過如下方式證明公式6-7是成立的。
(公式6-7)
首先需要預先了解組合中的一個定理,如公式6-8所示。
(公式6-8)
很容易證明 情況下公式6-7成立,如公式6-9所示。
(公式6-9)
上一節中已經給出了證明,不僅僅是滿足不等號條件,而且滿足等號。
再使用數學歸納法證明在的情況,公式6-7成立。
假設公式6-10成立,則可以得到在的情況下公式6-11成立,同時結合公式6-6的結論,公式6-12也能被推導出來。
(公式6-10)
(公式6-11)
(公式6-12)
這一結果意味着:成長函數 的上限函數
的上限為
。
6.4 A Pictorial Proof
一種形象化的證明。
在書寫這一小節之前,還是想說明一下,我面對這一小節時,看得是一知半解,因為林老師本身也沒打算將這個證明的詳細流程全部給出,我覺得原因有幾個:一是難度很高,即使全部講解能聽懂的估計也沒幾個;二是思想更重要,你只需要知道它用到了什么原理去證明這個問題,這比你了解這枯燥的數學推導更重要;三是結論比求解過程更重要。當然這不是說求解過程不重要,我會在看懂相關理論之后,整理出一個關於V-C限制完整證明的筆記,但估計現在也沒時間去看懂這一理論。
言歸正傳,開始這一小節的簡單闡述。
在講述之前幾章時,一直以為只需要證明出在假設函數為無限多的情況下,尋找成長函數 作為假設空間個數的上限,直接使用該上限去取代原本霍夫丁不等式中的M便可得出結論,即在
接近0時,
也接近0,也就是機器是可以學習的。實際與這一結果類似,但是稍有偏差,在那本以為的霍夫丁不等式(如公式6-13所示)的公式中多出一些常量。
(公式6-13)
先給出結論,公式如6 -14所示。
(公式6-14)
比較兩個公式,發現最終的結論比猜想的,在不等式的右側三個不同位置多了三個常數,分別是開頭的地方多了一個2倍,成長函數中多了一個2倍,指數函數中多了一個 。按先后循序,分三步簡單說明一下這些變化的原因。
第一步,用取代
。
公式6-15的說明(不敢叫做證明,目前完全沒有頭緒,一到三步的說明都是自己的理解,不正確之處還望指正)。
(公式6-15)
其中 的可能性是有限多種,因為假設空間的種類被成長函數
約束住了,而樣本的大小又是固定的,所以錯誤率也最多只有
種;但是
的可能性還是無限多,因為它的數據是無限大,錯誤率也自然也會無限多種。為了解決此問題,提出了一種叫做影子數據的概念(ghost data)。使用跟輸入樣本一樣多的數據
,有
,用這組新的樣本取代整個樣本去近似求解在無限大的數據中
的值,求解的近似值記為
。圖6-8表示
和
的分布情況,其中
為它倆的分布中心,假設數據D的情況下
很大,從圖中不難看出,再抽取一次數據
得到的
很大的幾率,最多只有條件
很大的一半概率,意味着
和
很接近的幾率最多只有
很大這個條件的一半(因為從該圖中得知
和
只可能變得小於
),即
很小的幾率最多只有
很大這一幾率的一半。換句話說
很大的幾率至少是
很大這一幾率的一半,用公式6-16表示其含義如下:
圖6-8 和
的分布
(公式6-16)
將公式6-16稍微調整一下就可以得到公式6-17。
(公式6-17)
從公式6-17到公式6-15多了一個更強的約束,因此從變成了
。
第二步,分解假設空間的種類
其中的可能性與樣本D有關,而
與樣本
有關,因此整個假設空間的種類可以寫成
的個數,我們又從之前幾章的內容得知,種類的個數並非無限多,其上限最大為成長函數
那,因此壞事情發生的概率如公式6-18所示。
(公式6-18)
第三步,使用無取回的霍夫丁。
還是用小球和罐子的那個例子解釋,罐子中不再是無限多個小球,而是2N個小球,選擇N個小球而留下另外N個,可以通過公式6-19得出如下結論。
(公式6-19)
這是一種無放回的霍夫丁,最終得到公式6-20。
(公式6-20)
至此說明了(不敢叫證明)一個在機器學習領域很著名的理論——V-C上界制(Vapnik-Chervonenkis bound)。
2維的感知器,其突破點為4,因此其成長函數為,可以使用這個VC上界來說明在樣本N足夠大時候,發生壞事的情況很少,即選擇一個在樣本中錯誤率很小的g,可以得出其在整個數據上錯誤率也很低的結論,說明機器學習是可能的。