神經網絡模型壓縮

神經網絡的壓縮

總共類別

    • 低秩近似(low-rank Approximation)
    • 網絡剪枝(network pruning)
    • 網絡量化(network quantization)
    • 知識蒸餾(knowledge distillation)
    • 緊湊網絡設計(compact Network design)
    • 網絡結構搜索(Neural Architecture Search)

一些信息

  • 論文整理

網絡加速和壓縮技術論文整理 - 神評網
http://www.ishenping.com/ArtInfo/333708.html

用於深度神經網絡壓縮和加速的論文
https://www.ctolib.com/chester256-Model-Compression-Papers.html

近幾年頂級會議相關剪枝的文章
xuarehere/Awesome-Pruning: A curated list of neural network pruning resources.

https://github.com/xuarehere/Awesome-Pruning
嵌入式/壓縮神經網絡相關工作彙總 - Python開發社區 | CTOLib碼庫

https://www.ctolib.com/mip/ZhishengWang-Embedded-Neural-Network.html

網絡壓縮最新進展:2019年最新文章概覽 - 雲+社區 - 騰訊雲
https://cloud.tencent.com/developer/article/1459286

嵌入式/壓縮神經網絡相關工作彙總 - Python開發社區 | CTOLib碼庫
https://www.ctolib.com/ZhishengWang-Embedded-Neural-Network.html#articleHeader27

EfficientDNNs - 深度網絡壓縮/加速最新進展列表 - Python開發社區 | CTOLib碼庫
https://python.ctolib.com/MingSun-Tse-EfficientDNNs.html#articleHeader9

awesome-model-compression
https://github.com/ChanChiChoi/awesome-model-compression

Neural Network Pruning Papers
https://jackwish.net/2019/neural-networks-pruning-papers.html

【綜述】神經網絡壓縮綜述 | 極市高質量視覺算法開發者社區
http://bbs.cvmart.net/articles/313/shen-jing-wang-luo-ya-suo-zong-shu

  • 綜述

模型壓縮總覽 - 簡書
https://www.jianshu.com/p/e73851f32c9f

深度學習模型壓縮與加速綜述
http://www.tensorinfinity.com/paper_167.html

深度學習模型壓縮與加速綜述 - weixin_44474718的博客 - CSDN博客
https://blog.csdn.net/weixin_44474718/article/details/90900044

(各個網絡的參數表等關鍵信息,PPT可用)
【一文看懂】深度神經網絡加速和壓縮新進展年度報告
http://www.sohu.com/a/232047203_473283

(書籍)解析CNN-深度學習實踐手冊

(1條消息)深度學習模型壓縮方法綜述(一) - XlyPb - CSDN博客
https://blog.csdn.net/wspba/article/details/75671573

(各種論文的思想整理)
神經網絡壓縮綜述 - yuanCruise - CSDN博客
https://blog.csdn.net/qiu931110/article/details/80189905

(模型壓縮方法與技術分類)
模型壓縮 方法彙總和梳理 - wc996789331的博客 - CSDN博客
https://blog.csdn.net/wc996789331/article/details/83750694

(1條消息)系統學習深度學習(二十九)–模型壓縮_網絡_工作筆記-CSDN博客
https://blog.csdn.net/App_12062011/article/details/81665140

  • 其他

https://leolau94.github.io/tags/%E6%A8%A1%E5%9E%8B%E5%8E%8B%E7%BC%A9%E4%B8%8E%E5%8A%A0%E9%80%9F/

《深度學習筆記》深度學習中模型model的剪枝筆記 - 碼農教程
http://www.manongjc.com/article/26024.html

  • 總結或者入門項目
  • 強烈推薦
  • 強烈推薦
  • 強烈推薦

This is a curated list of tutorials, projects, libraries, videos, papers, books and anything related to the incredible PyTorch. Feel free to make a pull request to contribute to this list.
https://www.ritchieng.com/the-incredible-pytorch/

https://www.deeplearningwizard.com/deep_learning/readings/

相關工作

這個主要是收集一些論文上的第二部分,介紹模型壓縮的相關領域以及相關的文章,方便後期
1、查閱  
2、寫論文做準備
3、收集整理相關工作

剪枝

Data Dependent Filter Pruning

[7] A. Dubey, M. Chatterjee, and N. Ahuja. Coreset-based neural network compression. In
ECCV, 2018
. 2

[23] Z. Liu, J. Li, Z. Shen, G. Huang, S. Yan, and C. Zhang.
Learning efficient convolutional networks through network slimming. In ICCV, 2017

[25] J.-H. Luo, J. Wu, and W. Lin. ThiNet: A filter level pruning method for deep neural network compression. In ICCV, 2017. 2, 5, 6, 7

[16] Y. He, X. Zhang, and J. Sun. Channel pruning for accelerating very deep neural networks. In ICCV, 2017. 2, 6, 7

[27] P. Molchanov, S. Tyree, T. Karras, T. Aila, and J. Kautz.
Pruning convolutional neural networks for resource efficient transfer learning. In ICLR, 2017. 2

[7] A. Dubey, M. Chatterjee, and N. Ahuja. Coreset-based neural network compression. In ECCV, 2018. 2

[33] X. Suau, L. Zappella, V. Palakkode, and N. Apostoloff. Principal filter analysis for guided network compression. arXiv preprint arXiv:1807.10585, 2018. 2

[39] R. Yu, A. Li, C.-F. Chen, J.-H. Lai, V. I. Morariu, X. Han, M. Gao, C.-Y. Lin, and L. S. Davis. NISP: Pruning networks using neuron importance score propagation. In CVPR, 2018.
1, 2, 6, 7

[37] D. Wang, L. Zhou, X. Zhang, X. Bai, and J. Zhou. Exploring linear relationship in feature map subspace for convnets compression. arXiv preprint arXiv:1803.05729, 2018. 2

[46] Z. Zhuang, M. Tan, B. Zhuang, J. Liu, Y. Guo, Q. Wu, J. Huang, and J. Zhu. Discrimination-aware channel pruning for deep neural networks. In NIPS, 2018. 2

[14] Y. He and S. Han. ADC: Automated deep compression and acceleration with reinforcement learning. arXiv preprint arXiv:1802.03494, 2018. 2

[18] Q. Huang, K. Zhou, S. You, and U. Neumann. Learning to prune filters in convolutional neural networks. In WACV, 2018. 2

[22] S. Lin, R. Ji, C. Yan, B. Zhang, L. Cao, Q. Ye, F. Huang, and D. Doermann. Towards optimal structured cnn pruning via generative adversarial learning. In CVPR, 2019. 2

  • 參考文獻
    Filter Pruning via Geometric Median for Deep Convolutional Neural Networks Acceleration

壓縮分類

  • 壓縮分類相關參考文獻
    模型壓縮總覽 - 簡書
    https://www.jianshu.com/p/e73851f32c9f

《解析CNN-深度學習手冊》

模型壓縮 方法彙總和梳理 - wc996789331的博客 - CSDN博客
https://blog.csdn.net/wc996789331/article/details/83750694

前段壓縮

後端壓縮

剪枝

剪枝綜述與介紹類

剪枝後這個深度神經網絡速度提高了 3 倍,體積縮小了 4 倍 | 雷鋒網
https://www.leiphone.com/news/201908/tQZbycuwI4f5eCbO.html?utm_source=tuicool&utm_medium=referral

  • 綜述類的論文

2017
A Survey of Model Compression and Acceleration for Deep Neural Networks


Model compression as constrained optimization, with application to neural nets. Part I: general framework


Model compression as constrained optimization, with application to neural nets. Part II: quantization


2018
Recent Advances in Efficient Computation of Deep Convolutional Neural Networks, [arxiv '18]


A Survey of Model Compression and Acceleration for Deep Neural Networks [arXiv '17]

Importance Estimation for Neural Network Pruning
該論文說明了剪枝的發展歷程

  • 幾篇論文的通讀與相關的代碼介紹
    深度學習剪枝 - jacke121的專欄 - CSDN博客
    https://blog.csdn.net/jacke121/article/details/79450321

論文總結 - 模型剪枝 Model Pruning | 來呀,快活呀~
https://xmfbit.github.io/2018/10/03/paper-summary-model-pruning/

相關工作介紹了幾個不同的領域
Learning Efficient Convolutional Networks through Network Slimming - h__ang的博客 - CSDN博客
https://blog.csdn.net/h__ang/article/details/89376079

閒話模型壓縮(Model compression)之網絡剪枝(Network pruning)篇 - 世事難料,保持低調 - CSDN博客
https://blog.csdn.net/jinzhuojun/article/details/100621397

針對文章

Deep Compression Compressing Deep Neural Networks with Pruning, Trained Quantization and Huffman coding

模型壓縮:Deep Compression - TensorSense的博客 - CSDN博客
https://blog.csdn.net/u011995719/article/details/79126531#實驗分析之壓縮幾十倍從何而來

剪枝的粒度分級


通常分爲結構化與非結構化

但是從單個權重到卷積核層面又有許多不同的分類
神經網絡壓縮(6):Exploring the Regularity of Sparse Structure in Convolutional Neural Networks_網絡_cookie_234的博客-CSDN博客
https://blog.csdn.net/cookie_234/article/details/73917978

剪枝推薦代碼


入門代碼:
NeuralNetPrunning/mnistDNN.ipynb at master · PatilSanket/NeuralNetPrunning https://github.com/PatilSanket/NeuralNetPrunning/blob/master/mnistDNN.ipynb
對應文章

[14] H. Hu, R. Peng, Y. W. Tai, and C. K. Tang. Network trimming: A data-driven neuron pruning approach towards efficient deep architectures. In arXiv preprint arXiv:1607.03250, pages 1–9, 2016. 2, 5, 7

剪枝的常用技術

  • 領域學者
    韓鬆,斯坦福博士
    何凱明

  • 正則化的剪枝

提到文章該技術的文章

Title Venue Type Code
Rethinking the Smaller-Norm-Less-Informative Assumption in Channel Pruning of Convolution Layers ICLR F github
  • 相關的正則化剪枝文章
    正則化
    【機器學習】一文讀懂正則化與LASSO迴歸,Ridge迴歸 - 齊在的專欄 - CSDN博客
    https://blog.csdn.net/pxhdky/article/details/82960659

L0細粒度剪枝

Title Venue Type Code
LEARNING SPARSE NEURAL NETWORKSTHROUGH L0 REGULARIZATION ICLR 2018 W
  • 稀疏正則化[20,22,33]

[20] V. Lebedev and V. Lempitsky. Fast convnets using group-wise brain damage. In CVPR, pages 2554–2564, 2016

[22] H. Li, A. Kadav, I. Durdanovic, H. Samet, and H. P. Graf.
Pruning filters for efficient convnets. ICLR, 2017.

[23] Z. Liu, J. Li, Z. Shen, G. Huang, S. Yan, and C. Zhang.
Learning efficient convolutional networks through network slimming. In ICCV, 2017.

L1

  • Note that because NN Slimming requires imposing L1 loss on the scaling weights of BatchNorm (Ioffe &
    Szegedy, 2015)
    提到的該方法的文章

EigenDamage: Structured Pruning in the Kronecker-Factored Eigenbasis

  • Pruning Filters for Efficient ConvNets
    通道剪枝,結構化

拓展閱讀*
《Learning Structured Sparsity in Deep Neural Networks》論文筆記 - m_buddy的博客 - CSDN博客 https://blog.csdn.net/m_buddy/article/details/85949813

  • Ariel Gordon, Elad Eban, Ofir Nachum, Bo Chen, Hao Wu, TienJu Yang, and Edward Choi. Morphnet: Fast & simple resourceconstrained structure learning of deep networks. In Proc. of CVPR, 2018.
    提到的該方法的文章

Structured Pruning of Neural Networks with Budget-Aware Regularization

  • 韓等人。 (2015)通過使用強大的正則化項進行微調並使用低於預定閾值的值丟棄參數來引入更簡單的方法

Pruning Convolutional Neural Networks for Resource Efficient Inference

  • Channel Pruning for Accelerating Very Deep Neural Networks 算法筆記 - AI之路 - CSDN博客
    https://blog.csdn.net/u014380165/article/details/79811779
    這個與《Pruning Filters for Efficient ConvNets》論文進行了對比

一個最簡單的啓發就是按參數(或特徵輸出)絕對值大小來評估重要性,然後用貪心法將那部分幹掉,這類稱爲magnitude-based weight pruning。如2016年經典論文《Pruning Filters for Efficient ConvNets》中把權重的絕對值作爲衡量其重要性的手段。但訓練出來的權重如果不稀疏不利於pruning怎麼辦,常用的辦法是在訓練時loss中加regularizer,尤其是L1 regularizer,從而使得權重稀疏化。對於structured pruning來說,我們想獲得結構化的稀疏權重,因此常用group LASSO來得到結構化的稀疏權重,如2015-16年的論文《Learning Structured Sparsity in Deep Neural Networks》和《Sparse Convolutional Neural Networks》等。2017年論文《Learning Efficient Convolutional Networks Through Network Slimming》通過一種巧妙的方法,基於BN(Batch Normalization)層的廣泛使用,在BN層加入channel-wise scaling factor 並對之加L1 regularizer使之稀疏,然後裁剪scaling factor值小的部分對應權重。另外,重要性評估也可以針對activation(激活值,即激活函數的輸出),當然就算是針對activation最後也會體現在權重的裁剪上。一般來說,像Relu這樣的激活函數會傾向產生稀疏的activation;而權重相對而言不太容易是稀疏的(當前,如前所說,我們可以通過regularizer這種外力使它變得稀疏)。從這種意義上說,activation更適合pruning。如2016年論文《Network Trimming: A Data-Driven Neuron Pruning Approach towards Efficient Deep Architectures》中提出採用Average Percentage of Zeros,即APoZ來衡量activation的重要性。它定義爲activation中爲0的比例。
————————————————
版權聲明:本文爲CSDN博主「ariesjzj」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/jinzhuojun/article/details/100621397

  • 見文章《 Channel Pruning for Accelerating Very Deep Neural Networks》
    最近的一些作品[49,1,17](雖然基於訓練)也介紹了 -norm或LASSO。但是,我們必須強調我們使用不同的配方。他們中的許多人將稀疏正規化引入訓練損失,而不是明確地解決LASSO。其他工作[1]解決了LASSO,而在優化過程中未考慮特徵圖或數據。由於存在這些差異,我們的方法可以應用於推理時間。
    通天塔 Channel Pruning for Accelerating Very Deep Neural Networks
    http://tongtianta.site/paper/12125

最近的一些作品[49,1,17](雖然基於訓練)也介紹了 -norm或LASSO。但是,我們必須強調我們使用不同的配方。他們中的許多人將稀疏正規化引入訓練損失,而不是明確地解決LASSO。其他工作[1]解決了LASSO,而在優化過程中未考慮特徵圖或數據。由於存在這些差異,我們的方法可以應用於推理時間。

  • [1] J. M. Alvarez and M. Salzmann. Learning the number of neurons in deep networks. In Advances in Neural Information Processing Systems, pages 2262–2270, 2016. 1, 2, 3, 6
    [1] J. M. Alvarez和M. Salzmann。學習深層網絡中的神經元數量。在神經信息處理系統的進展,第2262-2270頁,2016.1,2,3,6

  • [17] S. Han, J. Pool, J. Tran, and W. Dally. Learning both weights and connections for efficient neural network. In Advances in Neural Information Processing Systems, pages 1135–1143, 2015. 1, 2, 3
    [17] S. Han,J。Pool,J。Tran和W. Dally。學習有效神經網絡的權重和連接。在神經信息處理系統的進展,第1135-1143頁,2015.1,2,3

論文《Learning both Weights and Connections for Efficient Neural Network》閱讀筆記 - m0_38082419的博客 - CSDN博客
https://blog.csdn.net/m0_38082419/article/details/78684933
https://github.com/jack-willturner/DeepCompression-PyTorch/blob/master/prune.py

  • [49] W. Wen, C. Wu, Y. Wang, Y. Chen, and H. Li. Learning structured sparsity in deep neural networks. In Advances In
    [49] W. Wen,C。Wu,Y。Wang,Y。Chen和H. Li。學習深度神經網絡中的結構化稀疏性。在進步中
    Neural Information Processing Systems, pages 2074–2082, 2016. 1, 2, 3

  • (i) The subproblem of β. In this case, W is fixed. We solve β for channel selection. This problem can be solved by LASSO regression [47, 5], which is widely used for model selection.

[5] L. Breiman. Better subset regression using the nonnegative
garrote. Technometrics, 37(4):373–384, 1995.
[47] R. Tibshirani. Regression shrinkage and selection via the
lasso. Journal of the Royal Statistical Society. Series B
(Methodological), pages 267–288, 1996

通天塔 Channel Pruning for Accelerating Very Deep Neural Networks
http://tongtianta.site/paper/12125

  • 關於BN層的L1
    相關的拓展知識:PCA,數據白化處理
    https://blog.csdn.net/jinzhuojun/article/details/100621397

L2

  • On Implicit Filter Level Sparsity in Convolutional Neural Networks
    該文章還引出一下的文章,也是使用了l2 權重稀疏剪枝
    Ilya Loshchilov and Frank Hutter. Fixing weight decay regularization
    in adam. arXiv preprint arXiv:1711.05101, 2017.

l1 + L2
核稀疏化 - weilongyitian - 博客園
https://www.cnblogs.com/missidiot/p/9868962.html

  • 其他參考資料
    [視頻講解]史上最全面的正則化技術總結與分析! - 燕哥帶你學算法 - CSDN博客
    https://blog.csdn.net/SzM21C11U68n04vdcLmJ/article/details/78547038

深度學習剪枝 - jacke121的專欄 - CSDN博客
https://blog.csdn.net/jacke121/article/details/79450321

【剪枝壓縮 深度學習】 - CSDN
https://www.csdn.net/gather_23/MtTaggysMDAyNi1ibG9n.html

  • 是否需要被裁剪的標準:AP0Z(零的個數多少來決定裁剪)

根據激活函數輸出爲零所佔百分比的大小決定剪枝
論文品讀:Network Trimming: A Data-Driven Neuron Pruning Approach towards Efficient Deep Architectures - hsqyc的博客 - CSDN博客
https://blog.csdn.net/hsqyc/article/details/83651795

paper reading之卷積神經網絡壓縮(一) - iMuMu的博客 - CSDN博客
https://blog.csdn.net/sinat_30372583/article/details/79634863

L1,L2正則化代碼
https://stackoverflow.com/questions/42704283/adding-l1-l2-regularization-in-pytorch

https://discuss.pytorch.org/t/how-to-add-a-l2-regularization-term-in-my-loss-function/17411/7

重要性評價
《Importance Estimation for Neural Network Pruning》
CVPR 2019 Open Access Repository http://openaccess.thecvf.com/content_CVPR_2019/html/Molchanov_Importance_Estimation_for_Neural_Network_Pruning_CVPR_2019_paper.html

Pruning Networks Using Neuron Importance Score Propagation

CVPR 2018 Open Access Repository http://openaccess.thecvf.com/content_cvpr_2018/html/Yu_NISP_Pruning_Networks_CVPR_2018_paper.html

常用的剪枝模型

  • lenet-5

  • vgg16

Title Venue Type Code baseline test
Pruning Filters for Efficient ConvNets ICLR F github 94.17
  • vgg19
    | Title | Venue | Type | Code |baseline test| |:--------|:--------😐:--------😐:--------😐:--------😐 | Pruning Filters for Efficient ConvNets| ICLR | F | github| |

  • resnet 110,56,34,20

  • PreResNet29

  • alexnet

通天塔 Pruning Convolutional Neural Networks for Resource Efficient Inference
http://tongtianta.site/paper/9276

  • Inception
    《Channel Pruning for Accelerating Very Deep Neural Networks》論文筆記 - m_buddy的博客 - CSDN博客
    https://blog.csdn.net/m_buddy/article/details/85315954

一些名詞

  • 非結構網格
    簡單的理解大概一個是有組織規模 一個是零散的吧
    什麼事結構網格,什麼是非結構網格?各有什麼優缺點_百度知道
    https://zhidao.baidu.com/question/1576697533258496660.html


    非結構網格_百度百科
    https://baike.baidu.com/item/%E9%9D%9E%E7%BB%93%E6%9E%84%E7%BD%91%E6%A0%BC/1666866

現在主流的稀疏化方法:

(1條消息)模型壓縮之剪枝小綜述 - daniaokuye的專欄 - CSDN博客 https://blog.csdn.net/daniaokuye/article/details/80751100

網絡剪枝和共享 - weilongyitian - 博客園
https://www.cnblogs.com/missidiot/p/9869176.html

讓CNN跑得更快,騰訊優圖提出全局和動態過濾器剪枝 | 機器之心 https://www.jiqizhixin.com/articles/2018-07-11-2

非結構化方法

1) han song提出的方法,低於某一閾值的歸零,但是這種非結構化的稀疏矩陣現有的庫很難處理,需要專門設置。【S. Han, J. Pool, J. Tran, andW. Dally. Learning both weights andconnections for efficient neural network. In NIPS, pages 1135–1143, 2015.】。
Training sparse neural networks也是一種非結構化的方法,用到了gate的方法,同樣的方式在其他論文中稱爲mask或者高級一些應用方式——attention的方式。

結構化方法

這種方式得到的稀疏矩陣是非結構化矩陣,接下來的方法都是或基本都是結構化稀疏的方法。

  • 優點
    深度神經網絡剪枝方法研究_姜春暉(博) P77

剪枝流程

韓鬆提出來的剪枝3部曲

大多數的剪枝採用的是韓鬆的那篇論文提出的剪枝三部曲
1、訓練
2、剪枝
3、重訓練

迭代式剪枝

1、訓練
2、剪枝

  • 迭代式剪枝 :訓練權重——剪枝——訓練權重
    大多數的剪枝方法都屬於這個模式。這裏給一個典型的論文——
    2015NIPS-Learning both weights and connections for efficient neural network
    動態剪枝:剪枝與訓練同時進行,一般指稀疏約束的方法
    具體做法是在網絡的優化目標中加入權重的稀疏正則項,使得訓練時網絡的部分權重趨向於0,而這些0值正是剪枝對象。

2015NIPS-Dynamic Network Surgery for Efficient DNNs
2017ICCV-Learning Efficient Convolutional Networks through Network Slimming-上面稀疏約束部分提到過

作者:CodePlayHu
鏈接:https://www.jianshu.com/p/e73851f32c9f
來源:簡書
著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。

Pruning Convolutional Neural Networks For Resource Efficient Inference - cdknight_happy的專欄 - CSDN博客
https://blog.csdn.net/cdknight_happy/article/details/90166589

[2] Y. Chauvin. A back-propagation algorithm with optimal use
of hidden units. In NIPS, 1989

[22] Y. LeCun, J. S. Denker, S. Solla, R. E. Howard, and L. D.
Jackel. Optimal brain damage. In NIPS, 1990

[27] P. Molchanov, S. Tyree, T. Karras, T. Aila, and J. Kautz.
Pruning convolutional neural networks for resource efficient
transfer learning. ICLR, 2017


  • OICSR Out-In-Channel Sparsity Regularization for Compact Deep Neural Networks.pdf

  • Learning Efficient Convolutional Networks through Network Slimming

深度學習剪枝 - jacke121的專欄 https://blog.csdn.net/jacke121/article/details/79450321

網絡剪枝算法

透徹理解神經網絡剪枝算法 - baidu_15238925的博客 - CSDN博客
https://blog.csdn.net/baidu_15238925/article/details/81291209

嵌入式/壓縮神經網絡相關工作彙總 - Python開發社區 | CTOLib碼庫
https://www.ctolib.com/mip/ZhishengWang-Embedded-Neural-Network.html

官方剪枝

  • tensorflow
    tensorflow/tensorflow/contrib/model_pruning at master · tensorflow/tensorflow
    https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/model_pruning

  • pytorch
    https://nervanasystems.github.io/distiller/index.html#distiller-documentation

總結類文章

  • 模型壓縮那些事(一) - 知乎 (從模型加速)
    https://zhuanlan.zhihu.com/p/28439056

剪枝的一些思路個人思考

  • L0 正則化剪枝後,能否進行卷積核剪枝? 這個是否有效呢?
    參考謝**師兄論文

  • 2019/08/29 11:06
    漸進的自動調節的pruning策略

《To prune, or not to prune: exploring the efficacy of pruning for model compression 》

根據這個文章的方式,能否進行逐層修剪漸進式剪枝:
每一層進行修剪,如果loss減低了,那麼繼續修剪,直到該層修剪時,出現loss損失值較爲明顯的上升的情況停止
然後對下一層進行修剪

  • 模型壓縮的主要的評價指標是什麼?目的是什麼?
    目的是模型壓縮,評價指標就是用來說明目的的,那麼主要採用的評價標準是什麼?

    1、參數量

    2、flops

    3、

相關剪枝博客推薦

  • (宮***師兄博客)
    標籤: modelcompression | LuckyGong’s BLOG
    http://blog.luckygong.cn/tag/#/modelcompression

  • 論文總結 - 模型剪枝 Model Pruning | 來呀,快活呀~
    https://xmfbit.github.io/2018/10/03/paper-summary-model-pruning/

剪枝的相關評價指標

主要評價指標:
準確率
運行時間
模型大小

  • FLOPS
    這個主要是在卷積核中剪枝用的比較多。而 “裁剪前後的參數量 ” 這個用的會少一些,這是由於在做卷積核剪枝的時候,不對全連接層做剪枝,而相比來說“全連接層”參數非常多,vgg16 似乎佔 90%左右,而“卷積核” 操作運算主要還是涉及FLOPS浮點運算

裁剪前後的參數量

有待加入的指標:
乘加 (Multiply-and-accumulate )操作量
推導時間
數據吞吐量
硬件能耗

模型輕量化

(好)
輕量化卷積神經網絡:SqueezeNet、MobileNet、ShuffleNet、Xception - TensorSense的博客 - CSDN博客
https://blog.csdn.net/u011995719/article/details/79100582

四大輕量化模型對比(轉) - 體態的滑翔機 - 博客園
https://www.cnblogs.com/punkcure/p/9082626.html

輕量化神經網絡綜述 - SIGAI_CSDN的博客 - CSDN博客
https://blog.csdn.net/SIGAI_CSDN/article/details/82877525

參考資料

分類、跟蹤、生成、壓縮、細粒度綜述 - TTdreamloong的博客 - CSDN博客
https://blog.csdn.net/TTdreamloong/article/details/80371850

其他

神經網絡中的神經元和激活函數詳解 - tyler_download的專欄 - CSDN博客
https://blog.csdn.net/tyler_download/article/details/79300891

  • 從零開始深度學習搭建神經網絡
    從零開始搭建神經網絡 (一) 基礎知識 - 學如不及,猶恐失之 - CSDN博客
    https://blog.csdn.net/sinat_35821976/article/details/80611958

深度學習入門(上)-第三章 案例實戰 - Qi - CSDN博客
https://blog.csdn.net/sunshinezhihuo/article/details/79306204

人工神經網絡(三)單層感知器代碼實現 - 許恕 - CSDN博客
https://blog.csdn.net/xvshu/article/details/78289599

人工神經網絡(二)單層感知器 - 董洪超的博客 - CSDN博客
https://blog.csdn.net/qq_24708791/article/details/78370909

知識蒸餾

知識蒸餾相關文獻列表 - Python開發社區 | CTOLib碼庫
https://www.ctolib.com/amp/lhyfst-knowledge-distillation-papers.html

lhyfst/knowledge-distillation-papers: knowledge distillation papers
https://github.com/lhyfst/knowledge-distillation-papers

Knowledge Distillation - zhangjf26的博客 - CSDN博客
https://blog.csdn.net/qzrdypbuqk/article/details/81482598

網絡結構搜索

網絡結構搜索 NAS - Neural Architecture Search

那麼 search space 如何用數學方式表達出來呢?只需要三個參數:

layer的數量n(即最大層數);
每層執行的操作類型,比如池化、卷積等;
與2中操作相關的超參數,比如濾波器數量、卷積核大小、卷積步長、卷積步長等。

Neural Architecture Search: A Survey - 學習教程 - dt貓 http://www.luyixian.cn/news_show_227384.aspx

量化

  • 模型量化過程中的精度損失情況
    aaron-xichen/pytorch-playground: Base pretrained models and datasets in pytorch (MNIST, SVHN, CIFAR10, CIFAR100, STL10, AlexNet, VGG16, VGG19, ResNet, Inception, SqueezeNet)
    https://github.com/aaron-xichen/pytorch-playground
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章