网站首页  词典首页

请输入您要查询的论文:

 

标题 面向航空应用的神经网络轻量化设计
范文

    程陶然 李阳

    摘要:随着深度神经网络性能的不断提高,应用领域不断扩展,然而网络参数规模和计算需求也在大幅增加,极大地限制了神经网络的应用范围。该文面向航空领域应用,考虑到机载嵌入式计算环境的资源限制,对深度神经网络模型的轻量化设计方法进行了总结分析。神经网络的轻量化设计主要通过模型压缩和计算结构优化实现对网络参数存储空间的压缩和运算速度提升,具体方法包括模型裁剪、参数量化与编码、可分离卷积、知识提取、矩阵低秩分解等。

    关键词:神经网络;轻量化;模型压缩;结构优化

    中图分类号:TP18 文献标识码:A

    文章编号:1009-3044(2019)11-0191-02

    开放科学(资源服务)标识码(OSID):

    Abstract: With the performance improvement of deep neural network(DNN), it is used in more field. However, the scale of parameters and computing requirements are also greatly increased, which limits the application scope of DNN. In this paper, the lightening design method of DNN is summarized for aviation applications. The lightening design of the neural network is aimed to reduce the storage space and improve the computing speed. It is mainly achieved by model compression and optimization of computing structure, including model clipping, parameter quantization and coding, separable convolution, knowledge extraction and low rank matrix decomposition.

    Key words: Neural Network; lightening design; model compress; structure optimization

    1 背景

    自2016年AlphaGo擊败了围棋世界冠军,以神经网络为代表的人工智能走进了大众视野,各行各业都掀起了“AI+”的热潮。而在学术界,神经网络的快速发展开始于2006年“人工智能教父”Hinton提出的“预训练网络”[1]。之后,随着神经网络规模增加,计算能力提升,神经网络算法在图像分类、目标识别、自然语言理解、自动驾驶乃至游戏操作等领域先后取得突破性进展。在航空领域,神经网络的应用前景十分广阔,经典的目标识别算法可以帮助飞行员更容易地发现目标,智能辅助决策算法有助于解决海量信息带来的认知负荷,对无人机更是意义重大。

    为了获得更好的特征提取能力,现有的优秀神经网络算法大多层数众多,计算量庞大。例如,2015年在ImageNet挑战赛中成功超过人眼识别能力的残差神经网络(ResNet-152)共有152层网络结构,参数数量超过70M,乘加运算次数高达11.3G[2]。这导致神经网络算法对运行设备的内存空间、计算量和计算速度等都提出了较高的要求,必须依赖大型服务器的计算能力才能满足应用的实时性。

    然而,在航空领域飞行器对机载设备重量、功耗等方面都有严格的限制,机载嵌入式计算环境中处理器的性能、计算资源的规模、存储及内存空间的大小都十分有限,难以满足现有神经网络算法的需求。因此,要想在航空应用中使用神经网络实现智能算法,必须对神经网络进行轻量化设计,使其在有限的机载计算环境中仍有较高的性能。

    2 神经网络模型压缩

    随着神经网络层数不断加深,训练所消耗的时间和服务器功耗大幅度增长,越来越多的技术人员意识到模型压缩的重要性。“深度压缩(Deep Compress)”[3]一文堪称深度神经网络模型压缩的经典之作,文章通过模型裁剪降低网络连接数量级,之后通过参数量化与编码进一步压缩参数存储体积,从而大幅度压缩深度神经网络的规模。深度神经网络的轻量化方法大多都是基于此延伸出来的。

    2.1 模型裁剪

    深度神经网络连接数量级非常高,但其中有许多连接是不重要的或不必要的。通过一定的剪枝策略裁剪掉对网络功能实现贡献度较低的连接,可以显著地扩展网络的稀疏性,有效降低网络规模。

    最基本的剪枝策略是根据连接权重数值的大小确定其重要性,对低于一定阈值的连接进行裁剪,降低网络连接数量。另一方面,网络中每个节点的数值通常由多个连接共同确定,当节点数值趋近于0时,对后续计算的影响将极其微小,裁剪掉这些节点不会影响网络整体功能的实现。基于上述基本思想,延伸出了基于激活响应熵值的裁剪策略[4]、基于泰勒展开的裁剪策略[5-7]、基于相关性的裁剪策略[8]等。

    模型裁剪方法在卷积神经网络中应用尤为广泛,大量的卷积操作不仅参数规模庞大,计算规模也十分庞大。对卷积核进行剪枝处理,减小网络规模的同时还能够大幅度降低网络运行时的计算量。此外,由于剪枝后的网络参数规模降低,强化训练过程将会大幅度缩短,有效降低网络的训练时间。

    2.2 参数量化与编码

    参数量化与编码通过减少表示连接权重参数值所需要的比特位数,进一步压缩神经网络的参数存储体积,解决机载嵌入式环境下存储、带宽和内存空间受限的问题。为了提高计算精度,神经网络模型通常使用高精度浮点数进行计算,然而大多嵌入式硬件平台都不支持浮点计算,这促使了神经网络参数定点化处理的研究。

    8位定点数可表示的范围是-16.00-15.875,满足绝大多数神经网络的参数表示需求,只是最大精度为0.125,比浮点数表示有所损失,但是在经典神经网络模型上进行测试,参数定点化处理后,经过一定的训练微调,模型精度损失低于1%[9]。通过在神经网络中综合使用8位和16位定点数对权重、偏移量、激励函数参数等进行不同表示,能够进一步降低参数量化带来的模型精度损失。

    此外,通过使多个连接共享同一权重,减少需要存储的有效权重的数目,也可以减小参数存储体积。权重共享通常使用k-聚类算法,所有在同一聚类中的权重共享同一个权重值,网络中仅存储各权重值所在聚类的位置索引。

    最后,选择合适的编码机制,能够进一步减少网络所需的存储空间。比如霍夫曼编码(Huffman Coding),这是一种用于无损数据压缩的最优前缀码,使用变长码字对源信号进行编码,根据每个源信号出现的频率,确定编码表,出现频率较高的信号使用较少的位数表示。经过聚类处理后的各连接权重值存储为对应的位置索引,共享同一数值的连接存有相同的索引值,对索引值进行霍夫曼编码,能够有效降低存储信息的位数。

    3 神经网络结构优化

    神经网络模型压缩技术主要是针对参数的存储空间进行优化,对计算量的优化有限。针对神经网络在移动端的应用问题,有研究团队致力于通过设计更高效的网络计算方式来实现神经网络模型的轻量化。机载嵌入式计算环境与移动端计算环境的硬件资源条件十分相似,移动端神经网络所使用的结构优化方法对神经网络模型在航空领域的应用具有重要意义。

    3.1 可分离卷积

    MobileNet[10]是谷歌公司针对智能手机应用设计的轻量化深度神经网络模型,其突出特点在于使用深度可分离卷积(depth-wise separable convolution)替代标准卷积方法进行计算,从卷积层的运算特点着手,减小网络参数数量并提升网络计算速度。传统的标准卷积其实一次性做了两件事:普通的卷积计算和特征数量的变化,而深度可分离卷积,将这两个步骤分开处理,分别进行深度卷积(depth-wise convolution)和节点卷积(point-wise convolution)。

    以M个输入特征图N个输出特征图的卷积层为例,假定卷积核的尺寸为K×K,每个卷积核都要与输入特征图的每个维度进行卷积操作,即卷积核将扩展为K×K×M×N,如图1(a)所示。拆分后,深度卷积使用滤波器对输入特征图的每个维度进行卷积操作,卷积核如图1(b)所示;节点卷积使用1×1卷积,将M个输入特征变为N个输出特征,卷积核如图1(c)所示。

    3.2 知识提取

    知识提取方法通过让简单的神经网络模型向高性能复杂模型“学习”,来提高简单模型的性能,获取具备较高精度的轻量化神经网络[11]。实验证实,通过该方法进行训练的简单模型,其性能优于直接训练的结果。在进行训练时,简单神经网络模型将自身输出与复杂模型相应输出的偏差纳入误差计算,再与标准结果的误差进行加权求和形成简单模型的损失函数。通过这种方式简单模型学习了复杂模型对数据间相近关系的理解,快速提升其识别精度。文献[12]对普通的知识提取方法进行改进,引入比例因子Z来表征复杂模型中的样本相似性,从而帮助简单模型更快的学习复杂模型的“知识”。

    3.3 矩阵低秩分解

    矩阵低秩分解类方法以其既可以加速深度神经网络计算又大大压缩网络中参数规模的优势,广泛用于轻量化深度神经网络[13]。以全连接层为例,权重矩阵是二维张量,可以使用典型的低秩分解类方法SVD因式分解参数矩阵。

    假定相邻的两个全连接层L1和L2分别有m、n个神经元,对应的权重矩阵W是一个m×n维的实数矩阵,用SVD法将其分解为[W=USVT],其中,U是m×m維实数矩阵,S是m×n维实数矩阵,V是n×n维实数矩阵。用这种方法得到的U、V是正交矩阵,S是对角矩阵,在其对角线上具有奇异值,可以发现奇异值衰减很快,权重矩阵W可以很好地被近似。该方法在Frobenius的意义上是最优的,最小化了权重矩阵因式分解前后的均方误差,有效降低了深度神经网络部署到嵌入式平台的存储和计算需求。

    4 总结与展望

    本文面向航空领域应用,考虑到机载嵌入式计算环境的资源限制,对深度神经网络模型的轻量化设计方法进行了总结分析。深度神经网络的轻量化设计主要通过模型压缩和计算结构优化实现网络参数存储空间的压缩,提升计算和训练速度,并控制模型精度损失在可接受的范围内。两大技术方向各有优势,模型压缩方法实现相对简单,但是侧重于存储空间的优化,对模型计算量的优化较弱;结构优化方法不仅能够取得较高的参数规模压缩比例,对计算速度的提升也十分明显,但是需要较高的设计技巧,实现过程相对复杂。未来要在航空领域应用深度神经网络算法实现智能应用,应当综合使用模型压缩与结构优化方法,结合硬件平台的条件,进行模型轻量化设计的同时保证模型性能。

    参考文献:

    [1] Hinton G, Salakhutdinov R. Reducing the dimensionality of data with neural networks[J]. Science, 2006, 5786(313): 504-507.

    [2] He K, Zhang X, Ren S, et al. Deep Residual Learning for Image Recognition[C] // IEEE Conference on Computer Vision and Pattern Recognition, 2016: 770-778.

    [3] Han S, Mao H, Dally W J. Deep compression: Compressing deep neural networks with pruning, trained quantization and huffman coding [EB/OL].https://arXiv.org/abs/1510.00149.

    [4] Luo J H, Wu J. An entropy-based pruning method for CNN compression[EB/OL].https://arXiv.org/abs/1706.05791.

    [5] Yang T J, Chen Y H,Sze V.Designing energy-efficient convolutional neural networks using energyaware pruning[EB/OL]. https://arXiv.org/abs/1611.05128.

    [6] LeCUN Y, DENKER J S, SOLLA S A. Optimal brain damage[C]//NIPS89: Proceedings of the 2nd International Conference on Neural Information Processing Systems. Cambridge, MA: MIT Press, 1989: 598-605.

    [7] HASSIBI B, STORK D G. Second order derivatives for network pruning: optimal brain surgeon [C]//NIPS93: Proceedings of the 1993 Advances in Neural Information Processing Systems. San Francisco, CA: Morgan Kaufmann Publishers, 1993: 164-171.

    [8] Tian Q, Arbel T, Clark J J. Efficient gender classification using a deep LDA-pruned net[EB/OL]. https://arXiv.org/abs/1704.06305.

    [9] Gysel P, Motamedi M, Ghiasi S. Hardware-oriented approximation of convolutional neural networks[EB/OL]. https://arXiv.org/abs/1604.03168.

    [10] Andrew G, Zhu M, Chen B. MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications[EB/OL]. https://arXiv.org/abs/1704.04861.

    [11] Hinton G, Vinyals O, Dean J. Distilling the knowledge in a neural network[EB/OL]. https://arXiv.org/abs/1503.02531.

    [12] 徐喆,宋泽奇.带比例因子的卷积神经网络压缩方法[J].计算机工程与应用,2018, 54(12): 105-109.

    [13] Denton E, Zaremba W, Bruna J, et al. Exploiting linear structure within convolutional networks for efficient evaluation[C]//Advances in Neural Information Processing Systems, 2014: 1269-1277.

    【通聯编辑:谢媛媛】

随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2025/2/11 2:14:49