结构体 faiss::Quantizer

struct Quantizer

量化器对象的通用接口

faiss::AdditiveQuantizer, faiss::ProductQuantizer, faiss::ScalarQuantizer 类继承

公共函数

inline explicit Quantizer(size_t d = 0, size_t code_size = 0)
virtual void train(size_t n, const float *x) = 0

训练量化器

参数:

x – 训练向量,大小为 n * d

virtual void compute_codes(const float *x, uint8_t *codes, size_t n) const = 0

量化一组向量

参数:
  • x – 输入向量,大小为 n * d

  • codes – 输出码,大小为 n * code_size

virtual void decode(const uint8_t *code, float *x, size_t n) const = 0

解码一组向量

参数:
  • codes – 输入码,大小为 n * code_size

  • x – 输出向量,大小为 n * d

inline virtual ~Quantizer()

公共成员

size_t d

输入向量的大小

size_t code_size

每个索引向量的字节数