[21.09] PP-LCNet
探索速度的邊界
PP-LCNet: A Lightweight CPU Convolutional Neural Network
在輕量模型的競賽中,有幾個主要的方向。
- 其一:優化參數量,以減少模型大小。
- 其二:優化計算量(FLOPs),降低計算量以提高模型的速度。
- 其三:優化推理時間。
欸,等等?
優化參數量和計算量,難道和優化推理時間不是一回事嗎?
多數人會認為:優化參數量和計算量會自然地導致更快的推理時間?
- 答案是:不對!
舉個簡單的例子:
- 在 ResNet 中的跳躍連接
- 在 GoogleNet 中的 Inception 模塊
- 不同模組間的共用參數
以上操作,都會在同等參數量或運算量的前提下,增加推理時間。
其中原因來自於記憶體讀取和多分支架構間的互相等待。
不過在這篇論文中其實沒有很深入的討論這個問題,之後我們看到其他論文的時候再繼續深入討論。
定義問題
這篇論文只是想先解決幾個問題:
- 如何在不增加延遲的情況下促進網路學習更強的特徵表示?
- 提高 CPU 上輕量級模型精確度的要素有哪些?
- 如何有效結合不同策略在 CPU 上設計輕量級模型?