mlpack
Public Types | Public Member Functions | List of all members
mlpack::kde::KDERules< MetricType, KernelType, TreeType > Class Template Reference

A dual-tree traversal Rules class for kernel density estimation. More...

#include <kde_rules.hpp>

Public Types

typedef tree::TraversalInfo< TreeType > TraversalInfoType
 

Public Member Functions

 KDERules (const arma::mat &referenceSet, const arma::mat &querySet, arma::vec &densities, const double relError, const double absError, const double mcProb, const size_t initialSampleSize, const double mcAccessCoef, const double mcBreakCoef, MetricType &metric, KernelType &kernel, const bool monteCarlo, const bool sameSet)
 Construct KDERules. More...
 
double BaseCase (const size_t queryIndex, const size_t referenceIndex)
 Base Case. More...
 
double Score (const size_t queryIndex, TreeType &referenceNode)
 SingleTree Rescore. More...
 
double Rescore (const size_t queryIndex, TreeType &referenceNode, const double oldScore) const
 SingleTree Score.
 
double Score (TreeType &queryNode, TreeType &referenceNode)
 Dual-Tree Score. More...
 
double Rescore (TreeType &queryNode, TreeType &referenceNode, const double oldScore) const
 Dual-Tree Rescore. More...
 
const TraversalInfoTypeTraversalInfo () const
 Get traversal information.
 
TraversalInfoTypeTraversalInfo ()
 Modify traversal information.
 
size_t BaseCases () const
 Get the number of base cases.
 
size_t Scores () const
 Get the number of scores.
 
size_t MinimumBaseCases () const
 Get the minimum number of base cases we need to perform to have acceptable results. More...
 

Detailed Description

template<typename MetricType, typename KernelType, typename TreeType>
class mlpack::kde::KDERules< MetricType, KernelType, TreeType >

A dual-tree traversal Rules class for kernel density estimation.

This contains the Score() and BaseCase() implementations.

Constructor & Destructor Documentation

◆ KDERules()

template<typename MetricType , typename KernelType , typename TreeType >
mlpack::kde::KDERules< MetricType, KernelType, TreeType >::KDERules ( const arma::mat &  referenceSet,
const arma::mat &  querySet,
arma::vec &  densities,
const double  relError,
const double  absError,
const double  mcProb,
const size_t  initialSampleSize,
const double  mcAccessCoef,
const double  mcBreakCoef,
MetricType &  metric,
KernelType &  kernel,
const bool  monteCarlo,
const bool  sameSet 
)

Construct KDERules.

Parameters
referenceSetReference set data.
querySetQuery set data.
densitiesVector where estimations will be written.
relErrorRelative error tolerance.
absErrorAbsolute error tolerance.
mcProbProbability of relative error compliance for Monte Carlo estimations.
initialSampleSizeInitial size of the Monte Carlo samples.
mcAccessCoefAccess coefficient for Monte Carlo estimations.
mcBreakCoefBreak coefficient for Monte Carlo estimations.
metricInstantiated metric.
kernelInstantiated kernel.
monteCarloIf true Monte Carlo estimations will be applied when possible.
sameSetTrue if query and reference sets are the same (monochromatic evaluation).

Member Function Documentation

◆ BaseCase()

template<typename MetricType , typename KernelType , typename TreeType >
force_inline double mlpack::kde::KDERules< MetricType, KernelType, TreeType >::BaseCase ( const size_t  queryIndex,
const size_t  referenceIndex 
)
inline

Base Case.

The base case.

◆ MinimumBaseCases()

template<typename MetricType , typename KernelType , typename TreeType >
size_t mlpack::kde::KDERules< MetricType, KernelType, TreeType >::MinimumBaseCases ( ) const
inline

Get the minimum number of base cases we need to perform to have acceptable results.

◆ Rescore()

template<typename MetricType , typename KernelType , typename TreeType >
force_inline double mlpack::kde::KDERules< MetricType, KernelType, TreeType >::Rescore ( TreeType &  queryNode,
TreeType &  referenceNode,
const double  oldScore 
) const
inline

Dual-Tree Rescore.

Dual-tree rescore.

◆ Score() [1/2]

template<typename MetricType , typename KernelType , typename TreeType >
double mlpack::kde::KDERules< MetricType, KernelType, TreeType >::Score ( const size_t  queryIndex,
TreeType &  referenceNode 
)
inline

SingleTree Rescore.

Single-tree scoring function.

◆ Score() [2/2]

template<typename MetricType , typename KernelType , typename TreeType >
double mlpack::kde::KDERules< MetricType, KernelType, TreeType >::Score ( TreeType &  queryNode,
TreeType &  referenceNode 
)
inline

Dual-Tree Score.

Dual-tree scoring function.


The documentation for this class was generated from the following files: