端对端学习可压缩表示的“软到硬”矢量量化外文翻译资料

 2022-01-02 09:01

英语原文共 16 页,剩余内容已隐藏,支付完成后下载完整资料


端对端学习可压缩表示的“软到硬”矢量量化

摘要

在深度体系结构中,我们提出一个用端对端训练策略来学习可压缩表示的新方法。该方法基于量化和熵的软(连续的)松弛,在训练过程中,我们逐渐退火到与它们相对应的离散表示。我们为两个令人感兴趣的应用展示了该方法:图片压缩和神经网络压缩。虽然这些工作通常使用不同的方法来处理的,但我们的软量化到硬量化所给出的结果能够与这两种方法用最先进水平得到的结果相竞争。

  1. 介绍

最近这些年,深度神经网络在机器学习和计算机视觉领域有了很多突破[20,28,9],并且现在也在工业中广泛被应用。现代的深度神经网络模型有数百万或者数千万的参数,不论是在模型产生的中间特征表示还是模型本身,都导致了结构的高度冗余。尽管DNN模型的过度参数化在训练时会有一个不错的效果,而实际上,它需要压缩DNN模型进行推论,举例来说,当把它们应用到手机或者其他内存有限的嵌入式设备的时候。另一方面,学习压缩特征表示的能力对于(数据自适应)压缩算法的发展有很大的潜力,这些压缩算法有多种数据类型,比如图像,音频,视频和文本,对于所有的数据类型,DNN体系结构都能获得。

DNN模型压缩和使用DNN的有损图像压缩最近都吸引了很多人的注意。为了压缩一系列连续的模型参数或特征,我们需要从一系列量化水平(多维案例中为向量)中用一个代表来近似每个参数或特征,每个量化水平与一个分配有关,然后存储参数或特征的分配以及量化水平。利用相关的量化水平代表DNN模型的每个参数或者特征表示的每个特征会以一个失真D为代价,即性能损失(举例来说,基于量化模型参数的DNN分类精度研究,或者基于量化中间特征表示的自动编码器重构误差分析)。速率R,即标志流的熵,决定了比特流中对模型或特征编码的代价。

为了学习可压缩的DNN模型或者特征表示,我们需要最小化,控制了熵的失真。将熵包含到学习成本函数中可以看作是增加了一个正则化器,它促进了网络的可压缩表示或特征表示。但是,当为DNN最小化时会有两个主要的挑战:i)处理成本函数的不可微性(由于量化操作),ii)获得熵的精确可微估计(即R)。为了解决i),有很多方法被提出。其中最著名的就是随机近似[39,19,6,32,4]以及用光滑导数近似舍入[15,30]。为了解决ii),一个常见的方法是假设标志流是独立同分布,用参数模型模拟边缘符号分布,比如高斯混合模型[30,34],分段线性模型[4],或者伯努利分布[33](对于二进制标志而言)。

在本文中,我们提出一个统一的端对端学习框架来学习可压缩表示,联合优化模型参数,量化水平以及由此产生的符号流的熵以压缩网络中的一个子集或模型本身(见插图)。我们用DNN模型和特征压缩中新颖的方法来解决上面两个挑战。

我们的主要贡献为:

我们提供了第一个关于特征表示和DNN模型的端对端学习压缩的联合观点。迄今为止,这两个问题在文学领域被广泛且独立地研究。

我们的方法简单直观,取决于给定的被量化到量子化级别的标量或矢量的软分配。一个参数控制了分配的硬度并且在训练过程中允许逐渐地从软分配到硬分配转变。与基于近似或随机量化的方案相对比,我们的编码方案是直接可微分,因此也是可以端对端训练的。

我们的方法不会强制网络去适应特定的(给定的)量化输出(举例来说,整数),但会与权重一起学习量化水平,使其应用于更广泛的问题。特别地,我们在学习压缩方面第一次探究矢量量化并且表明了它比标量量化的优势。

与以前的方法不同,我们不假设特征的边缘分布或者那些依赖于分配概率直方图而不依赖于文献中常用的参数模型来量化的模型参数。

我们将我们的方法应用于32层ResNet模型[13]的DNN模型压缩,以及使用最近提出的压缩自动编码器的变体来实现的全分辨率图像压缩[30]。在两种应用中,我们使用了更少的模型假设并且与之前的工作相比大大简化了训练步骤,而获得了与当今最先进技术相媲美的性能[30,5]。

本文的其余部分组织如下。在第3部分介绍的软到硬向量优化方法之前,第2部分回顾相关工作。相对地,在第4和第5部分,我们把它应用到图片压缩的压缩编码器以及DNN压缩的ResNet。第6部分总结整篇文章。

  1. 相关工作

人们对DNN模型中全分辨率图像压缩有着强烈的兴趣,最值得注意的是[32,33,3,4,30],它们的表现都优于JPEG[35],有的甚至优于JPEG 2000[29]。先驱者的工作[32,33]表明渐进式图像压缩可以被卷积循环神经网络学习,在训练的过程中运用随机量化的方法,[3,30]都依赖于卷积自动编码体系结构。这些工作会在第4部分更详细地讨论。

在DNN模型压缩中运用了多步流程,首先预训练的DNN权重被删去,余下的参数用类似K-均值的算法量化,DNN然后被训练,最终量化的DNN模型使用熵编码来进行编码。一个完全不同的方法被采用,就是利用最小描述长度原理处理DNN压缩任务,这具有坚实的信息论基础。

值得注意的是最近的许多工作以DNN模型参数为目标,并且有可能以用低精度算法加速硬件DNN评估为目标,例子见[15,23,38,43]。然而,大多数这些工作没有专门训练DNN来使量化参数在信息理论上是可压缩的。

正如在我们的软到硬量化框架中所做的一样,逐渐从一个简单的问题(凸的或可微分的)转移到实际上更艰难的问题一直被不同的环境所研究并且这属于延续方法的范畴(在[2]中可见概述)。形式上相关但从概率角度出发的是最大熵聚类/向量量化的确定性退火算法,参见,如[24,42]。可以说,与我们最相关的是[41]文献中所提到的,它还使用了最近邻居分配的延续,但是它在学习监督原型分类器的环境中。据我们所知,连续的方法之前还没有被运用到在基于神经网络的图像压缩或者DNN压缩的端对端学习框架中。

  1. 提出的软到硬向量优化

3.1问题的形成

序言和注释。考虑DNN标准模型,其中体系结构组成K层,映射,参数。我们指定作为网络的参数并且网络的中间层的输出为并且,因此和是由层产生的特征向量。

网络参数的学习通过最小化实时丢失函数训练数据和标签。通常,丢失函数可以分解为训练数据和正则化项的总和,

(1)

其中是样品丢失,设置了正则化强度,是一个正则器(举例来说,对于正则化来说,)。在这种情况下,网络的参数可以使用mini-batch梯度下降的方法来学习。假设网络训练的数据X,Y服从某种分布,丢失表达式(1)可以被认为是期望丢失的近似。在图像分类中,对应于输入图片空间,对应于分类概率,是分类交叉熵。

我们认为,当网络映射回输入空间时,深层结构是一个自动编码器,目的是复制输入。在这种情况下,并且训练来估计x,举例来说,用均方差丢失函数。在网络内部,自动编码器通常压缩输入的维度变成某种跟小的维度,即,输出层有最小的输出维度,,,我们称其为“瓶颈”。

压缩表示。我们认为,如果可以用更少的位序列化为二进制流,那么权重参数或者特征可压缩表示。对于DNN压缩,我们想要整个网络的参数W都可压缩。对于利用自动编码器的图片压缩,我们只需要瓶颈的特征可压缩。

给定一个输入x,假设我们想压缩网络的特征表示(举例来说,自动编码器的)。假设数据X,Y服从某种分布,z是来自连续的随机变量Z。

为了用有限的位存储z,我们需要把它映射到离散的空间。特别地,我们使用(符号)编码器把z映射到m个符号的序列,编码器中每个符号都是从1到L变化的索引,即。z是由(符号)编码器重新制造产生的,该编码器把符号重新映射回。z是来自Z的一个样本,标志流服从离散概率分布。因此,根据香农源编码定理,给定编码器E,正确的压缩矩阵是的熵:

(2)

我们的总体目标是在期望丢失和的熵之间优化速率失真权衡:

(3)

其中是体系结构,在这个结构中z被替代,控制着z的压缩性与它对F的扭曲的权衡。

然而,我们不能直接优化(3)。首先,我们不知道X和Y的分布。第二,Z的分布复杂地依赖于网络参数W和X的分布。第三,编码器E是离散映射因此不可微。对于第一个近似,我们考虑的是样本熵而不是H(E(Z))。即,给定数据X和一些固定的网络参数W,我们可以通过一张柱状图求出概率P(E(Z)=e),。为了使这个计算变得精确,我们需要。如果z是自动编码器的瓶颈,这就相当于尝试学习整个离散数据空间的单个直方图。我们通过假设E(Z)为独立同分布来使它松弛,这样我们就可以计算出L个不同值的直方图。更精确地,我们假设,可以求出,其中是直方估计

(4)

其中,我们表示项并且是对于训练数据点的输出特征z。然后我们通过把(3.1)的近似带入(2)获得Z的熵的估计,

, (5)

其中,第一个(确切的)等式来源于[7],理论2.6.6,是组件的样品熵(假设,独立同分布)。

现在,我们可以通过用超过的样本均值以及计算的样品熵代替期望损失来简化(3)的理想目标,

(6)

注意到,到如今我们假设z是F的特征输出,即,,。但是,如果z是多个特征输出的串联,则上述处理将保持不变。我们还可以为单独的特征输出获得单独的样本熵项,并将其添加到(6)中的目标中。

如果z是由一个或者多个参数向量组成,比如在DNN压缩中,,由于W是模型饿一个参数,和不再是随机变量。那就是说,与源X产生另一个我们希望的可压缩的源相反,我们希望单个参数向量W的离散化是可压缩的。这类似于压缩单个文档,而不是学习可以压缩文档流的模型。在这种情况下,(3)不是合适的目标,但我们在(6)中的简化目标仍然是合适的。这是因为一个标准的压缩技术是创建一个(有限)数据的统计模型,该模型有一个小的样本熵。唯一的不同是,现在(4)中的直方图概率取的是W而不是数据集X,即在(4)中,,并且它们计入存储以及编码器E和解码器D。

挑战。等式(6)给了我们一个联合的目标,它可以很好地描述深度体系结构中压缩表示与体系原始训练目标之间的权衡。但是,如何找到一个好的编码器E,一个相对应的解码器D,以及最小化目标的参数W的问题依然存在。首先,我们需要为编码器和解码器强制一种形式,第二,我们需要有一种关于参数W的优化方法。与E的选择无关,(6)很有挑战性,因为E是到一个有限集的映射,因此不可微。这意味着,关于z和z层的参数不可微,也不可微。举例来说,如果是自动编码器并且,对于和网络的输出是不可微分的。

这些挑战激发了我们软-硬退火方法的设计决策,这将会在下个部分介绍。

3.2我们的方法

编码器和解码器的形式。对于编码器,假定我们有L个中心向量。然后通过将重新构造成一个矩阵,并将每一列分配给在C中它最近邻居的索引。即,我们假设特征被建模为中m个点的序列,我们将其划分为中心向量C上的沃罗诺伊镶嵌。解码器之后从一个标志序列中选择相对应的中心向量来简单地构造,其中是通过将重新整为而形成的。我们会将与互换着写。

然后,我们的想法是通过软赋值将E和D松弛成连续映射,而不是通过E的硬最近邻赋值。

软分配。我们把C中的软分配定义为

(7)

其中是标准的softmax运算符,目的是有正项,并且。我们用表示的第j项,注意:

为了使汇聚到在C中最接近中心的独热编码。因此,我们把定义为C中的硬分配,并且参数作为软分配的硬度。

使用软分配,我们定义的软量化表达式为:

其中中心矩阵。相对应的硬分配用表示,其中是C中最接近的中心。因此,我们现在可以这样写:

现在,我们可以通过使用软分配中的平滑松弛计算,而不是通过硬的最近邻分配。用表示相对应的向量形式,通过用代替网络中的来得到量化体系结构中的可微近似。

熵估计。使用软分配,我们可以通过求每个中心的部分分配总和而不是通过像(4)中计数的方式定义一个软直方图:

这给了我们一个有效的概率质量函数,它可微但当时汇聚到。

现在,我们可以将“软熵”定义为p和q的交叉熵:

其中表示交叉熵的K-L散度。由于,这就将设为的上限,其中p=q时,H(p)达到上限。

我们因此得到一个可微的“软熵”丢失(有关于q),这也是样本熵的上限值。因此,我们可以通过最小化来间接地最小化,把p的直方概率视为梯度计算的常量。但是,注意到添加到训练数据而没有。这阻止了在上的小批量梯度下降,这在处理大规模学习问题的时候会变成一个问题。在这种情况下,我们可以将软熵重新定义为。正如之前所讲的,当时,,但不再是的上限。这样做的好处是,现在可以被分解为

(8),

这样我们可以得到样本的额外损失,。

软到硬确定性退火算法。我们的软分配策略给了我们可微近似,相对应地,离散网络的以及样本熵。然而,我们的目标是当使用有硬分配的编码器和解码器时,学习网络参数W来最小化(6),目的是使我们能得到一个可压缩的标志流,在这个标志流中我们可以使用比如说算术编码的东西来压缩。

为此,在训练过程中,我们将从某个初值逐渐退火到终值,目的是使得软估计逐渐变成我们要使用的最终硬量化的一个更好的估计。选择退火算法是至关重要的。因

全文共10642字,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[2455]

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。