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

Coursera機器學習基石筆記week7

The VC Dimension

Definition of VC Dimension

在這裡插入圖片描述
VC dimension就是滿足成長函式 2 N 2^N 的最大的N。也就是 d

v c d_{vc} =‘minimum k’-1.

VC Dimension of Perceptrons

已知在1D Perceptron, d v

c = 2 d_{vc}=2 ,在2D Perceptrons, d v c
= 3 d_{vc}=3
,那麼我們有如下假設: d v c = d + 1 d_{vc}=d+1 ,其中d為維數。如果我們要證明的話,需要分為兩步:

  • d v c d + 1 d_{vc}\geq d+1
  • d v c d + 1 d_{vc}\leq d+1

首先證明 d v c d + 1 d_{vc}\geq d+1

在d維裡,我們只要找到某一類的d+1個inputs可以被shatter的話,那麼必然得到 d v c d + 1 d_{vc}\geq d+1 。所以,構造一個d維的矩陣X能夠被shatter就行。X是d維的,有d+1個inputs,每個inputs加上第零個維度的常數項1(threshold),得到X的矩陣:
在這裡插入圖片描述
這是一個(d+1)*(d+1)的矩陣,且有d+1組線性無關向量,則該矩陣是非奇異的,也就是可逆的。shatter的本質是假設空間H對X的所有情況的判斷都是對的,即總能找到權重W,滿足 X W = y X\ast W=y W = X 1 y W=X^{-1}\ast y 。因為可逆針對任意一個y都可以由X矩陣得到對應的權重w。那麼說明 d v c d + 1 d_{vc}\geq d+1

然後證明 d v c d + 1 d_{vc}\leq d+1 :

那麼需要證明對於任意d+2個inputs無法被shatter,那麼就可以證明不等式成立。我們構造一個任意的矩陣X,其包含d+2個inputs,該矩陣有d+1列,d+2行。這d+2個向量的某一列一定可以被另外d+1個向量線性表示,例如對於向量Xd+2Xd+2,可表示為:
X d + 2 = a 1 X 1 + a 2 X 2 + + a d + 1 X d + 1 X_{d+2}=a_1∗X_1+a_2∗X_2+⋯+a_{d+1}∗X_{d+1}

其中,假設a1>0,a2,⋯, a d + 1 a_{d+1} <0

那麼如果 X 1 X_1 是正類, X 2 , , X d + 1 X_2,⋯,X_{d+1} 均為負類,則存在W,得到如下表達式:
X d + 2 W = a 1 X 1 W + a 2 X 2 W + + a d + 1 X d + 1 W &gt; 0 X_{d+2}∗W=a_1∗X_1∗W+a_2∗X_2∗W+⋯⋯+a_{d+1}∗X_{d+1}∗W&gt;0
因為其中 X 1 X_1 大於0,代表正類; X 2 , X 3 . X d + 1 X_2,X_3…….X_{d+1} 小於0,代表負類。所有對於這種情況, X d + 2 X_{d+2} 一定是正類,無法得到負類的情況。也就是說,d+2個inputs無法被shatter。

因此可以證明 d v c = d + 1 d_{vc}=d+1

Physical Intuition of VC Dimension

在這裡插入圖片描述
w又可以叫做自由度,就像是上圖中的旋鈕一樣可以自由的調節。

vc dimension又代表了可以產生dichotomy 的數量。

Interpreting VC Dimension

已知VC bound:
在這裡插入圖片描述
我們讓 δ \delta 等於VC bound。那麼我們想要得到好的情況,那麼:
在這裡插入圖片描述
經過上述計算,我們推匯出了 ϵ \epsilon 的值。ϵ表現了假設空間H的泛化能力,ϵ越小,泛化能力越大。
在這裡插入圖片描述
在這裡插入圖片描述
上圖,紅色部分代表了模型複雜度,其與樣本數量N, d v c d_{vc} δ \delta 有關。根據上圖的關係,我們可以繪出相關的趨勢:
在這裡插入圖片描述
根據上述趨勢,我們不能一味的減小 E i n E_{in} 的值,因為隨著 E i n E_{in} 的變小,模型複雜度在變大,導致泛化能力變小,導致 E o u t E_{out} 先變大再變小。
在這裡插入圖片描述
根據以上圖片可以看出,在 d v c d_{vc}