Page 7 - 《软件学报》2020年第9期
P. 7

2628                                 Journal of Software  软件学报 Vol.31, No.9,  September 2020

         detail, which are artificial design of lightweight neural network, compression algorithm of neural network model, and automatic neural
         network architecture design based on searching of neural network architecture. The characteristics of each method are summarized and
         analyzed briefly, and the typical algorithms of constructing lightweight neural network are introduced emphatically. Finally, the existing
         methods are summarized and the prospects for future development are given.
         Key words:    lightweight neural network;  mobile device;  compression of neural network;  neural network  architecture searching;  auto
                  machine learning

             深度学习与传统手工设计目标特征的方法不同:深度学习以端到端的方式训练深度神经网络,实现自动提
         取目标的深度特征,避免人为设计的干扰;同时,深度特征与传统特征相比,深度特征可以多层次表示目标,从浅
         层的局部特征到深层的全局特征,具有更强的鲁棒性和表达能力.基于此,深度学习近些年来已经引起了学术界
         和工业界的广泛关注,并且深度学习已经成功地应用于解决多种类型的任务中,如目标检测、图像检索、语言
         识别、智能问答等领域.
             移动互联网时代,智能手机和其他便携设备的普及给人们之间的日常交流、信息获取、学习和工作等生活
         的各个方面均带来了极大的便利.伴随着移动互联网的迅速发展,推出了如人脸识别、视频直播、美颜相机、
         拍照识图、自动驾驶等多种不同类型的移动式应用,丰富了人们的日常生活,其中产生的数据绝大部分为静态
         图像和动态视频数据.目前,传统的深度神经网络                 [1−3] 通过设计非常深的神经网络结构用于提取表达能力更强
         的深度特征,这对存储设备和计算资源的要求非常高,常用的便携式设备无法满足该需求,这严重限制了深度神
         经网络在便携式设备上的发展与应用.
             为了提高便携式设备处理图像和视频数据的效率和能力,同时需要满足存储空间和功耗的限制,设计适用
         于便携式设备的轻量化深度神经网络架构是解决该问题的关键.近些年来,轻量级神经网络架构的设计得到了
         学术界和工业界的广泛关注,提出了一些典型的方法                   [4−9] ,主要包括 3 个不同的方向,分别是:(1)  人工设计轻量化
         神经网络模型;(2)  基于神经网络架构搜索(neural architecture search,简称 NAS)的自动化神经网络架构设计;
         (3)  神经网络模型的压缩.轻量级神经网络架构的设计已经取得了一定的成果:谷歌通过深度可分离卷积
                                                                            [8]
         (depthwise separable convolution)代替标准卷积提出了轻量级网络架构 MobileNet V1 ;Face++通过逐点群卷积
                                                [7]
                                       [9]
                                                         [6]
         核通道混洗技术提出了 ShuffleNet V1 ;MnasNet 和 NasNet 通过强化学习方法学习神经网络架构搜索策略,
                                                               [6]
         实现便携式设备上轻量化神经网络的自动化构建,不同的是,NasNet 设计了基于块的搜索空间,大大加快搜索
                            [4]
         速度 ;Deep compression 通过剪 枝、权值共 享和权值量 化、哈夫曼 编码实现卷 积神经网络 模型的压
                                          [5]
         缩;AMC(AutoML  for model compression) 利用强化学习方法自动学习模型压缩策略,具有更高的压缩比,可以
         更好地保持神经网络的性能.
             目前,人工设计轻量级神经网络的主要思想在于设计更高效的网络计算方式,主要是针对卷积的计算方法.
         现有的深度卷积神经网络为了能够取得更好的性能,通过设置大规模的特征通道数、卷积核大小的数量,但是
         往往存在大量的冗余.人工设计轻量级神经网络通过合理地减少卷积核的数量,减少目标特征的通道数,结合设
         计更高效的卷积操作等方式,从而构造更加有效的神经网络结构,可以在保持神经网络性能的前提下,显著地减
         少网络的参数和计算量,实现在便携式设备上训练和应用深度神经网络.
             MobileNet [8,10] ,ThunderNet [11] ,ShuffleNet [9,12] ,SqueezeNet [13] 等人工设计的神经网络虽然已经取得了令人瞩
         目的成绩,但是设计高性能的轻量级神经网络需要设计者具有丰富的专业知识和领域知识,并且需要大量重复
         的实验,导致研究成本和时间成本极高,严重限制了轻量级神经网络在便携式设备上的发展与应用.为了减少人
         为因素的干扰,通过给定所有候选神经网络架构的集合作为搜索空间,使用学习到的搜索策略从搜索空间中构
         建最优的神经网络架构,利用性能评估策略度量网络架构的性能,并在训练阶段,作为奖励指导搜索策略的学
         习,通过反复的迭代,从而得到解决特定任务的最优神经网络架构,实现深度神经网络模型的自动搜索.神经网
         络架构搜索方法与超参数优化           [14] 和元学习 [15] 有显著的重叠.神经网络架构搜索方法主要由 3 部分组成:搜索空
         间、搜索策略和性能评估策略.
             除人工设计轻量化神经网络模型外,学者和工业界也在不断地探索如何进一步地通过压缩神经网络模型
   2   3   4   5   6   7   8   9   10   11   12