Coursera台大機器學習課程筆記5 -- Theory of Generalization


本章思路

根據之前的總結,如果M很大,那么無論假設泛化能力差的概率多小,都無法忽略,所以問題轉化為證明M不大,然后上章將其轉化為證明成長函數:mh(N)為多項式級別。直接證明似乎很困難,本章繼續利用轉化的思想,首先想想和mh(N)相關的因素可能有哪些?不難想到目前來看只有兩個:

  • 假設的抽樣數據集大小N
  • break point k(這個變量確定了假設的類型);

那么,由此可以得到一個函數B,給定Nk可以確定該系列假設能夠得到的最大的mh(N),那么新的目標便是證明B(N,k) <= Poly(N)。這便是本章的主要目標。

上圖展示了不同Nk如何影響最終的growth function,表達了本章的重點是證明growth functionPoly的。

接着,問題可以進一步簡化,上面我們知道growth functionNH決定,而H又可以轉為k,一個k決定了一類H,這樣的抽象推導出了一個很重要的函數,這個函數的ygrowth functionX則分別為Nk

典型的例子是positive intervals1D perceptronsk都為3,它們的growth function即時一致的,換句話說,這個函數將H的本質通過k表達了出來。

原目標就繼續轉化為證明B(N,k)poly

證明的過程很巧妙,以B(4,3)為例子:

步驟1:找出B(4,3)B(3,x)的關系,則可以得到一個遞推式

B(4,3)已知為11dichotomy如下:

也就是說再加一種dichotomy,任意三點都能被shattered11是極限。

對這11dichotomy分組,目前分成兩組,分別是orangepurpleorange的特點是,x1,x2x3是一致的,x4不同並成對,例如1528等,purple則是單一的,x1,x2,x3都不同。

 

這是第一步化簡,將Orange去掉x4后去重得到4個不同的vector並成為alpha,相應的purplebeta,那么B(4,3) = 2*alpha + beta這個是直接轉化。緊接着,由定義,B(4,3)是不能允許任意三點shatter的,所以由alphabeta構成的所有B(4,3)的所有三點組合也不能shatteralpha經過去重),即alpha + beta <= B(3,3)

最關鍵的來了,首先給出結論,alphavector不能在任意兩點被shatter,為啥?反證法,假設可以,那么由於alphax4是成對出現的,所以把apha加上x4就能構成三個點的shatter,這個地方非常巧妙這也道出了之前這樣分組的精髓,所以alpha <= B(3,2)

由此得出B(4,3)B(3,x)的關系。

步驟二:推導出一般式

有了前面一步的基礎,后面的就很直接了。


展開可以,接着得出:

那么得出的結論就是:

上面明顯是poly的,由此得出來我們夢寐已久的結果。

光有這個還不行,我們要帶到下面的關鍵不等式中才能最終得出,選取最小Ein 假設是可以的忽略錯誤的,只要有breaking point存在於假設。

這里的證明我大致看了一下,對整體理解不是很大幫助,准備以后上完大部分課程后再看看。

 

總結:

  本章的結論很明顯,即時假設看起來是無窮的,只要存在breaking point,那么growth function便是多項式級別,假設的數量是限定的,我們只要保證Ein足夠小,那么N大以及breaking point存在可以保證該假設具有較好的泛化性。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM