Struct faiss::OneRecallAtRCriterion

struct faiss::OneRecallAtRCriterion : public faiss::AutoTuneCriterion

Public Types

typedef Index::idx_t idx_t

Public Functions

OneRecallAtRCriterion(idx_t nq, idx_t R)
double evaluate(const float *D, const idx_t *I) const override
inline ~OneRecallAtRCriterion() override
void set_groundtruth(int gt_nnn, const float *gt_D_in, const idx_t *gt_I_in)

Intitializes the gt_D and gt_I vectors. Must be called before evaluating

  • gt_D_in – size nq * gt_nnn

  • gt_I_in – size nq * gt_nnn

virtual double evaluate(const float *D, const idx_t *I) const = 0

Evaluate the criterion.

  • D – size nq * nnn

  • I – size nq * nnn


the criterion, between 0 and 1. Larger is better.

Public Members

idx_t R
idx_t nq

nb of queries this criterion is evaluated on

idx_t nnn

nb of NNs that the query should request

idx_t gt_nnn

nb of GT NNs required to evaluate criterion

std::vector<float> gt_D

Ground-truth distances (size nq * gt_nnn)

std::vector<idx_t> gt_I

Ground-truth indexes (size nq * gt_nnn)