《機器學習基石》學習筆記 6 Theory of Generalization

上一節課,我們主要探討了當 M 的數值大小對機器學習的影響。如果 M 很大,那麼就不能保證機器學習有很好的泛化能力,所以問題轉換爲驗證 M 有限,即最好是按照多項式成長。然後通過引入了成長函數 mH(N)m_H(N)和 dichotomy 以及 break point 的概念,提出 2D perceptrons 的成長函數 mH(N)m_H(N) 是多項式級別的猜想。這就是本節課將要深入探討和證明的內容。

一、Restriction of Break Point

我們先回顧一下上節課的內容,四種成長函數與break point的關係:
在這裏插入圖片描述
下面引入一個例子,如果 k=2,那麼當 N 取不同值的時候,計算其成長函數 mH(N)m_H(N) 是多少。很明顯,當 N=1 時,mH(N)=2m_H(N) = 2,;當 N=2 時,由 break point 爲 2 可知,任意兩點都不能被 shattered(shatter的意思是對 N 個點,能夠分解爲 2N2^N 種 dichotomies ); mH(N)m_H(N) 最大值只能是 3;當 N=3 時,簡單繪圖分析可得其 mH(N)=4m_H(N)=4 ,即最多隻有 4 種 dichotomies。

在這裏插入圖片描述

所以,我們發現當 N>k 時,break point 限制了 mH(N)m_H(N) 值的大小,也就是說影響成長函數 mH(N)m_H(N) 的因素主要有兩個:

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

那麼,如果給定 N 和 k,能夠證明其 mH(N)m_H(N) 的最大值的上界是多項式的,則根據霍夫丁不等式,就能用 mH(N)m_H(N) 代替 M,得到機器學習是可行的。所以,證明mH(N)m_H(N) 的上界是 poly(N),是我們的目標。
在這裏插入圖片描述

二、Bounding Function: Basic Cases

現在,我們引入一個新的函數:bounding function,B(N,k)。Bound Function 指的是當break point 爲 k 的時候,成長函數 mH(N)m_H(N) 可能的最大值。也就是說 B(N,k) 是 mH(N)m_H(N) 的上界,對應 mH(N)m_H(N) 最多有多少種 dichotomy。那麼,我們新的目標就是證明:
B(N,k)poly(N)B(N,k)≤poly(N)

這裏值得一提的是,B(N,k) 的引入不考慮是 1D postive intrervals 問題還是 2D perceptrons 問題,而只關心成長函數的上界是多少,從而簡化了問題的複雜度。

在這裏插入圖片描述
求解 B(N,k) 的過程十分巧妙:

  • 當 k=1 時,B(N,1) 恆爲 1。
  • 當 N < k 時,根據 break point 的定義,很容易得到 B(N,k)=2NB(N,k)=2^N
  • 當 N = k 時,此時 N 是第一次出現不能被 shatter 的值,所以最多只能有 2N12^N−1 個dichotomies,則 B(N,k)=2N1B(N,k)=2^N−1

在這裏插入圖片描述
到此,bounding function 的表格已經填了一半了,對於最常見的 N>k 的情況比較複雜,推導過程下一小節再詳細介紹。

三、Bounding Function: Inductive Cases

N > k 的情況較爲複雜,下面給出推導過程:

  1. 以B(4,3)爲例,首先想着能否構建 B(4,3) 與 B(3,x) 之間的關係。
    • 首先,把 B(4,3) 所有情況寫下來,共有 11 組。也就是說再加一種 dichotomy,任意三點都能被 shattered,11是極限。在這裏插入圖片描述
    • 對這 11 種 dichotomy 分組,目前分成兩組,分別是 orange 和 purple,orange的特點是,x1,x2x_1, x_2x3x_3 是一致的,x4x_4 不同併成對,例如 1 和 5,2 和 8 等,purple 則是單一的,x1,x2,x3x_1, x_2, x_3 都不同,如 6, 7, 9 三組。
      在這裏插入圖片描述
    • 將 Orange 去掉 x4x_4 後,去重得到 4 個不同的 vector 併成爲 α\alpha,相應的 purple 爲 β\beta 。那麼 B(4,3)=2α+βB(4,3)=2\alpha + \beta,這個是直接轉化。緊接着,由定義,B(4,3) 是不能允許任意三點 shatter 的,所以由 α\alphaβ\beta 構成的所有三點組合也不能 shatter(α\alpha 經過去重),即 α+βB(3,3)\alpha + \beta ≤ B(3,3)在這裏插入圖片描述
    • 另一方面,由於 α\alphax4x_4 是成對存在的,且 α\alpha 是不能被任意三點 shatter 的,則能推導出 α\alpha 是不能被任意兩點 shatter 的。這是因爲,如果 α\alpha 存在兩點兩點可以被 shatter,而 x4x_4 又是成對存在的,那麼 x1x2x3x4x_1、x_2、x_3、x_4 組成的 α\alpha 必然能被三個點 shatter。這就違背了條件的設定。這個地方的推導非常巧妙,也解釋了爲什麼會這樣分組。此處得到的結論是 αB(3,2)\alpha ≤ B(3,2)在這裏插入圖片描述
  2. 由此得出 B(4,3) 與 B(3,x) 的關係爲:在這裏插入圖片描述
  3. 最後,推導出一般公式爲:在這裏插入圖片描述
  4. 根據推導公式,下表給出 B(N,K) 值在這裏插入圖片描述

根據遞推公式,推導出 B(N,K) 滿足下列不等式:在這裏插入圖片描述
上述不等式的右邊是最高階爲 Nk1N^{k-1} 的多項式,也就是說成長函數 mH(N)m_H(N) 的上界 B(N,K) 的上界滿足多項式分佈 poly(N),這就是我們想要得到的結果。

得到了 mH(N)m_H(N) 的上界 B(N,K) 的上界滿足多項式分佈 poly(N) 後,我們回過頭來看看之前介紹的幾種類型它們的 mH(N)m_H(N) 與 break point 的關係:

在這裏插入圖片描述
我們得到的結論是,對於 2D perceptrons,break point 爲 k=4,mH(N)m_H(N) 的上界是 Nk1N^{k−1}。推廣一下,也就是說,如果能找到一個模型的 break point,且是有限大的,那麼就能推斷出其成長函數 mH(N)m_H(N) 有界。

四、A Pictorial Proof

我們已經知道了成長函數的上界是 poly(N) 的,下一步,如果能將 mH(N)m_H(N) 代替 M,代入到 Hoffding 不等式中,就能得到 EoutEinE_{out} \approx E_{in}的結論:
在這裏插入圖片描述
實際上並不是簡單的替換就可以了,正確的表達式爲:
在這裏插入圖片描述
該推導的證明比較複雜,我們可以簡單概括爲三個步驟來證明:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
這部分內容,我是既沒有聽懂,也沒有看懂,如果有感興趣的同學就自己研究吧。

最終,我們通過引入成長函數 mHm_H,得到了一個新的不等式,稱爲Vapnik-Chervonenkis(VC) bound:
在這裏插入圖片描述
對於 2D perceptrons,它的 break point 是 4,那麼成長函數 mH(N)=O(N3)m_H(N)=O(N^3) 。所以,我們可以說 2D perceptrons 是可以進行機器學習的,只要找到hypothesis 能讓 Ein0E_{in} \approx 0,就能保證 EinEoutE_{in} \approx E_{out}

五、總結

本節課我們主要介紹了只要存在 break point,那麼其成長函數 mH(N)m_H(N) 就滿足 poly(N)。推導過程是先引入 mH(N)m_H(N) 的上界 B(N,k),B(N,k) 的上界是 N 的 k-1 階多項式,從而得到 mH(N)m_H(N) 的上界就是 N 的 k-1 階多項式。然後,我們通過簡單的三步證明,將 mH(N)m_H(N) 代入了 Hoffding 不等式中,推導出了 Vapnik-Chervonenkis(VC) bound,最終證明了只要 break point 存在,那麼機器學習就是可行的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章