faiss/tests
Check Deng 9b1982262a Add ProductAdditiveQuantizer (#2286)
Summary:
This diff added ProductAdditiveQuantizer.

A Simple Algo description:

1. Divide the vector space into several orthogonal sub-spaces, just like PQ does.
2. Quantize each sub-space by an independent additive quantizer.

Usage:

Construct a ProductAdditiveQuantizer object:
- `d`: dimensionality of the input vectors
- `nsplits`: number of sub-spaces divided into
- `Msub`: `M` of each additive quantizer
- `nbits`: `nbits` of each additive quantizer

```python
d = 128
nsplits = 2
Msub = 4
nbits = 8
plsq = faiss.ProductLocalSearchQuantizer(d, nsplits, Msub, nbits)
prq = faiss.ProductResidualQuantizer(d, nsplits, Msub, nbits)
```

Pull Request resolved: https://github.com/facebookresearch/faiss/pull/2286

Test Plan:
```

buck test //faiss/tests/:test_local_search_quantizer -- TestProductLocalSearchQuantizer

buck test //faiss/tests/:test_residual_quantizer -- TestProductResidualQuantizer

```

Reviewed By: alexanderguzhva

Differential Revision: D35907702

Pulled By: mdouze

fbshipit-source-id: 7428a196e6bd323569caa585c57281dd70e547b1
2022-05-05 15:14:07 -07:00
..
CMakeLists.txt Reduce mem usage + improve performance for sequential search imlementation 2021-10-05 15:54:04 -07:00
common_faiss_tests.py Add manifold check for size 0 (#1867) 2021-05-09 22:30:31 -07:00
test_autotune.py
test_binary_factory.py
test_binary_flat.cpp Enable clang-format + autofix. 2021-02-25 04:46:10 -08:00
test_binary_hashindex.py Add manifold check for size 0 (#1867) 2021-05-09 22:30:31 -07:00
test_binary_io.py
test_build_blocks.py Fix reconstruct bug when by_residual is false (#2298) 2022-04-20 01:35:21 -07:00
test_clustering.py Non-uniform quantization of vector norms (#2037) 2021-10-11 14:13:16 -07:00
test_contrib.py fix test in test_contrib (#2294) 2022-04-20 03:03:38 -07:00
test_contrib_with_scipy.py contrib clustering module (#2217) 2022-02-28 14:18:47 -08:00
test_dealloc_invlists.cpp Enable clang-format + autofix. 2021-02-25 04:46:10 -08:00
test_documentation.py Generate python docstrings from doxygen comments. (#1969) 2021-10-10 22:14:48 -07:00
test_doxygen_documentation.py Generate python docstrings from doxygen comments. (#1969) 2021-10-10 22:14:48 -07:00
test_extra_distances.py Add manifold check for size 0 (#1867) 2021-05-09 22:30:31 -07:00
test_factory.py fbcode//faiss/tests 2022-04-25 17:55:46 -07:00
test_fast_scan.py Support reconstruct() in IndexFastScan (#2287) 2022-04-19 03:18:58 -07:00
test_fast_scan_ivf.py make fast scan tests cheaper (#2251) 2022-03-16 13:23:07 -07:00
test_index.py Add IndexNSGPQ and IndexNSGSQ (#2218) 2022-02-18 04:51:15 -08:00
test_index_accuracy.py Break distance ties in `heap_replace_top()` by ID (#2245) 2022-03-09 10:23:48 -08:00
test_index_binary.py Fix packaging (#2121) 2021-12-07 13:12:30 -08:00
test_index_binary_from_float.py Fix inefficient float / binary conversion 2021-03-01 21:43:31 -08:00
test_index_composite.py IndexFlatCodes: a single parent for all flat codecs (#2132) 2021-12-07 01:31:07 -08:00
test_io.py IndexFlatCodes: a single parent for all flat codecs (#2132) 2021-12-07 01:31:07 -08:00
test_ivflib.py
test_ivfpq_codec.cpp Enable clang-format + autofix. 2021-02-25 04:46:10 -08:00
test_ivfpq_indexing.cpp Enable clang-format + autofix. 2021-02-25 04:46:10 -08:00
test_local_search_quantizer.py Add ProductAdditiveQuantizer (#2286) 2022-05-05 15:14:07 -07:00
test_lowlevel_ivf.cpp IVFPQ AVX2 optimization for PQ, including polysemous filtering (#2277) 2022-03-24 06:35:38 -07:00
test_mem_leak.cpp Reduce mem usage + improve performance for sequential search imlementation 2021-10-05 15:54:04 -07:00
test_merge.cpp Enable clang-format + autofix. 2021-02-25 04:46:10 -08:00
test_meta_index.py Fix packaging (#2121) 2021-12-07 13:12:30 -08:00
test_omp_threads.cpp Enable clang-format + autofix. 2021-02-25 04:46:10 -08:00
test_omp_threads_py.py
test_ondisk_ivf.cpp Enable clang-format + autofix. 2021-02-25 04:46:10 -08:00
test_oom_exception.py Portable SWIG Vectors (#1742) 2021-04-02 07:11:47 -07:00
test_pairs_decoding.cpp Enable clang-format + autofix. 2021-02-25 04:46:10 -08:00
test_params_override.cpp Enable clang-format + autofix. 2021-02-25 04:46:10 -08:00
test_partition.py
test_pq_encoding.cpp Enable clang-format + autofix. 2021-02-25 04:46:10 -08:00
test_product_quantizer.py Use BLAS to compute sdc table (#1809) 2021-04-16 00:17:51 -07:00
test_referenced_objects.py
test_refine.py Generalize DistanceComputer for flat indexes (#2255) 2022-03-20 23:43:33 -07:00
test_residual_quantizer.py Add ProductAdditiveQuantizer (#2286) 2022-05-05 15:14:07 -07:00
test_sliding_ivf.cpp Enable clang-format + autofix. 2021-02-25 04:46:10 -08:00
test_standalone_codec.py Implement LCC's RCQ + ITQ in Faiss (#2123) 2021-11-25 15:59:18 -08:00
test_threaded_index.cpp Enable clang-format + autofix. 2021-02-25 04:46:10 -08:00
test_transfer_invlists.cpp Enable clang-format + autofix. 2021-02-25 04:46:10 -08:00
torch_test_contrib.py Automatic type conversions for Python API (#2274) 2022-03-30 05:42:08 -07:00