Réduire l'empreinte de la recherche multi-vecteurs avec un impact minimal sur les performances via le regroupement de jetons
Reducing the Footprint of Multi-Vector Retrieval with Minimal Performance Impact via Token Pooling
September 23, 2024
Auteurs: Benjamin Clavié, Antoine Chaffin, Griffin Adams
cs.AI
Résumé
Au cours des dernières années, les méthodes de recherche multi-vecteurs, menées par ColBERT, sont devenues une approche de plus en plus populaire pour l'IR neuronale. En stockant les représentations au niveau du jeton plutôt qu'au niveau du document, ces méthodes ont démontré des performances de recherche très solides, notamment dans des contextes hors domaine. Cependant, les exigences en termes de stockage et de mémoire nécessaires pour stocker le grand nombre de vecteurs associés restent un inconvénient important, entravant leur adoption pratique. Dans cet article, nous introduisons une approche de regroupement de jetons basée sur le clustering pour réduire de manière agressive le nombre de vecteurs à stocker. Cette méthode peut réduire l'empreinte spatiale et mémoire des index ColBERT de 50% sans pratiquement aucune dégradation des performances de recherche. Cette méthode permet également d'obtenir des réductions supplémentaires, réduisant le nombre de vecteurs de 66% à 75%, avec une dégradation restant en dessous de 5% sur la grande majorité des ensembles de données. Importamment, cette approche ne nécessite aucun changement architectural ni traitement au moment de la requête, et peut être utilisée comme une simple insertion lors de l'indexation avec n'importe quel modèle similaire à ColBERT.
English
Over the last few years, multi-vector retrieval methods, spearheaded by
ColBERT, have become an increasingly popular approach to Neural IR. By storing
representations at the token level rather than at the document level, these
methods have demonstrated very strong retrieval performance, especially in
out-of-domain settings. However, the storage and memory requirements necessary
to store the large number of associated vectors remain an important drawback,
hindering practical adoption. In this paper, we introduce a simple
clustering-based token pooling approach to aggressively reduce the number of
vectors that need to be stored. This method can reduce the space & memory
footprint of ColBERT indexes by 50% with virtually no retrieval performance
degradation. This method also allows for further reductions, reducing the
vector count by 66%-to-75% , with degradation remaining below 5% on a vast
majority of datasets. Importantly, this approach requires no architectural
change nor query-time processing, and can be used as a simple drop-in during
indexation with any ColBERT-like model.Summary
AI-Generated Summary