Vector quantization is a fundamental operation for data compression and vector search. To obtain high accuracy, multi-codebook methods represent each vector using codewords across several codebooks. Residual quantization (RQ) is one such method, which iteratively quantizes the error of the previous step. While the error distribution is dependent on previously-selected codewords, this dependency is not accounted for in conventional RQ as it uses a fixed codebook per quantization step. In this paper, we propose QINCo, a neural RQ variant that constructs specialized codebooks per step that depend on the approximation of the vector from previous steps. Experiments show that QINCo outperforms state-of-the-art methods by a large margin on several datasets and code sizes. For example, QINCo achieves better nearest-neighbor search accuracy using 12-byte codes than the state-of-the-art UNQ using 16 bytes on the BigANN1M and Deep1M datasets.
翻译:向量量化是数据压缩和向量搜索中的基本操作。为实现高精度,多码本方法使用多个码本中的码字表示每个向量。残差量化(RQ)是其中一种方法,它通过迭代量化上一步的误差。尽管误差分布依赖于先前选择的码字,但传统RQ未考虑这种依赖关系,因为它每步使用固定码本。本文提出QINCo,一种神经RQ变体,它根据前几步对向量的近似为每一步构建专用码本。实验表明,QINCo在多个数据集和码本大小上显著优于最先进方法。例如,在BigANN1M和Deep1M数据集上,QINCo使用12字节码实现的最近邻搜索精度优于最先进的UNQ使用16字节码的结果。