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

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

         Transfer(AT),扩展了 FitNet 的约束,让“学生”网络学习“教师”网络的注意力图(attention map)而不是中间层的特
         征,取得了比 FitNet 更好的效果      [48] .

                                                  Teacher



                                                         Attention
                                                          map

                                          Attention      Attention
                                           transfer       map



                                                   Student
                            Fig.11    Knowledge distillation network (teacher-student network)
                                      图 11   知识蒸馏网络(教师-学生网络)
             在模型压缩方面,主要是对已有的网络进行参数量或者网络规模上的压缩.权重裁剪主要是去掉对网络贡
         献小的参数,最终的效果依赖于剪枝的策略;权重量化使用更少的比特数来表示权重,能够极大地对网络进行压
         缩,但是对网络性能影响较大;低秩分解主要是从稀疏矩阵的冗余上对其进行分解,在模型压缩与加速上都取得
         了一定的成果,但是实际应用中,分解操作需要的计算量较大;知识蒸馏是使用小网络来模拟大网络的性能,但
         是其应用场景受限于“教师”的应用场景.

         2.2   基于自动机器学习的自动神经网络模型压缩
             模型压缩技术的核心是决定每一层的压缩策略,传统的模型压缩模型主要包括剪枝、权值共享、低秩分解
         和知识蒸馏.一般而言,深度神经网络中各层的冗余程度不同,浅层具有较少的冗余,全连接层具有较大的冗余,
         使用这些方法不仅需要算法设计者具有丰富的专业知识和领域知识,探索大规模的参数空间,权衡模型大小、
         运算效率和模型性能,同时还需要反复的实验以获得最佳的模型参数,非常的耗时.然而,由于深度神经网络中
         的各层不是相互孤立的,基于规则的压缩策略往往并不是最优的.深度神经网络需要大量的训练数据学习针对
         特定问题的模型参数,导致了传统的模型压缩算法不能直接从一个模型迁移到另外一个模型.这些影响因素严
         重限制了深度神经网络模型压缩算法的发展与应用.
             近些年来,自动机器学习算法(AutoML)受到学术界和工业界的广泛关注,可以看作是设计一系列的控制器
         操作机器学习模型,使得模型可以自动地学习到合适的参数和网络架构而不需人工的干预,减少对专业知识和
         领域知识的要求,从而降低设计机器学习算法的难度.
             随着深度神经网络越来越深,设计空间的复杂性以指数级的速度爆炸式地增加,因此,传统的基于规则的模
                                                                                     [5]
         型压缩算法不能满足模型压缩的需求.西安交通大学和谷歌联合提出了自动模型压缩算法 AMC ,利用强化学
         习方法学习压缩策略,学习到的压缩策略优于传统的基于规则的压缩策略,具有更高的压缩比,并且能更好地保
         持模型的性能,大大减少了人为因素的干扰.
                 [5]
             AMC 算法提出:压缩精度对每层的稀疏性非常敏感,需要细粒度的动作空间.与传统的在离散空间上进行
                     [5]
         搜索不同,AMC 算法采用 DDPC        [49] 代理的连续压缩比控制策略,通过优化损失函数学习模型压缩策略.特别地,
         DDPC [49] 代理以分层的方式处理神经网络,对于每一层 L t ,代理接受编码该层的有用特征 S t ,然后输出精确压缩
         比.第 L t 层压缩完成后,代理移动到下一层 L t+1 ,在没有微调的情况下,对压缩后的神经网络中的所有层的精度进
         行评估.这种简单的近似,可以避免不必要的重新训练,并提供高质量的搜索结果.不同的基于强化学习的轻量
                                  [5]
                                                             [6]
         级模型方法的比较见表 1.AMC 与其他方法 N2N               [50] ,NT [51] ,NAS 的区别在于无需微调,仅需要设计一个简单
   10   11   12   13   14   15   16   17   18   19   20