当前位置:首页 > 智能硬件 > 人工智能AI
[导读] 自从AlexNet一举夺得ILSVRC 2012 ImageNet图像分类竞赛的冠军后,卷积神经网络(CNN)的热潮便席卷了整个计算机视觉领域。CNN模型火速替代了传统人工设计(hand-cra

自从AlexNet一举夺得ILSVRC 2012 ImageNet图像分类竞赛的冠军后,卷积神经网络(CNN)的热潮便席卷了整个计算机视觉领域。CNN模型火速替代了传统人工设计(hand-crafted)特征和分类器,不仅提供了一种端到端的处理方法,还大幅度地刷新了各个图像竞赛任务的精度,更甚者超越了人眼的精度(LFW人脸识别任务)。CNN模型在不断逼近计算机视觉任务的精度极限的同时,其深度和尺寸也在成倍增长。
 

表1 几种经典模型的尺寸,计算量和参数数量对比

Model Model Size(MB) Million
Mult-Adds Million
Parameters
AlexNet[1] >200 720 60 
VGG16[2] >500 15300 138 
GoogleNet[3] ~50 1550 6.8 
IncepTIon-v3[4] 90-100 5000 23.2

随之而来的是一个很尴尬的场景:如此巨大的模型只能在有限的平台下使用,根本无法移植到移动端和嵌入式芯片当中。就算想通过网络传输,但较高的带宽占用也让很多用户望而生畏。另一方面,大尺寸的模型也对设备功耗和运行速度带来了巨大的挑战。因此这样的模型距离实用还有一段距离。

在这样的情形下,模型小型化与加速成了亟待解决的问题。其实早期就有学者提出了一系列CNN模型压缩方法,包括权值剪值(prunning)和矩阵SVD分解等,但压缩率和效率还远不能令人满意。

近年来,关于模型小型化的算法从压缩角度上可以大致分为两类:从模型权重数值角度压缩和从网络架构角度压缩。另一方面,从兼顾计算速度方面,又可以划分为:仅压缩尺寸和压缩尺寸的同时提升速度。

本文主要讨论如下几篇代表性的文章和方法,包括SqueezeNet[5]、Deep Compression[6]、XNorNet[7]、DisTIlling[8]、MobileNet[9]和ShuffleNet[10],也可按照上述方法进行大致分类:

表2 几种经典压缩方法及对比

Method Compression Approach Speed ConsideraTIon
SqueezeNet architecture No 
Deep Compression weights No 
XNorNet weights Yes 
DisTIlling architecture No 
MobileNet architecture Yes 
ShuffleNet architecture Yes

一、SqueezeNet

1.1 设计思想

SqueezeNet是F. N. Iandola,S.Han等人于2016年的论文《SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and < 0.5MB model size》中提出的一个小型化的网络模型结构,该网络能在保证不损失精度的同时,将原始AlexNet压缩至原来的510倍左右(< 0.5MB)。

SqueezeNet的核心指导思想是——在保证精度的同时使用最少的参数。

而这也是所有模型压缩方法的一个终极目标。

基于这个思想,SqueezeNet提出了3点网络结构设计策略:

策略 1.将3x3卷积核替换为1x1卷积核。

这一策略很好理解,因为1个1x1卷积核的参数是3x3卷积核参数的1/9,这一改动理论上可以将模型尺寸压缩9倍。

策略 2.减小输入到3x3卷积核的输入通道数。

我们知道,对于一个采用3x3卷积核的卷积层,该层所有卷积参数的数量(不考虑偏置)为:

式中,N是卷积核的数量,也即输出通道数,C是输入通道数。

因此,为了保证减小网络参数,不仅仅需要减少3x3卷积核的数量,还需减少输入到3x3卷积核的输入通道数量,即式中C的数量。

策略 3.尽可能的将降采样放在网络后面的层中。

在卷积神经网络中,每层输出的特征图(feature map)是否下采样是由卷积层的步长或者池化层决定的。而一个重要的观点是:分辨率越大的特征图(延迟降采样)可以带来更高的分类精度,而这一观点从直觉上也可以很好理解,因为分辨率越大的输入能够提供的信息就越多。

上述三个策略中,前两个策略都是针对如何降低参数数量而设计的,最后一个旨在最大化网络精度。

1.2 网络架构

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读

我希望打造一个紧凑的演示项目,同时整合三方面内容:计算机视觉、机器人操作以及少量“推理”功能。手写数学题是一个理想的测试对象——人类书写起来方便,光学字符识别(OCR)处理起来有趣,输出结果还能直接映射为一个单一数字,对...

关键字: 计算机视觉 机器人 机械臂

传统的监控系统通常依赖云服务或专用服务器,这会增加部署的复杂性和成本。随着边缘AI设备性能的不断提升,现在可以直接在本地硬件上运行实时计算机视觉应用。

关键字: 边缘AI 计算机视觉 RK3576

计算机视觉任务的细节层次逐渐递进。图像分类为整个画面赋予一个标签;目标检测在每个物体周围绘制边界框;实例分割则更进一步,逐像素地勾勒出每个物体的轮廓,为每个实例生成独立的掩码。这种更高的精确度使我们能够清晰地将一个人从场...

关键字: 计算机视觉 边缘 AI Raspberry Pi 5

我们生活在一个信息过载的世界。我想将计算机视觉与日常生活结合起来,解决一个简单的问题:为了查看早间新闻,不得不在手机上不停地滚动浏览。

关键字: 计算机视觉 Arduino LCD屏

高速通信网络的快速发展推动了多芯光纤(MCF)的发展,使其成为克服传统单芯光纤传输容量限制的一项前景广阔的技术。通过在单一包层内集成多个光芯,多芯光纤显著提高了数据吞吐量,同时减小了光缆的物理尺寸。

关键字: 多芯光纤 自动化 计算机视觉

安全的睡眠习惯对婴儿的健康和发育至关重要,尤其是在出生后的头一年。全球医学组织建议婴儿仰卧(平躺姿势)入睡,以降低睡眠相关意外的风险,并有助于健康的呼吸。然而,家长或看护者持续手动监护往往较为困难,尤其是在夜间或看护者忙...

关键字: 计算机视觉 人工智能 机器学习

系统采用基于OpenCV的图像处理技术,实时检测车道线并估算车辆轨迹。根据这些信息,计算出转向角度,使车辆保持在车道中央行驶,并通过PID控制器确保转向行为平稳稳定。

关键字: PID控制器 计算机视觉 OpenCV

这是一款为 ELEC 553 课程的期末项目而开发的自主车道保持遥控汽车。它采用了车道保持流程,能够在蓝色车道间行驶,并在红色标记处停车,还具备使用 Ultralytics YOLO 进行物体识别的功能,以检测周围物体。

关键字: 计算机视觉 树莓派 5 摄像头

德国波恩2026年5月7日 /美通社/ -- DHL快递今天宣布推出AI物品识别功能,这是国际快递行业的一项首创。该创新功能运用先进的计算机视觉技术,对客户上传的物品照片进行...

关键字: AI 计算机视觉 视觉技术 人工智能

计算机视觉领域,OpenCV 5.0的发布标志着技术演进的重要里程碑。这款历经四年打磨的开源库,通过架构重构、硬件加速和跨平台支持三大核心升级,将机器视觉开发效率提升至新高度。本文将从DNN模块优化、硬件加速突破和跨平台...

关键字: 计算机视觉 OpenCV 5.0
关闭