This paper is focused on the improvement the efficiency of the sparse convolutional neural networks (CNNs) layers on graphic processing units (GPU). The Nvidia deep neural network (cuDnn) library provides the most effective implementation of deep learning (DL) algorithms for GPUs. GPUs are one of the most efficient and commonly used accelerators for deep learning computations. The modern CNN models need megabytes of coefficients and needed millions MAC operations to perform convolution. One of the most common techniques for compressing CNN models is weight pruning. There are two main types of pruning: structural (based on removing whole weight channels) and non-structural (removing individual weights). The first enables much easier acceleration, but with this type it is difficult to achieve a sparsity level and accuracy as high as that obtained with the second type. Non-structural pruning with retraining can generate a matrix-weight up to $\sim90\%$ or more of sparsity in some deep CNN models. This work shows when is worth using a direct sparse operation to speed-up the calculation of the convolution layers. The VGG-16, CNN-non-static and 1x1 layers from ResNet models were used as a benchmarks. In addition, we present the impact of using reduced precision on time efficiency.
翻译:本文的重点是提高平面处理器(GPU)中稀有的神经神经网络(CNNs)层的效率。Nvidia深神经网络(cuDnn)图书馆为GPU提供最有效的深学习算法。GPU是最高效和常用的加速器之一,用于深层学习计算。现代CNN模型需要兆字节系数和数百万兆字节的MAC操作来进行回流。压缩CNN模型的最常用技术之一是减肥。有两种主要修剪方法:结构型(以删除整个重量通道为基础)和非结构型(调整个人重量) 。第一种是更便于加速的,但这种类型很难达到与第二类型相比的宽度和精度。非结构型再培训可产生一个重量最高至$sim90++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++