---
# System prepended metadata

title: Ch16 Three Learning Principles
tags: [機器學習基石下：方法篇]

---

---
tags: 機器學習基石下：方法篇
---

Ch16 Three Learning Principles
===

## Content

[TOC]

## [Slides & Videos](https://www.csie.ntu.edu.tw/~htlin/mooc/)


## [Occam's Razor](https://www.coursera.org/learn/ntumlone-algorithmicfoundations/lecture/RhKDO/occams-razor)

### Occam's Razor
![](https://i.imgur.com/glFcdXR.png)

### Occam's Razor for Learning
![](https://i.imgur.com/9Ivik5W.png)


### Simple Model
![](https://i.imgur.com/o1UJMtK.png)
- simple hypothesis $h$
    - 看起來簡單
    - 只需要少數的 parameter 就可描述
- simple model $\mathcal H$
    - 只有少量的 hypothesis
- 事實上兩者是有關連的
    - 如果 $\mathcal H$ 裡面只有 $2^l$ 種 hypothesis
    - 那麼 $h$ 就可以被 $l$ 個 bits 給描述。


### Simple is Better
![](https://i.imgur.com/sauY1oN.png)
- 使用簡單的模型，就比較可以下結論說當我模型可以分開，那資料應該是有規律的。
    - 如果今天是用複雜的模型，你就比較沒辦法說資料是有規律還是沒規律的。
- 優先使用最簡單的 (linear的) model。


### Fun Time: 
![](https://i.imgur.com/bCJP4ph.png)
- 注意 growth function 就是 $\mathcal H$ 所能做出的最多 dichotomies 數量。



## [Sampling Bias](https://www.coursera.org/learn/ntumlone-algorithmicfoundations/lecture/tBEvh/sampling-bias)

### Presidential Story
![](https://i.imgur.com/zWAYnlx.png)
- 大選後，報紙上寫說根據電話民調，Dewey 支持率比 Truman 高
- 照片上拿著報紙笑得很開心的是 Truman



### The Big Smile Came from
![](https://i.imgur.com/ZFal1W3.png)
- 結果是 Truman 贏了
- 當時電話很貴啊，所以 sample 到的都是有錢人，電話民調只反映了有錢人的意向。


### Sampling Bias
![](https://i.imgur.com/JI04fMA.png)
- 訓練跟測試要來自同一個分布，才會學得好


### Sampling Bias in Learning
![](https://i.imgur.com/E1JAo8L.png)
- 田神之前參加了 Netflix 辦的一個比賽，只要比原本的推薦系統強 10%，就有 100萬美金。
- 田神第一次就在 validation set 提高 13%
- 但是 testing 直接爆掉
- 因為他 validation set 是從 training set 隨機抽樣
- 但是 training 和 testing set 是有時間順序的，testing 是最新的幾部電影啊，例如前 7 部是 taining，後 3 部是 testing。
- 也就是現在 validation 的分布跟 testing 的分布就不一樣。


### Dealing with Sampling Bias
![](https://i.imgur.com/YagY8w2.png)
- 可是實務上很容易就 training 跟 testing 不 match 啊那我們要怎麼抽出跟 testing 同分布的 validation set？
- 重點是要了解 testing 的環境，然後讓 validation 的環境盡量跟 testing 接近。
    - training 的時候可以加重比較新的 example 的權重
    - validation 可以使用比較新的 data
- 銀行判斷要不要給信用卡，像這樣的系統上線就需要調整，不然容易出問題。


## [Data Snooping](https://www.coursera.org/learn/ntumlone-algorithmicfoundations/lecture/Tdxh3/data-snooping)

- 之前已經說過，偷看資料這件事情是很危險的，因為腦袋的 VC dimension 也要計算進去。
- 其實偷看資料並不局限於 visualization，今天因為這些資料所做的任何決策，都代表了偷看資料這件事
    - 因為做決策同時也代表做選擇啊，model complexity 的代價又升高了。


### Data Snooping by Mere Shifting-Scaling
![](https://i.imgur.com/PJh5Vi5.png)
- 今天即使只是把 testing data 拿來跟 training data 一起做縮放的動作，那還是等同於偷看了資料
- 因為這樣就間接地知道了 testing data 的統計量 (像是 mean、variance 之類)


### Data Snooping by Data Reusing (Research Scenario)
![](https://i.imgur.com/lBfGT6v.png)
- 另一個是 論文 的 data snooping
- 後人一直根據前人的論文做改善，如果把這些所有論文加起來，其實就是一篇大的論文，VC dimension 是所有這些 hypothesis set 的加總！
    - 越新的論文，受到的這些 snooping 的汙染越深
- snooping 發生在哪裡？
    - 你看前人的論文，間接的偷看到了資料的 performance。
    - 你試了一堆方法沒有得到好的 performance，也間接看了 data。
- 做這行有個行話
    > if you torture the data long enough, it will confess.
    - 有一千篇論文都在這 dataset 上做實驗，那你新的論文說比較好，其實只是某種形式上的 overfitting。


### Dealing with Data Snooping
![](https://i.imgur.com/dmILbbM.png)
- data snooping 非常難避免，除非你永遠都不看 testing data，直到最後真的要測試(上線)才拿出來看。
- 折衷作法：小心地使用 validation
- 盡量避免用 data 來做決定
    - 你可以加入你的專業知識，但不要看了 data 才在那邊加。
- 要時時刻刻存著懷疑，讀論文、看研究結果、自己做出的結果，都要保持懷疑
- 思考這些做出結果的過程，到底受到了多少的汙染，這是經驗上要慢慢累積。
- one secret to winning KDDCups: careful balance between
    - data-driven modeling (小心的偷看資料)
        - > Q: WAAAT 不懂
    - validation (盡量不做 snooping 而靠 validation 來做合理的選擇)


## [Power of Three (Summary)](https://www.coursera.org/learn/ntumlone-algorithmicfoundations/lecture/gpaUS/power-of-three)

### Three Related Fields
![](https://i.imgur.com/LYAHu6c.png)


### Three Theoretical Bounds
![](https://i.imgur.com/jqndMuA.png)
- Hoeffding
    - one hypothesis
    - 用在 testing/verifying
- Finite-Bin Hoeffding
    - $M$ hypotheses
    - 用在 validation
- VC bound
    - all $\mathcal H$
    - 用在 training


### Three Linear Models
![](https://i.imgur.com/5H2YGLI.png)


### Three Key Tools
![](https://i.imgur.com/6aw2YGs.png)


### Three Learning Principles
![](https://i.imgur.com/rxQhNcq.png)


### Three Future Directions
![](https://i.imgur.com/JSMS7gg.png)
- more feature transform
- more regularization
- less label (unsupervised learning)
- 很多都在機器學習技法會教到


### Fun Time: ???
![](https://i.imgur.com/jFylsse.png)
- 1126 這個數字到底為什麼一直出現XDDDD


### Summary
![](https://i.imgur.com/WUUhchZ.png)