• 模型压缩(0)


    模型压缩出了一系列文章,包括 MobileNet,Xception,ShuffleNet,SqueezeNet等,对相关论文进行阅读与总结。

    CNN模型设计研究点
    • 模型压缩:

      对pre-trained的模型进行压缩,使其变成小模型,如采用网络剪枝和量化等

    • layer优化:

      采用1x1的小卷积核,可分解卷积(factorized convolution)结构,模块化结构(blocks, modules)

    • 网络架构设计与优化:

      网络深度、Resnet残差连接(bypass connection, shortcut)

    • 组合优化:

      不同超参数、网络结构、优化其等的组合优化

    模型压缩Background

    增加网络的深度有利于提高Accuracy

    在Accuracy接近的情况下,参数量少的模型更有优势:

    • 高效的分布式训练:

      服务器间通信影响分布式CNN训练的computation performance, 小模型对通信需求低

    • 减少通信开销:

      自动驾驶等应用中经常要更新模型,小的model需要的额外通信开销小,更容易更新

    • 减小内存消耗:

      利于在小内存的硬件上部署,如FPGA

    常见模型压缩技术
    • 奇异值分解 (Singular Value Decomposition, SVD)
    • 网络剪枝(Network Pruning):

      网络剪枝和稀疏矩阵(调整卷积方式)

      通过dropout,L1/L2-regularization等能产生权重稀疏性的方法训练体积和密度都很大的网络,

      把网络中贡献小(也就是被稀疏过)的权重裁剪掉,相当于去除一些冗余连接,

      最后对模型做一下fine-tune,得到30%的压缩率。但是效率提高上不适合大多数通用CPU,

      因为存储不连续,索引权重时容易发生Cache miss,得不偿失。

    • 深度压缩(Deep Compression):

      网络剪枝、数字化(quantization)、Huffman编码

    • 硬件加速器 (Hardware Accelerator)
    Reference

    CNN网络优化学习总结——从MobileNet到ShuffleNet

  • 相关阅读:
    游戏玩家 专有名词 All In One
    Xbox 无线控制器详细使用说明图解教程 All In One
    leetcode online interview All In One
    vcharts custom tooltip All In One
    kaggle All In One
    elpopover ::after style overwrite bug All In One
    webpack 插件 All In One
    js inplace algorithm All In One
    leetcode 面试必刷的算法 100 题 All In One
    vcharts no data All In One
  • 原文地址:https://www.cnblogs.com/fighting-lady/p/8903699.html
Copyright © 2020-2023  润新知