Training vs. Testing
Recap
統整一下前面的幾個章節: 對於 batch & supervised binary classification 的問題而言, 而後者可以經由兩個階段來取得
- training:
- testing:
Trade-off on M
現在我們可以歸納出兩個問題:
- 如果確保 和 足夠接近?
- 如何讓 足夠小?
而這兩個問題都和 (size of ) 有關:
- small :
- Yes: 誤差
- No: 選擇太少
- large :
- No
- Yes: 選擇很多
我們要如何選擇剛好的 呢?
Effective Number of Lines
Union Bound is Over-estimated
在 Lecture 4,我們用了 union bound 的方法來計算誤差的 upper bound:
其中 代表 bad event,也就是對於 而言所有會導致 的 。但是實際上當 時, 和 會有很多重疊的部分。為了把這些多算的重疊部分去掉,我們或許可以將類似的 歸在同一組。
How Many Lines Are There?
Effective Number of Lines
從上面可以發現,當有多個 inputs 的時候,我們必須考慮點重合在同一條線的情況,而我們將「 個 inputs 最多能畫出來的線」叫做「effective number of lines」。
由於 effective number of lines 一定會小於等於 ,因此我們有機會將 infinite 的 歸納成 finite 數量的 group of ,這樣就能夠用 effective number 來代替原本的 (原本的公式):
Dichotomies
首先,我們將
稱為 dichotomy,也就是限定 inputs 的 hypothesis。而 dichotomies
則代表的就是所有對應 inputs 的 dichotomy 的集合。
所以我們可以用 dichotomies 的 大小 (有 upper bound ) 來代替原本 的大小 (可能是 infinte)。
Growth Function
由於 會跟 inputs 有關,所以我們計算時都會考慮最壞的情況,也就是取可能的最大值:
這個被叫做 growth function,也就是計算「當 input 成長時,dichotomies 的大小如何成長」。
計算 growth function 的例子:
當 N 個 inputs 的任意組合 都有一個對應的 dichotomy 可以準確分類他們,也就是 ,這時候我們就說這個 可以 shatter 這 N 個 inputs。
Break point
事實上,shatter 的情況是我們最不樂見的,這代表我們沒辦法「刪除」某些 input 組合來減少 dichotomy 的數量,因為每一種組合都可以被 分類。
現在來看看 2D perceptron 的例子:
- : 可以被 shatter
- : 部分情況可以被 shatter
- : 部分情況可以被 shatter
- : 沒有任何情況可以被 shatter (不管怎樣都只能找出 種 dichotomy)
當 個 inputs 的組合在任何情況下都不能被 shatter 時,也就是 ,我們就說這個 是 break point,像是 2D perceptron 的 break point 就是 ,通常我們只會考慮最小的 break point。
統整前面提過的例子:
positive rays | break point at 2 | |
positive intervals | break point at 3 | |
convex sets | no break point (不管 N 是多少都會被 shatter) | |
2D perceptrons | break point at 4 | in some cases |
可以發現當有 break point 的時候,,這部分的證明在 lecture 6 (教授說是 optional,所以我就沒有做筆記了)。