23 #ifndef __MLPACK_METHODS_NEIGHBOR_SEARCH_NEIGHBOR_SEARCH_RULES_HPP
24 #define __MLPACK_METHODS_NEIGHBOR_SEARCH_NEIGHBOR_SEARCH_RULES_HPP
29 template<
typename SortPolicy,
typename MetricType,
typename TreeType>
39 double BaseCase(
const size_t queryIndex,
const size_t referenceIndex);
49 double Score(
const size_t queryIndex, TreeType& referenceNode);
62 double Rescore(
const size_t queryIndex,
63 TreeType& referenceNode,
64 const double oldScore)
const;
74 double Score(TreeType& queryNode, TreeType& referenceNode);
87 double Rescore(TreeType& queryNode,
88 TreeType& referenceNode,
89 const double oldScore)
const;
130 const size_t neighbor,
131 const double distance);
138 #include "neighbor_search_rules_impl.hpp"
140 #endif // __MLPACK_METHODS_NEIGHBOR_SEARCH_NEIGHBOR_SEARCH_RULES_HPP
double CalculateBound(TreeType &queryNode) const
Recalculate the bound for a given query node.
size_t lastQueryIndex
The last query point BaseCase() was called with.
arma::mat & distances
The matrix the resultant neighbor distances should be stored in.
void InsertNeighbor(const size_t queryIndex, const size_t pos, const size_t neighbor, const double distance)
Insert a point into the neighbors and distances matrices; this is a helper function.
const arma::mat & referenceSet
The reference set.
double lastBaseCase
The last base case result.
size_t lastReferenceIndex
The last reference point BaseCase() was called with.
double Score(const size_t queryIndex, TreeType &referenceNode)
Get the score for recursion order.
arma::Mat< size_t > & neighbors
The matrix the resultant neighbor indices should be stored in.
double BaseCase(const size_t queryIndex, const size_t referenceIndex)
const arma::mat & querySet
The query set.
double Rescore(const size_t queryIndex, TreeType &referenceNode, const double oldScore) const
Re-evaluate the score for recursion order.
MetricType & metric
The instantiated metric.
NeighborSearchRules(const arma::mat &referenceSet, const arma::mat &querySet, arma::Mat< size_t > &neighbors, arma::mat &distances, MetricType &metric)