对外贸易发展协会
活动+

如何设计低耗能、高功效深度学习网络(二)

  • 徐宏民

研究显示目前的深度学习网络设计中经常夹杂了冗余的参数以及运算,因此深度学习网络的设计原则应是将冗余的运算予以精简。IE.edu

延续深度学习网络精简设计的主题,为了符合商业价值(特别是边缘计算的庞大机会),我们必须在正确率不打折的情况下,设计出兼具低运算复杂度、低耗电、低参数量的智能算法。目前的设计原则是将「冗余」的运算予以精简。原因是近来很多研究显示目前的深度学习网络设计中夹杂了冗余的参数以及运算。这些庞大运算由何而来,可以参考前文。依照这几年的研究,我们将其整理为四种精简设计策略,在本文中先介绍其中两种。

首先,最直觉的为专注于运算资源配置的「金字塔原则」。因卷积运算量正比于输入影像(或是特征图)的大小以及频道数(详细参考上文),此原则为避免庞大资料量(影像或是特征图)进入复杂或是层数过多的卷积运算。这就是为什么这几年几个性价比较高的卷积网络(如inception系列、ResNet、SqueezNet等),其主要构成的卷积区块中都会先使用1x1的卷积运算将输入特征图的频道数降低为原来的一半或是四分之一。

这样的原则也可善用特定领域的独特知识。例如视讯中主要的讯息大都集中在画面中央,所以事件侦测时可以专注在主要的画面范围而降低输入的影像尺寸。或是智能手机为了自动侦测拍照模式得了解所处的情境(食物、室内、风景、人物等),只需使用缩小的画面即可达到非常好的效果(因为侦测全局情境)。

第一个达到实时影像语义分割的的ICNet,则是发现同时分析不同分辨率的照片可以大大增加正确率,及平衡计算以及效能。该团队让较大的影像通过较少的卷积层而较小的影像则利用更多的层数来撷取更高的语意,再将这些讯息汇集进行最终分割判断。这些都是善用金字塔原则以维持效能并降低整体运算量,这样的原则容易扩展到其它应用。

其次为「低秩逼近法 (low-rank approximation)」,这个设计策略具有较严谨的理论支持。一般而言,深度网络中各层的运算可以转化为矩阵乘法(严格来说为多维的tensor),而其中的矩阵因为有不少「冗余」,可以利用低秩的矩阵来表示,也就是大矩阵可以利用两个较小矩阵相乘来逼近。所以每一层原为庞大矩阵相乘的卷积运算,可以转化为两个小卷积运算,因此可以大大降低运算量。

这个策略已可采用不同的数学模型实现,一般可以达到精简数倍左右的运算,并已落实在行动设备中。其中被最多人采用的是MobileNet系列的基底网络;经过实验,在边缘计算平台中,为目前性价比最高(运算速度以及正确率综合考量)的卷积网络。

本文中所提两个时常被采用的设计准则,设计完成之后大部分不用再大规模更动网络架构。我们在下文将再讨论另两个产业界也时常使用的精简网络设计原则以及应用实例。

徐宏民(Winston Hsu)现任台大资工系教授及NVIDIA AI Lab计画主持人。哥伦比亚大学电机博士,专精于机器学习、大规模影像视讯查找与辨识、前瞻技术商业模式等领域。为讯连科技研发团队创始成员,曾任IBM华生研究中心客座研究员、美国微软研究院客座研究员。习惯从学术及产业界的角度检验技术发展的机会;十余年产学合作及新创经验,近年与国内外企业合作,将深度学习技术落实到产品,并协助成立深度学习(人工智能)团队。曾获ACM MM 2014 Grand Challenge Multimodal Award、杰出信息人才奖、吴大猷先生纪念奖等国内外大奖。