When performing a multi-index merge, why should the coarse quantizers be the same ? #3686
Replies: 2 comments
-
Through the experiment, I found that the index performance obtained by the merge after re-specifying the quantizer for index2 would significantly decrease. Will quantizers also participate in the 'train' and 'add' processes. Is there another way to merge two indices that use different quantizers? |
Beta Was this translation helpful? Give feedback.
-
I used python to train two indexes in multiple processes (created by the same quantizer), and a Segmentation fault (core dumped) occurred during the merge. Is there a method for distributed training multiple indexes and merging them into one index |
Beta Was this translation helpful? Give feedback.
-
Summary
I trained the two indexes separately, but when I merged the two indexes using
merge_from()
I got the following error:RuntimeError: Error in virtual void faiss::IndexIVF::check_compatible_for_merge(const faiss::Index&) const at /root/workspace/faiss/IndexIVF.cpp:1210: Error: 'v == v2' failed: coarse quantizers should be the same
The code I use is as follows:
In addition, I modified the index2 quantizer before the
merge_from()
(aftertrain()
andadd()
), and it worked. Is there any problem with this.Platform
OS: ubuntu 20.04
Faiss version: V1.8.0
Running on:
Interface:
Reproduction instructions
Beta Was this translation helpful? Give feedback.
All reactions