1. 程式人生 > >Coursera機器學習基石筆記week6

Coursera機器學習基石筆記week6

Theory of Generalization

Restriction of Break Point

在這裡插入圖片描述
很明顯,當N=1時, m H ( N ) m_H(N)

=2,;當N=2時,由break point為2可知,任意兩點都不能被shattered(shatter的意思是對N個點,能夠分解為 2 N 2^N 種dichotomies); m
H ( N ) m_H(N)
最大值只能是3;當N=3時,簡單繪圖分析可得其 m H
( N ) = 4 m_H(N)=4
,即最多隻有4種dichotomies。

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

  • 抽樣資料集N
  • break point k(這個變數確定了假設的型別)

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

Bounding Function:Basic Cases

在這裡插入圖片描述

  • 當k=1時,B(N,1)恆為1。
  • 當N < k時,根據break point的定義,很容易得到 B ( N , k ) = 2 N B(N,k)=2^N
  • 當N = k時,此時N是第一次出現不能被shatter的值,所以最多隻能有 2 N 1 2^N-1 個dichotomies,則B(N,k)= 2 N 1 2^N-1
    在這裡插入圖片描述

Bounding Function:Inductive Cases

以B(4,3)為例,首先想著能否構建B(4,3)與B(3,x)之間的關係。

首先,把B(4,3)所有情況寫下來,共有11組。也就是說再加一種dichotomy,任意三點都能被shattered,11是極限。
在這裡插入圖片描述
對這11種dichotomy分組,目前分成兩組,分別是orange和purple,orange的特點是,x1,x2和x3是一致的,x4不同併成對,例如1和5,2和8等,purple則是單一的,x1,x2,x3都不同,如6,7,9三組。
在這裡插入圖片描述
然後根據分組,對橙色部分分為2 α \alpha ,紫色部分分為 β \beta ,那麼 B ( 4 , 3 ) = 2 α + β B(4,3)=2\alpha+\beta 。然後我們將x4去掉,同時將橙色重複部分去除,即得 α + β \alpha+\beta 。已知任意3個點在上述11個分組中不能shatter,那麼對於我們經過刪減的 α + β \alpha+\beta 來說,它們也不能shatter。也就說明了 α + β B ( 3 , 3 ) \alpha+\beta\leq B(3,3) .
在這裡插入圖片描述
另一方面,由於 α α \alphaα 中x4是成對存在的,且 α \alpha 是不能被任意三點shatter的,則能推匯出 α \alpha 是不能被任意兩點shatter的。這是因為,如果 α \alpha 是能被任意兩點shatter,而x4又是成對存在的,那麼x1、x2、x3、x4組成的 α \alpha 必然能被三個點shatter。這就違背了條件的設定。這個地方的推導非常巧妙,也解釋了為什麼會這樣分組。此處得到的結論是 α B ( 3 , 2 ) \alpha \leq B(3,2)
在這裡插入圖片描述
由此得出B(4,3)與B(3,x)的關係為:
在這裡插入圖片描述
最後,推匯出一般公式為:
在這裡插入圖片描述
根據推導公式,下表給出B(N,K)值
在這裡插入圖片描述
根據遞推公式,推匯出B(N,K)滿足下列不等式:
在這裡插入圖片描述
上述不等式的右邊是最高階為k-1的N多項式,也就是說成長函式 m H ( N ) m_H(N) 的上界B(N,K)的上界滿足多項式分佈poly(N),這就是我們想要得到的結果。

得到了 m H ( N ) m_H(N) 的上界B(N,K)的上界滿足多項式分佈poly(N)後,我們回過頭來看看之前介紹的幾種型別它們的 m H ( N ) m_H(N) 與break point的關係:
在這裡插入圖片描述
我們得到的結論是,對於2D perceptrons,break point為k=4, m H ( N ) m_H(N) 的上界是 N k 1 N^{k-1} 。推廣一下,也就是說,如果能找到一個模型的break point,且是有限大的,那麼就能推斷出其成長函式 m H ( N ) m_H(N) 有界。

A Pictorial Proof

我們已經知道了成長函式的上界是poly(N)的,下一步,如果能將 m H ( N ) m_H(N) 代替M,代入到Hoffding不等式中,就能得到 E o u t E i n E_{out}\approx E_{in} 的結論:
在這裡插入圖片描述
但是實際的表示式並不是這樣的:
在這裡插入圖片描述
推導如下:
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
得到最後的VC bound:
在這裡插入圖片描述
對於已知的2D perceptrons,它的break point是4,那麼成長函式 m H ( N ) = O ( N 3 ) m_H(N)=O(N^3) 。所以,我們可以說2D perceptrons是可以進行機器學習的,只要找到hypothesis能讓 E i n 0 E_{in}\approx0 ,就能保證 E i n E o u t E_{in}\approx E_{out}

總結

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