為了要讓 network model 可以儲存在空間有限的裝置中(例如行動裝置或穿戴式設備)這些裝置空間可能不夠放太深的網路,或是運算效能不夠快,無法即時運算,我們需要把NN縮小
以下列舉幾個可以讓network變小的方式:
Network Pruning
Knowledge Distillation
Parameter Quantization
Architecture Design
Dynamic Computation
把一個大的network的一些w或neuron剪掉,讓他變得比較小
因為我們通常相信今天train 出來的NN是 over-parameterized (裡面有很多參數是沒有用的)
所以可以從network 中移除掉一些從來沒用過的參數
既然我們要比較小的network,為什麼不一開始就train比較小的network就好?
因為小的network比較難train。只要network夠大,卡在 local minima 或settle point的問題會比較小
所以train一個大network再把它縮小是一個好的做法