# 林軒田機器學習基石筆記 - 第七講 ###### tags: `林軒田` `Maching Learning` `機器學習基石` --- >* **本文為一系列課程之筆記,建議從" [機器學習基石筆記-1](https://hackmd.io/s/ryxzB7LwN) "開始閱讀** >> >* **本文討論內容請參考: 機器學習基石第七講 : The VC Dimension** > >* **本篇所有圖片部分由筆者製作,其它均為機器學習基石課程內容講義** > --- 我們先來看一下上一篇的結論 : 存在 $Break\ point$ ( 好的$\mathbb{H}$ ) 且 $N$ 夠大的情況下 ( 好的$\mathbb{D}$ ),即使 $infinite\ \mathbb{H}$,演算法從$E_{in}$很小的條件下挑出一個 $g$ ( 好的$algorithm$ ),都一定會有一個有限上界可以確保$E_{in}$跟$E_{out}$夠接近。 ## About $\mathbb{H}$ 在我們往下討論這一講的內容前,我覺得我們必須花一點時間了解 $\mathbb{H}$。 在[機器學習基石筆記-1](https://hackmd.io/s/ryxzB7LwN)的時候,我們曾經有說,在探討 $\mathbb{H}$ 時,我們會把重點放在 $\mathbb{W}$的討論上,但是我們會什麼要探討 $\mathbb{H}$ 呢? $\mathbb{H}$ 對於我們的學習有什麼意義? $\mathbb{H}$ 是一個 hypothesis set,但是這些假設都是怎麼來的呢? 從一個二元分類問題來看,我們曾經有說過,一個平面中,任何一條「直線」都是一個 hypothesis $h\in\mathbb{H}$,所以 $\mathbb{H}$ 裡面就是裝著無限多條「直線」。因為我們預先假定了這個分類器是「直線」,所以 $\mathbb{H}$ 裡面不會有非線性的hypothesis在裡面。 所以,在我們進行 Machine Learning 時,我們會決定我們要用什麼樣子的分類器,而這也決定了我們的 $\mathbb{H}$ 長什麼樣子,當然, $\mathbb{W}$ 也在這時候決定了。 $Algorithm\ (model)\longleftrightarrow \mathbb{H}\longleftrightarrow \mathbb{W}$ 所以這就是為什麼往後的課程都會討論 $\mathbb{H}$ , 因為這樣的一個 hypothesis set 也足以代表了你的分類器。 ## OK,了解了 $\mathbb{H}$ 所代表的意義後,我們需要有一個衡量這個 $\mathbb{H}$ 的方法,於是有了以下 VC dimension 的定義 : * Vapnik-Chervonenkis Dimension $d_{vc}(\mathbb{H})\ or\ VC(\mathbb{H}):$ $The\ largest\ value\ of\ N\ s.t.\ m_\mathbb{H}(N)=2^N$ $d_{vc}(\mathbb{H})=$ 能被shatter的最大N值 $=\ break point\ k-1$ 根據這樣的定義我們可以知道以下幾個特性 : * * $N\leq d_{vc}\ \implies\ For\ some\ detaset\ \mathbb{D}\ with\ size\ N\ can\ be\ shatter\ by\ \mathbb{H}$ * $N>d_{vc}\implies\ \forall\ dataset\ \mathbb{D}\ with\ size\ N\ can't\ be\ shatter\ by\ \mathbb{H}$ * $N\geq 2\ , d_{vc}\geq 2\implies\ m_{\mathbb{H}}(N)\leq 2^{d_{vc}}$ | 資料空間 &分類型態 | Break Point | $m_\mathbb{H}(N)$ | O(N) |$d_{vc}$| | -------- | -------- | -------- | -------- |-----| | 1-D Positive ray | 2 | N+1 | $O(N)$|1| | 1-D Positive interval | 3 | $\frac{1}{2}N^2+\frac{1}{2}N+1$ | $O(N^2)$ |2| | Convex Set | $\infty$ | $2^N$ | -- |$\infty$ | 2-D Perceptron | 4 | $<2^N$ (in some cases) | $O(N^3)$ |3| --- 休息一下, 我們整理一下至今的幾個概念 : $m_{\mathbb{H}}(N)=$ N筆資料可以被切出幾個 $dichotomies$ $B(N,K)=$ N筆資料,且break point=K 的情況下,最大的$m_{\mathbb{H}}(N)$ $d_{vc}(\mathbb{H})=\ hypotesis\ \mathbb{H}$ 可以shatter的最大N值 前兩個概念,基本上是一個過渡概念,主要為了證明出 VC Bound ,真正的著眼點應該在$d_{vc}(\mathbb{H})$,因為它可以確實對 $\mathbb{H}$做出量化測量。 一個真正夠好的$hypothesis\ \mathbb{H}\implies d_{vc}(\mathbb{H})\ is\ finite\implies K\ exists\implies VC\ Bound\ exists\implies E_{in}\approx E_{out}$ > 在這裡,VC Dimension與 Algorithm , Distribution 或是 target function都無關 > --- 不管是直觀[^1]或經由繁雜的證明[^2],我們都不難確認 $d_{vc}(\mathbb{H})= d+1$ ( $d$ 為資料 $\mathbb{X}$ 的維度 ) 總的來說, $h\in \mathbb{H}\ ,\ h(\mathbb{X})=Sign(\sum\limits_{i=1}^{d}w_ix_i+w_0)$ * $h$ 是由 $(w_1,w_2,w_3,...,w_d)$ 所決定,我們可以將 $d_{vc}(\mathbb{H})=d+1$視為自由度 * $d_{vc}(\mathbb{H})$ 即為 $\mathbb{H}$ 的能力指標 * $\mid\mathbb{H}\mid=M\ is\ finite\implies$ 可以利用 $M$ 來控制VC bound $\mid\mathbb{H}\mid=M\ is\ infinite\implies$ 可以利用 $(2N)^{d_{vc}}$ 取代 $M$ 來控制 VC bound --- **[ Remark ] 讓我們來重新審視一下 VC Bound** $\mathbb{P}_{\mathbb{D}}[\![\mid E_{in}(g)-E_{out}(g)\mid>\epsilon]\!]\leq 4(2N)^{d_{vc}}e^{-\frac{1}{8}\epsilon^2N}$ $\Longleftrightarrow\mathbb{P}_{\mathbb{D}}[\![\mid E_{in}(g)-E_{out}(g)\mid\leq\epsilon]\!]\geq 1-\delta$ , where $\delta=4(2N)^{d_{vc}}e^{-\frac{1}{8}\epsilon^2N}$ 有很高的機率 ( $\geq1-\delta$ ),$E_{in}$ 與 $E_{out}$ 會很接近 ( $\mid E_{in}(g)-E_{out}(g)\mid\leq\epsilon$ ) $\because\delta=4(2N)^{d_{vc}}e^{-\frac{1}{8}\epsilon^2N}$ $\therefore\epsilon=\sqrt{\frac{8}{N}\ln(\frac{4(2N)^{d_vc}}{\delta})}$ $\therefore\ \mid E_{in}(g)-E_{out}(g)\mid\leq\epsilon=\sqrt{\frac{8}{N}\ln(\frac{4(2N)^{d_vc}}{\delta})}\overset{defn}{=}\Omega(N,\mathbb{H},\delta)=penalty\ for\ model$ $\Longrightarrow \begin{matrix} \underbrace{ E_{in}(g)-\sqrt{\frac{8}{N}\ln(\frac{4(2N)^{d_vc}}{\delta})} } \\ We\ don't\ care\ this\ part\end{matrix}\leq E_{out}(g)\leq E_{in}(g)+\sqrt{\frac{8}{N}\ln(\frac{4(2N)^{d_vc}}{\delta})}$ $\overset{High\ Prob.}{\Longrightarrow}E_{out}(g)\leq E_{in}(g)+\sqrt{\frac{8}{N}\ln(\frac{4(2N)^{d_vc}}{\delta})}$ ![](https://i.imgur.com/3ZZ099u.png) 從上面推導出的不等式,配合 $Error - d_{vc}$ 圖來看,我們會發現最好的解出現在中間。 [^1]:從 Linear Algebra 的角度來看,我們可以如下定義出「dimension」: $V\ is\ a\ vector\ space\ ,dim(V)=the\ cardinal\ number\ of\ B$ $where\ B\ is\ a\ basis\ of\ V\ i.e.\ V=span(B)\ and\ B\ is\ a\ linear\ independent\ set.$ 對比到我們的hypothesis set $\mathbb{H}$,之前我們才說過,$\mathbb{H}$ 可以唯一由 $\left\{w_0,w_1,...,w_d\right\}$ 決定,且 $w_i$之間互相獨立,如若我們把 VC dimension 看成是 $\mathbb{H}$ 這個空間的維度,那麼也可以把 $\left\{w_0,w_1,...,w_d\right\}$ 看成是他的一組基底,那麼 VC dimension很明顯的就是 $d+1$。 ![](https://i.imgur.com/CdqQidL.png) 其實意義上跟課程的這個圖是一樣的。 [^2]:試證明 $VC\ dimension=d+1$ <p.f> $Claim:d_{vc}\geq d+1$ $Assume\ \mathbb{D}=\left\{\mathbb{X}_0,\mathbb{X}_1,...,\mathbb{X}_d\right\}$ $where\ \mathbb{X}_0=(0,0,...,0)$ $\mathbb{X}_1=(1,0,...,0)$ $\vdots$ $\mathbb{X}_d=(0,0,...,1)$ <br> $\forall\ \mathbb{Y}=(y_0,y_1,...,y_d)\ where\ y_i\in\left\{+1,-1\right\}$ $\exists\ \mathbb{W}=(y_1-y_0,y_2-y_0,...,y_d-y_0)$ $s.t.\ h(\mathbb{X}_i)=Sign(\mathbb{W}^T \mathbb{X}_i + y_0)=Sign(y_i-y_0+y_0)=y_i\ ,\ \forall i=0,1,...,d$ $\implies$無論這個 $\mathbb{D}$ 怎麼分類 ( 意即不管 $\mathbb{X}_i$ 對應到怎樣的 $y_i$),我們都能找到一個 $h$ $\implies$ $\mathbb{D}$可以被$\mathbb{H}$ shatter $d_{vc}(\mathbb{H})\geq d+1$ <br> $Claim:d_{vc}\leq d+1\implies\mathbb{D}\ with\ size-d+2\ cannot\ be\ shatter$ $Suppose\ to\ the\ contrary\ that$ $\exists \mathbb{D}=\left\{\mathbb{X}_0,\mathbb{X}_1,...,\mathbb{X}_d,\mathbb{X}_{d+1},\mathbb{X}_{d+2}\right\}\ can\ be\ shattered$ <br> $\because\mathbb{D}\subseteq\mathbb{R}^d$ $\therefore \mathbb{X}_i=\sum\limits_{j\neq i}a_j\mathbb{X}_j$ $\implies\mathbb{W}^T \mathbb{X}_i=\sum\limits_{j\neq i}a_j\mathbb{W}^T\mathbb{X}_j$ <br> $\because \mathbb{D}\ can\ be\ shattered$ $\therefore \forall\ \mathbb{Y}=\left\{y_1,...,y_{d+2}\right\}\subseteq\left\{+1,-1\right\}$ (不管 $\mathbb{X}_k$ 怎麼被分類) $\exists\ \mathbb{W}\ s.t.\ y_k=Sign(\mathbb{W}^T\mathbb{X}_k)$ (我們都可以找到 $\mathbb{W}$ 來滿足) <br> 那我們指定一個特殊的分類 : $\mathbb{X}_i=y_i=-1$ 且 $\mathbb{X}_j=y_j=Sign(a_j)\ ,\ \forall j\neq i$ $\implies \mathbb{W}^T\mathbb{X}<0\ and\ (\mathbb{W}^T\mathbb{X}_j)\cdot(Sign(a_j))>0$ (兩者同號) $\implies\mathbb{W}^T\mathbb{X}=\sum\limits _{j\neq i}a_j\mathbb{W}^T\mathbb{X}_j>0$ (Contradiction!) <br> $\therefore\forall\mathbb{D}\ with\ size-d+2\ cannot\ be\ shattered$ $\implies d_{vc}(\mathbb{H})\leq d+1$