深度神經網絡繁多,各自的性能指標怎樣?
實際應用中,在速度、內存、準確率等各類約束下,應該嘗試哪些模型做爲backbone?git
有paper對各個網絡模型進行了對比分析,造成了一個看待全部主要模型的完整視角,其分析結果能夠在實踐中提供指導和幫助。github
這篇博客主要整合了其中3篇文章的結論,分別是網絡
文章1和3是paper,2是篇博客(對1的更新)。這3篇文章對圖像識別任務(ImageNet-1k)主要的state of the art網絡進行了對比分析,採用的指標有:性能
比較重要的結論有:學習
其餘一些更細緻的結論能夠參看論文,下面貼一下論文中的重要圖表。ui
論文An Analysis of Deep Neural Network Models for Practical Applications誕生於2016年5月,文中對當時的主要模型(從AlexNet到Inception-v4)進行了對比分析,獲得了那張流傳甚廣的ball chart。後來在2018年9月,文章做者Eugenio Culurciello在博客Analysis of deep neural networks中,對圖表進行了更新,包括了Shufflenet、Mobilenet、Xception、Densenet、Squeezenet等新近模型的對比分析,更新的ball chart以下:設計
圖中,blob的中心爲模型在圖表中的位置,blob的大小對應模型的參數量,橫軸爲操做次數,縱軸爲Top-1 center crop的準確率,越靠近左上角的模型計算複雜度越低、準確率越高,blob越小的模型參數越少。3d
論文An Analysis of Deep Neural Network Models for Practical Applications中,推理時間和操做數的關係圖表以下,不出意料的正相關
blog
論文Benchmark Analysis of Representative Deep Neural Network Architectures中,作了更詳細的對比,以下圖所示,左上角ResNet系的模型表現強勁,右上角NASNet-A-Large的準確率最高但計算複雜度也最大:
ip
參數利用率以下:
速度(幀率)與準確率以下,圖中的曲線爲特定硬件下幀率與性能的上界,橫軸爲幀率的對數,
模型參數量與內存佔用大小以下,GPU上內存佔用最少的也在0.6G以上,
對於每一個網絡具體的推理時間和內存佔用狀況能夠參見論文原文,有更詳細的描述。
給定硬件平臺上,在不一樣內存和速度約束下的最優模型以下:
Benchmark Analysis of Representative Deep Neural Network Architectures的代碼基於pytorch,詳見models-comparison.pytorch。