MINIEYE首席科学家吴建鑫解读ICCV入选论文:用于网络压缩的滤波器级别剪枝算法ThiNet

简介: 近日,南京大学计算机科学与技术系教授、MINIEYE 首席科学家吴建鑫所在团队的一篇论文《ThiNet: 一种用于深度神经网络压缩的滤波器级别剪枝算法》被计算机视觉领域顶级国际会议 ICCV 2017 收录。

近日,南京大学计算机科学与技术系教授、MINIEYE 首席科学家吴建鑫所在团队的一篇论文《ThiNet: 一种用于深度神经网络压缩的滤波器级别剪枝算法》被计算机视觉领域顶级国际会议 ICCV 2017 收录。论文中提出了滤波器级别的剪枝优化算法,利用下一层的统计信息指导当前层的剪枝,能够在不改变原网络结构的前提下,让卷积神经网络模型在训练与预测阶段同时实现加速与压缩。ThiNet 框架具普适性,可无缝适配于现有的深度学习框架,有助于减少网络的参数与 FLOPs,同时保留原网络的精度级别。为此,机器之心对吴建鑫教授进行了采访,进一步解读 ThiNet 框架的设计思路以及背后的研究工作。

 

目前,参数冗余是神经网络领域公认的一个重要问题。如何在保持神经网络的精确度、迁移能力等各方面特性的基础上,减小神经网络模型参数的数目,也是学术界与工业界的热门研究方向。「由于网络模型过大的原因,很多情况下深度学习模型无法适用于终端用户的使用场景之中,例如 VGG 模型的硬盘空间就达到 500M 以上,应用场景也会受到相应的限制。所以,模型压缩对深度学的实际应用具有非常大的价值。」吴建鑫举例解释道。

 

除此之外,模型压缩在科研方面也具备较大的研究价值。在硬件资源普及之前,卷积神经网络并非计算机视觉领域的首选。吴建鑫回忆,在他学生时代参加学术会议时,曾与卷积神经网络之父 Yann LeCun 研究组的学生进行过交流。那时训练一个神经网络模型的代价非常高,有时甚至需要几个月的时间才能完成整个网络的训练及应用过程,那名学生还因此担心没有办法按时毕业。而随着 GPU、FPGA 等硬件计算资源与大数据资源的崛起,神经网络模型可以最大程度发挥作用,逐渐大放异彩。与此同时,业界有观点认为,快速发展硬件资源是解决神经网络问题的根本,针对模型压缩本身进行研究的科研意义不大。对此,吴建鑫持不同观点,他解释道,今年 CVPR 会议上,Uber 公司的研究人员提出的网络模型 UberNet 可以把识别、检测、分割等任务集中在一个模型里实现。不过,UberNet 对资源的消耗非常大,哪怕是在最新型 GPU 上进行单张图片的处理也需要搭配使用减少资源消耗方面的先进技术成果。「这个领域对资源消耗方面的索求速度将高于硬件发展的速度。新技术、新资源出现的同时也会带来新的问题,针对压缩网络进而降低资源消耗的研究应该齐头并进。」


压缩网络模型通常有两种思路:一是利用稀疏性对模型进行剪裁,从而达到减少模型参数数目的效果;二是由卷积神经网络的通道(channel)入手进行选择性取舍,去掉通道中的噪声或是可以被其他通道代替的部分,进而降低计算代价。ThiNet 框架的设计思路就是从通道选择的角度展开,提出了一种滤波器级别的剪枝算法,并将其定义为一个优化问题,结果在性能方面有较大的提升。据吴建鑫介绍,2014 年团队就曾针对基于熵的特征选择算法进行研究,结果发现相较模型压缩方法,在同压缩比的情况下具有更高的准确率,发表于 CVPR2015。在这个熵算法的基础上,团队在 2015 年底开始不断做出尝试和改进,最终设计出了效果更优的 ThiNet 框架。

 

在下图的 ThiNet 剪枝框架图中,先根据图中的虚线框部分判断哪些通道及其相对应的滤波器性能较弱(第一行中用黄色高亮的部分)或可以被其他通道代替。然后丢弃对网络的性能影响较小的通道及其对应的滤波器从而得到一个剪枝模型。之后再对剪枝后的模型进行微调以恢复其精度。


微信图片_20211129110518.jpg

ThiNet 框架

 

ThiNet 框架的核心是通过上一层的统计信息来指导当前层的剪枝,这也是区别于其他现有模型压缩方法的亮点。以模型的第五层为例,在针对网络模型的第五层进行压缩时,为了尽可能不影响网络模型的效果,要尽量保持第五层的输出通道不变或改变较小。由于卷积层是一种线性算子,所以可以看成是用第五层的输入(即第四层的输出)模拟其输出的线性过程。在这里,第五层的输入是可以缩减的,如果可以通过优化方法找到第五层的输入中线性组合等于零的部分并将相应的第四层输出的卷积核舍弃掉,就可以利用较少的输入得到相似的输出,换言之,在不牺牲模型效果的前提下实现压缩模型。探索线性组合的值接近于零的具体过程涉及采样训练样本、贪心算法、最小化重构误差等优化方法。

 

在这之后的微调步骤对于恢复模型的精准度也相当重要,从实验数据可以看出 ThiNet 具有相当的鲁棒性能。


微信图片_20211129110522.jpg

在 CUB-200 数据集上,微调前后的精度变化情况。

 

实验结果验证了 ThiNet 算法的有效性,其性能超过了现有的剪枝算法。

 

微信图片_20211129110525.jpg

不同选择算法的性能比较:VGG-16-GAP 模型以不同的压缩率在 CUB-200 数据集上的剪枝效果。


团队使用 ThiNet 对 VGG-16 在 ImageNet 进行剪枝,从实验数据可以发现,ThiNet 不仅能够降低 FLOPs 以及网络参数,对于 top-1 和 top-5 准确率的影响也非常小。

 

微信图片_20211129110528.jpg

这里,M/B 表示百万/十亿 (10^6/10^9);f./b. 是前向/反向的缩写,速度由 batch size=32 在一张 M40 GPU 上测试所得。


微信图片_20211129110532.jpg

与其他方法在 VGG-16 上的比较。部分工作的原文中未报告相关的准确数字,使用≈来表示相应的近似值。

 

除此之外,在 ResNet-50 上的类似实验证明,即便是对于紧凑的网络,ThiNet 也能减少超过一半的的参数与 FLOPs,而 top-5 准确度仅降低 1%。

 

微信图片_20211129110535.jpg

这里,M/B 表示百万/十亿 (10^6/10^9);f./b. 是前向/反向的缩写,速度由 batch size=32 在一张 M40 GPU 上测试所得。


另外,ThiNet 能将 VGG16 网络模型剪枝到 5.05MB 的大小,保留 AlexNet 级别的精度,却拥有更强的泛化性能。吴建鑫表示,ThiNet 框架具有通用性,可推广能力较强,能够无缝适配于现有的深度学习框架,同时不会受到硬件体系结构的限制。目前,ThiNet 框架已经在团队的图像风格迁移项目中展开相关应用。

 

吴建鑫介绍,如何在资源受限的情况下更好地研究和应用计算机视觉技术是目前团队的重点研究方向。除此之外,他认为理解现有的经典神经网络也是非常重要的一个课题。「业内各研发团队设计的新型网络结构层出不穷,相比之下,传统的神经网络模型到底是如何使用学习出来的内容,又包含了哪些信息,相关的研究和探索还比较少,我个人更愿意把这方面内容研究清楚。」

 

最后,在谈到计算机视觉落地应用时,身为 ADAS 技术研发公司 MINIEYE 首席科学家的吴建鑫肯定了深度学习在自动驾驶领域内的巨大潜力。同时他也表示,由于汽车是需要连续运行的资源受限场景,其可靠性和资源占用问题都亟待解决。虽然眼下英伟达 GPU、赛灵思 FPGA、甚至微软新开发的 HPU 等都在硬件方面给予相应的支持,软件方面各家公司也都在积极研发,不过将技术算法转化成工程上可用的产品还需要一定的时间。「高级别的自动驾驶不仅仅涉及技术的问题,还与法律法规、公众接受程度等问题相关,相比之下,辅助驾驶技术的落地发展则更为乐观。在辅助驾驶方面,无论是学术界的基础研究还是产业公司的研发进展速度都是非常快的,我相信深度学习全面落地辅助驾驶产品在不远的将来是可以预见的。」 微信图片_20211129092521.png

相关实践学习
基于阿里云DeepGPU实例,用AI画唯美国风少女
本实验基于阿里云DeepGPU实例,使用aiacctorch加速stable-diffusion-webui,用AI画唯美国风少女,可提升性能至高至原性能的2.6倍。
相关文章
|
8天前
|
机器学习/深度学习 人工智能 自然语言处理
【CVPR2024】阿里云人工智能平台PAI图像编辑算法论文入选CVPR2024
近期,阿里云人工智能平台PAI发表的图像编辑算法论文在CVPR-2024上正式亮相发表。论文成果是阿里云与华南理工大学贾奎教授领衔的团队共同研发。此次入选标志着阿里云人工智能平台PAI自主研发的图像编辑算法达到了先进水平,赢得了国际学术界的认可。在阿里云人工智能平台PAI算法团队和华南理工大学的老师学生们一同的坚持和热情下,将阿里云在图像生成与编辑领域的先进理念得以通过学术论文和会议的形式,向业界传递和展现。
|
15天前
|
机器学习/深度学习 存储 算法
Python5种算法回溯+剪枝、字典序、递归交换、计数回溯、迭代法 实现全排列ll【力扣题47】
Python5种算法回溯+剪枝、字典序、递归交换、计数回溯、迭代法 实现全排列ll【力扣题47】
|
25天前
|
机器学习/深度学习
简单通用:视觉基础网络最高3倍无损训练加速,清华EfficientTrain++入选TPAMI 2024
【5月更文挑战第30天】清华大学研究团队提出的EfficientTrain++是一种新型训练方法,旨在加速视觉基础网络(如ResNet、ConvNeXt、DeiT)的训练,最高可达3倍速度提升,同时保持模型准确性。该方法基于傅里叶谱裁剪和动态数据增强,实现了课程学习的创新应用。在ImageNet-1K/22K数据集上,EfficientTrain++能有效减少多种模型的训练时间,且在自监督学习任务中表现出色。尽管面临适应性与稳定性的挑战,EfficientTrain++为深度学习模型的高效训练开辟了新途径,对学术和工业界具有重要意义。
34 4
|
29天前
|
机器学习/深度学习 算法 图形学
告别3D高斯Splatting算法,带神经补偿的频谱剪枝高斯场SUNDAE开源了
【5月更文挑战第26天】SUNDAE,一种结合频谱剪枝和神经补偿的高斯场方法,已开源,解决了3D高斯Splatting的内存消耗问题。SUNDAE通过建模基元间关系并剪枝不必要的元素,降低内存使用,同时用神经网络补偿质量损失。在Mip-NeRF360数据集上,SUNDAE实现26.80 PSNR和145 FPS,内存仅为104MB,优于传统算法。然而,其计算复杂性、参数优化及对其他3D表示方法的适用性仍有待改进。代码开源,期待进一步研究。[论文链接](https://arxiv.org/abs/2405.00676)
25 2
|
1月前
|
人工智能 算法 测试技术
论文介绍:进化算法优化模型融合策略
【5月更文挑战第3天】《进化算法优化模型融合策略》论文提出使用进化算法自动化创建和优化大型语言模型,通过模型融合提升性能并减少资源消耗。实验显示,这种方法在多种基准测试中取得先进性能,尤其在无特定任务训练情况下仍能超越参数更多模型。同时,该技术成功应用于创建具有文化意识的日语视觉-语言模型。然而,模型融合可能产生逻辑不连贯响应和准确性问题,未来工作将聚焦于图像扩散模型、自动源模型选择及生成自我改进的模型群体。[论文链接: https://arxiv.org/pdf/2403.13187.pdf]
123 1
|
1月前
|
机器学习/深度学习 人工智能 算法
【图像版权】论文阅读:CRMW 图像隐写术+压缩算法
【图像版权】论文阅读:CRMW 图像隐写术+压缩算法
21 0
|
1月前
|
存储 算法
算法系列--递归,回溯,剪枝的综合应用(3)(上)
算法系列--递归,回溯,剪枝的综合应用(3)(上)
28 0
算法系列--递归,回溯,剪枝的综合应用(3)(上)
|
1月前
|
算法
算法系列--递归,回溯,剪枝的综合应用(3)(下)
算法系列--递归,回溯,剪枝的综合应用(3)(下)
22 0
|
1月前
|
消息中间件 Java Linux
2024年最全BATJ真题突击:Java基础+JVM+分布式高并发+网络编程+Linux(1),2024年最新意外的惊喜
2024年最全BATJ真题突击:Java基础+JVM+分布式高并发+网络编程+Linux(1),2024年最新意外的惊喜
|
17天前
|
网络协议 算法 Linux
【嵌入式软件工程师面经】Linux网络编程Socket
【嵌入式软件工程师面经】Linux网络编程Socket
35 1