上海交通大学人工智能实验室的研究人员提出了一种新的方法,能够在保证网络模型精度的前提下对深度网络进行压缩。相关论文已被ICCV 2017接收,由上海交通大学人工智能实验室李泽凡博士实现,倪冰冰教授,张文军教授,杨小康教授,高文院士指导。

随着人工智能在各个领域的应用中大放异彩,深度学习已经成为街头巷尾都能听到的词汇。然而,网络越来越深,数据越来越大,训练越来越久,如何在保证准确率的情况下加速网络,甚至让网络在CPU或者移动设备上进行训练与测试,就变成了迫在眉睫的问题。

上海交通大学人工智能实验室的研究人员发表了论文《基于高阶残差量化的高精度网络加速》(Performance Guaranteed Network Acceleration via High-Order Residual Quantization),提出一种新的方法,能够在保证网络模型精度的前提下对深度网络进行压缩。实验结果,他们将网络的大小降低了约32倍,速度上有30倍的提升。虽然以往的方法在体积和速度上也曾经取得类似的效果,但本论文提出的方法在精度保证上更胜一筹。

新的压缩方法HORQ:加快网络计算的同时保证准确率

除了网络pruning,网络稀疏近似等等,网络二值化也是常见的网络加速方式。通常情况下,我们用 +1 和 -1 来代替原来的浮点数数值,使得卷积中的乘法操作变成加减操作,而如果输入和权重同时二值化,乘法操作就会变成异或操作。

这看似是一种合理的网络压缩方式,然而如果单纯的运用阈值二值化方法对网络输入进行二值化处理,那么模型最后的精度将无法得到保证。但如果不运用二值化方法对网络进行加速,那么就又无法利用二值化所带来的在计算和存储方面的优势。

这篇文章提出的HORQ(High Order Residual Quantization)方法,提出了一种针对输入的高阶残差二值量化的方法,既能够利用二值化计算来加快网络的计算,又能够保证训练所得的二值化网络模型拥有较高的准确率。

图一展示了如何用HORQ方法将一个普通的卷积层进行残差量化。


图一 HORQ结构

之前的二值化方法,例如XNOR,对输入简单地采用了阈值量化的操作。这样的方法可以看成是对浮点数的一阶二值近似方法。在此之上,本文运用递归阈值量化的方法,提出了HORQ的框架。具体来讲,如图一所示,在第一次阈值量化操作后,我们可以定义并计算改阶近似对应的残差,然后对该阶残差进行新一轮的二值近似。通过对高阶残差的近似,我们可以得到对应于不同尺度下的二值feature map。将这些feature map相加,便可得到最终的输出。

实验结果

这篇文章的实验部分在MNIST和CIFAR-10数据集上进行测试,发现HORQ-net对比之前对输入简单采取一阶阈值二值化的方法有喜人的优势:


图二 MNIST实验


图三 Cifar-10实验

我们发现,对于二阶残差量化方法,该方法将网络的大小降低了约32倍,同时速度上有30倍的提升,相比XNOR-net在两个MNIST和CIFAR-10上测试准确率均有提升,并且展现出了可在CPU上进行网络训练的潜能。


图四 HORQ方法加速比性能分析


图五 HORQ方法加速比与量化阶数分析

HORQ方法对卷积层计算的的加速比跟卷积核大小,feature map数量,以及残差量化的阶数都有较大关系。这些关系体现在图四和图五中。而且,如图六所示,基于二值化的模型存储空间可以得到大幅度的降低。

结语

该论文提出的HORQ方法可以作为一个基础的二值量化的方法,用于网络的输入二值化中,能够在保证网络模型精度的前提下,利用二值量化的技术提升网络的计算速度,而且同时可以根据实际的硬件需要来调整残差阶数以适应需求。

这个方法有着很大的发展和使用前景。对于一般的深度学习网络,HORQ方法能能够很大程度上加速深度网络的计算速度。由于网络的每层输入的输入和权值都被二值化,模型的前向传播时间得到大大降低,同时存储模型所需的空间得到大大压缩,使得在资源受限的小运算平台,例如手机和笔记本上运行大规模深度网络模型成为可能。另外,高阶残差量化的方法能够使得网络精度的得到保证,使得网络不再会因为简单二值化方法而出现精度大幅下降。

该论文已经被ICCV2017接收,由上海交通大学人工智能实验室李泽凡博士实现,倪冰冰教授,张文军教授,杨小康教授,高文院士指导。

来源:新智元
原文链接

【压缩率3000%】上交大ICCV:精度保证下的新型深度网络压缩框架相关推荐

  1. 可持续5G环境下基于机器学习的网络分片框架

    Machine Learning-Based Network Sub-Slicing Framework in a Sustainable 5G Environment 5G环境下的物联网框架 5G切 ...

  2. python 网络服务器框架_Django是Python下的一款网络服务器框架

    Django是Python下的一款网络服务器框架.Python下有许多款不同的框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django.虽然Django之于Pytho ...

  3. CVPR2019 | AlphaPose升级!上交大开源密集人群姿态估计代码

    点击我爱计算机视觉标星,更快获取CVML新技术 前几天52CV报道了一篇非常棒的姿态估计的论文,CVPR2019 | 微软.中科大开源基于深度高分辨表示学习的姿态估计算法,其实上交大卢策吾老师组在这个 ...

  4. 上交大材料学院考研经验

    打算考材料的学弟学妹你们好,首先欢迎大家选择上交大材料学院,选择上交大材料是明智之举,哈哈,为了帮大家更好的了解上交大材料的情况,我今天就聊聊复试吧,将从以下两个方面来介绍,觉得我写的还尚可的话,可以 ...

  5. 《模拟电子技术》期末复习笔记4——上交大郑益慧课件知识点整理

    笔记整理自B站学习教程<模拟电子技术基础 上交大 郑益慧主讲> 绪论 1904年,世界上第一只真空电子二极管在英国物理学家弗莱明的手下诞生,电子技术的时代开始了.为了提高性能, 1906年 ...

  6. 比RNN快136倍!上交大提出SRNN,现在RNN也能做并行计算了

    比RNN快136倍!上交大提出SRNN,现在RNN也能做并行计算 论文和开源代码地址: https://arxiv.org/pdf/1807.02291.pdf https://github.com/ ...

  7. 链上存证、链下传输的可信数据共享平台

    点击上方蓝字关注我们 链上存证.链下传输的可信数据共享平台 张召1, 田继鑫2, 金澈清1 1 华东师范大学数据科学与工程学院,上海 200062 2 MCT Technology,上海 200023 ...

  8. kafka 丢弃数据_Kafka史上最详细原理总结下

    3.Partition Replication原则 Kafka高效文件存储设计特点 Kafka把topic中一个parition大文件分成多个小文件段,通过多个小文件段,就容易定期清除或删除已经消费完 ...

  9. 阿里云安全掌门人肖力:企业上云,如何保证安全?| 问底中国 IT 技术演进

    受访者 | 肖力 采访者 | 伍杏玲 出品 | CSDN(ID:CSDNnews) 近日,国家互联网应急中心发布<2019 年上半年我国互联网网络安全态势>,报告显示在 2019 年上半年 ...

最新文章

  1. 第三次冲刺阶段第五天
  2. The copy of Windows is not genuine-微软自己用盗版
  3. mybatis反射的核心类
  4. xp/win 7 系统搭建 Java环境
  5. Mac下VirtualBox虚拟机Win7与主机共享文件夹
  6. IaaS、PaaS和SaaS的区别
  7. HTTP的请求报文响应报文
  8. MySQL自定义函数(四十六)
  9. 英特尔“Beach”图片泄露 Optane SSD路线图成关注焦点
  10. linux内存管理_架构师必读:Linux 的内存分页管理
  11. wps的range对象
  12. 车辆路径问题与相关算法总结
  13. vue鼠标上下滚动放大与缩小
  14. Nginx-代理服务器
  15. 老外的一份渗透测试报告
  16. 采购很容易,油水又多?那你来啊
  17. Scratch软件编程等级考试四级——20200620
  18. 1.网络安全之windows系统知识
  19. Ubuntu 远程控制(使用自带远程工具)
  20. 中文垂直搜索引擎、行业搜索引擎大全(最新计137家) (转贴)

热门文章

  1. CSS hack:针对IE6,IE7,IE8,IE9,firefox显示不同效果
  2. Makefile —— 如何在文件内使用变量?
  3. 函数 —— memset() 将存放字符串的数组清空后再赋予该数组新的字符串
  4. 【uva11994】Happy Painting!【LCT】
  5. java-------------华为-----------字符串链接最长路径查询
  6. 网站访问过程理解(一点记录)
  7. 10进制转16进制,16进制转10进制,随机出一个6位十六进制颜色值
  8. Struts2升级注意事项
  9. [转]Git详解之五 分布式Git
  10. CNCF宣布containerd毕业