[ML] 機器學習基石:第六講 Theory of Generalization

ML:基礎學習
課程:機器學習基石
簡介:第六講 Theory of Generalization

Bounding Function

B(N,k)=mH(N)  break point=k 

補滿半邊,然而在對角線上,則為 2N1,那麼剩下的呢?
B(N,k)
k
1 2 3 4 5 6
N
1
2
3
4
5
6
122222
134444
17888
1151616
13132
163

先看 B(4,3),如下圖,用程式跑出左邊的組合,再分類成右邊

將成雙的定義為 2α 個,單個的定義為 β
X4 遮掉來看
B(4,3) 任意三個點不能 shatter,那麼只剩下三個點也不能 shatter,故 α+βB(3,3)
此時若只單看橘色的部分,若有兩個點 shatter,此時也會造成 B(4,3) shatter,故 αB(3,2)

B(4,3)=2α+βα+βB(3,3)αB(3,2)B(4,3)B(3,3)+B(3,2)
推導得知
B(N,k)=2α+βα+βB(N1,k)αB(N1,k1)B(N,k)B(N1,k)+B(N1,k1)
事實上 可為 =
B(N,k)
k
1 2 3 4 5 6
N
1
2
3
4
5
6
122222
134444
14 7888
15 11 151616
16 16 26 3132
17 22 42 57 63

B(N,k)i=0k1(Ni)
1. N=1:B(1,1)(10)=1
2.  B(N,k)i=0k1(Ni)
3. B(N+1,k)B(N,k)+B(N,k1)i=0k1(Ni)+i=0k2(Ni)=i=0k1(Ni)+i=1k1(Ni1)=1+i=1k1((Ni)+(Ni1))=1+i=1k1(N+1i)=i=0k1(N+1i) lemma (Nk)+(Nk1)=N(N1)[N(k1)]k!+N(N1)[N(k2)](k1)!=N(N1)[N(k1)]k!+N(N1)[N(k2)]k(k1)!k=N(N1)[N(k1)]k!+N(N1)[N(k2)]kk!=N(N1)[N(k2)](N+1)k!=(N+1)N(N1)[N+1(k1)]k!=(N+1k)
2D perceptrons break point = 4
mH(N)16N3+56N+1

VC bound

P[hHs.t.|Ein(h)Eout(h)|>ϵ]2mH(N)e2ϵ2N
N 夠大
P[hHs.t.|Ein(h)Eout(h)|>ϵ]4mH(2N)e18ϵ2N
證明
P[hHs.t.|Ein(h)Eout(h)|>ϵ]22mH(2N)e2116ϵ2N
用有限 Ein 取代無限的 Eout,詳細證明可參考此篇
12P[hH s.t.|Ein(h)Eout(h)|>ϵ] P[hH s.t.|Ein(h)Ein(h)|>ϵ2]
物理意義
如下圖,N 夠大時,可看作 Eout 在隨機抽取 Ein 整體分佈的中心點
|EinEout|>ϵ 的機率
則會位在兩邊,但因為取一半,所以只有在右邊,也就是需大過紅色區塊,機率必小於鐘形的一半

此時取 EinD大小為 N
|EinEin|>ϵ2 的機率
則會至少包含鐘形另一半的機率,再加上大過綠色區塊的部分,機率則大於原先的 |EinEout|>ϵ
因將 Ein 取代 Eout,所以實際上大小已變為 D+D=2N
此時將上一講的概念代入,得到 mH(2N) 並且 h 是固定且最大機率的,故得到下式
P[BAD]2P[hH s.t.|Ein(h)Ein(h)|>ϵ2]2mH(2N)P[fixed h s.t.|Ein(h)Ein(h)|>ϵ2]
此時代入 Hoeffding's Inequality,|EinEin>ϵ2||EinEin+Ein2>ϵ4|
Ein+Ein2 就是瓶子內的機率,故得到下式
P[BAD]2mH(2N)P[fixed h s.t.|Ein(h)Ein(h)|>ϵ2]2mH(2N)2e2(ϵ4)2N
故得證 Vapnik-Chervonenkis (VC) bound:
P[hHs.t.|Ein(h)Eout(h)|>ϵ]4mH(2N)e18ϵ2N
所以 2D perceptrons 代入 mH(N)=O(N3) 可收斂之

注意:VC bound 是非常寬鬆的上限

例:在 positive rays, mH(N)=N+1ϵ=0.1 and N=10000
得到 VC bound=0.298
即使是 10000筆資料,錯誤上限機率也有近 30%

留言