ICML2022

Fast Relative Entropy Coding with A* coding

Gergely Flamich, Stratis Markou, José Miguel Hernández-Lobato

41 citations

Abstract

Relative entropy coding (REC) algorithms encode a sample from a target distribution QQ using a proposal distribution PP, such that the expected codelength is O(DKL[QP])\mathcal{O}(D_{KL}[Q \,||\, P]). REC can be seamlessly integrated with existing learned compression models since, unlike entropy coding, it does not assume discrete QQ or PP, and does not require quantisation. However, general REC algorithms require an intractable Ω(eDKL[QP])\Omega(e^{D_{KL}[Q \,||\, P]}) runtime. We introduce AS* and AD* coding, two REC algorithms based on A* sampling. We prove that, for continuous distributions over R\mathbb{R}, if the density ratio is unimodal, AS* has O(D[QP])\mathcal{O}(D_{\infty}[Q \,||\, P]) expected runtime, where D[QP]D_{\infty}[Q \,||\, P] is the Rényi \infty-divergence. We provide experimental evidence that AD* also has O(D[QP])\mathcal{O}(D_{\infty}[Q \,||\, P]) expected runtime. We prove that AS* and AD* achieve an expected codelength of O(DKL[QP])\mathcal{O}(D_{KL}[Q \,||\, P]). Further, we introduce DAD*, an approximate algorithm based on AD* which retains its favourable runtime and has bias similar to that of alternative methods. Focusing on VAEs, we propose the IsoKL VAE (IKVAE), which can be used with DAD* to further improve compression efficiency. We evaluate A* coding with (IK)VAEs on MNIST, showing that it can losslessly compress images near the theoretically optimal limit.