Pooling Techniques
course-multi-vector-searchqdrant-examplesmodule-3
Export
Module 3: Pooling Techniques
Load the ColPali model for generating multi-vector image embeddings.
[3]
Downloading (incomplete total...): 0.00B [00:00, ?B/s]
Fetching 7 files: 0%| | 0/7 [00:00<?, ?it/s]
Spatial pooling: reshape the 1024 patch embeddings into a 32×32 grid and average along rows or columns. This reduces 1024 vectors to just 32, achieving a 32× memory reduction.
[4]
Original shape: (1030, 128) Original: 263,680 bytes (257 KB) Row pooled: 8,192 bytes (8 KB) Reduction: 32×
Hierarchical pooling: use k-means clustering to group similar patch embeddings, then average within each cluster. This approach is content-aware and lets you choose any compression ratio.
[5]
k= 16: 1030 → 16 vectors (64× reduction) k= 32: 1030 → 32 vectors (32× reduction) k= 64: 1030 → 64 vectors (16× reduction) k=128: 1030 → 128 vectors (8× reduction)