Skip to main content
QUICK REVIEW

[论文解读] IDF++: Analyzing and Improving Integer Discrete Flows for Lossless Compression

Rianne van den Berg, Alexey A. Gritsenko|arXiv (Cornell University)|Jun 22, 2020
Algorithms and Data Compression参考文献 52被引用 38
一句话总结

本文分析用于无损压缩的整数离散流(IDF),驳斥了离散流的一个被声称的限制,检验梯度偏差,并提出架构改进(IDF++),在减少流层数量的同时提升压缩性能。

ABSTRACT

In this paper we analyse and improve integer discrete flows for lossless compression. Integer discrete flows are a recently proposed class of models that learn invertible transformations for integer-valued random variables. Their discrete nature makes them particularly suitable for lossless compression with entropy coding schemes. We start by investigating a recent theoretical claim that states that invertible flows for discrete random variables are less flexible than their continuous counterparts. We demonstrate with a proof that this claim does not hold for integer discrete flows due to the embedding of data with finite support into the countably infinite integer lattice. Furthermore, we zoom in on the effect of gradient bias due to the straight-through estimator in integer discrete flows, and demonstrate that its influence is highly dependent on architecture choices and less prominent than previously thought. Finally, we show how different architecture modifications improve the performance of this model class for lossless compression, and that they also enable more efficient compression: a model with half the number of flow layers performs on par with or better than the original integer discrete flow model.

研究动机与目标

  • 评估整数离散流在离散数据上的灵活性及其建模任意分布的能力。
  • 研究直通梯度偏差对训练 IDFs 的影响并比较估计量。
  • 探索架构修改以提升 IDF 的性能和压缩效率。
  • 量化 IDF++ 相对于基线在标准数据集上的压缩性能。

提出的方法

  • 回顾关于离散流灵活性的理论主张,并演示将其嵌入到 Zd 中可实现分解能力。
  • 通过直通估计器分析梯度偏差,并在 CIFAR-10 上与无偏梯度进行比较。
  • 尝试不同的架构选择(耦合层、DenseNet 块、归一化)以提升 IDF 的性能。
  • 引入 IDF++ 的修改:在每层之后对通道置换取反、可学习的双射缩放(rezero)、分组归一化、Swish 激活,以及 DenseNet++ 块。
  • 在 CIFAR-10、ImageNet-32、ImageNet-64 上进行训练与评估;并使用每维比特数(bpd)与 IDF 和手设计编解码器进行比较。
  • 进行消融实验,以分离各架构改动的贡献。

实验结果

研究问题

  • RQ1整数离散流(IDF)是否可以通过嵌入到更大类别空间来因子化所有分布?
  • RQ2来自直通估计器的梯度偏差如何影响 IDF 的训练效率与最终性能?
  • RQ3架构改动(DenseNet++ 块、归一化、逐层反转的通道置换)是否提升 IDFs 的无损压缩性能?
  • RQ4在标准压缩基准上,IDF++ 与现有方法(IDF、手设计的编解码器)相比如何?

主要发现

Compression modelsCIFAR-10 (bpd)IMAGENET-32 (bpd)IMAGENET-64 (bpd)
PNG (Boutell & Lane, 1997)5.87*6.39*5.71*
JPEG-2000 (Rabbani, 2002)5.20†6.48†5.10†
FLIF (Sneyers & Wuille, 2016)4.19*4.52*4.19*
BIT-SWAP (Kingma et al., 2019)3.82 (3.78)4.50 (4.48)-
HILLOC (Townsend et al., 2019a)3.56 (3.55)4.20 (4.18)3.90 (3.89)
LBB (Ho et al., 2019b)3.12 (3.12)3.88 (3.87)3.70 (3.70)
SREC (Cao et al., 2020)--4.29
IDF (Hoogeboom et al., 2019a)3.32 (3.30)∗∗4.18 (4.15)3.90 (3.90)
IDF++, SMALL: 4 FLOWS PER LEVEL3.31 (3.29)4.16 (4.14)3.85 (3.85)
IDF++3.26 (3.24)4.12 (4.10)3.81 (3.81)
  • 将离散数据嵌入到 Zd(无限类别)使 IDF 能够分解分布,反驳了对灵活性受限的主张。
  • 直通梯度偏差并不像先前认为的那样有害;替代估计量并未持续改进结果。
  • 架构选择对 IDF 的深度/退化有很大影响;DenseNet++ 及其他修改在更少的流下实现更好的性能。
  • IDF++ 的每层 4 条流在等级单位下与 IDF 的每层 8 条流相匹配或超过,参数量和计算量约减少一半。
  • 在 CIFAR-10 上,IDF++ 的每层 4 条流实现的 bpd 与 IDF 的每层 8 条流相当或更好;在 ImageNet 变体上,IDF++ 与基线相当或优于基线。
  • 与手设计的编解码器和先前的深密度估计器相比,IDF++ 展示出具有竞争力或优越的压缩性能,量化增益在表 1 中给出。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。