Public Member Functions  
DrusillaSelect (const MatType &referenceSet, const size_t l, const size_t m)  
Construct the DrusillaSelect object with the given reference set (this is the set that will be searched). More...  
DrusillaSelect (const size_t l, const size_t m)  
Construct the DrusillaSelect object with no given reference set. More...  
const arma::Col< size_t > &  CandidateIndices () const 
Access the indices of points in the candidate set. More...  
arma::Col< size_t > &  CandidateIndices () 
Modify the indices of points in the candidate set. Be careful! More...  
const MatType &  CandidateSet () const 
Access the candidate set. More...  
MatType &  CandidateSet () 
Modify the candidate set. Be careful! More...  
void  Search (const MatType &querySet, const size_t k, arma::Mat< size_t > &neighbors, arma::mat &distances) 
Search for the k furthest neighbors of the given query set. More...  
template < typename Archive >  
void  serialize (Archive &ar, const unsigned int) 
Serialize the model. More...  
void  Train (const MatType &referenceSet, const size_t l=0, const size_t m=0) 
Build the set of candidate points on the given reference set. More...  
Definition at line 39 of file drusilla_select.hpp.
DrusillaSelect  (  const MatType &  referenceSet, 
const size_t  l,  
const size_t  m  
) 
Construct the DrusillaSelect object with the given reference set (this is the set that will be searched).
The resulting set of candidate points that will be searched at query time will have size l*m.
referenceSet  Set of reference data. 
l  Number of projections. 
m  Number of elements to store for each projection. 
DrusillaSelect  (  const size_t  l, 
const size_t  m  
) 
Construct the DrusillaSelect object with no given reference set.
Be sure to call Train() before calling Search()!
l  Number of projections. 
m  Number of elements to store for each projection. 

inline 
Access the indices of points in the candidate set.
Definition at line 108 of file drusilla_select.hpp.

inline 
Modify the indices of points in the candidate set. Be careful!
Definition at line 110 of file drusilla_select.hpp.

inline 
Access the candidate set.
Definition at line 103 of file drusilla_select.hpp.

inline 
Modify the candidate set. Be careful!
Definition at line 105 of file drusilla_select.hpp.
void Search  (  const MatType &  querySet, 
const size_t  k,  
arma::Mat< size_t > &  neighbors,  
arma::mat &  distances  
) 
Search for the k furthest neighbors of the given query set.
(The query set can contain just one point: that is okay.) The results will be stored in the given neighbors and distances matrices, in the same format as the NeighborSearch and LSHSearch classes. That is, each column in the neighbors and distances matrices will refer to a single query point, and the k'th row in that column will refer to the k'th candidate neighbor or distance for that query point.
querySet  Set of query points to search. 
k  Number of furthest neighbors to search for. 
neighbors  Matrix to store resulting neighbors in. 
distances  Matrix to store resulting distances in. 
void serialize  (  Archive &  ar, 
const unsigned  int  
) 
Serialize the model.
void Train  (  const MatType &  referenceSet, 
const size_t  l = 0 , 

const size_t  m = 0 

) 
Build the set of candidate points on the given reference set.
If l and m are left unspecified, then the values set in the constructor will be used instead.
referenceSet  Set to extract candidate points from. 
l  Number of projections. 
m  Number of elements to store for each projection. 