A utility struct to contain all the possible FastMKS models, for use by the mlpack_fastmks program. More...
Public Types | |
| enum | KernelTypes { LINEAR_KERNEL , POLYNOMIAL_KERNEL , COSINE_DISTANCE , GAUSSIAN_KERNEL , EPANECHNIKOV_KERNEL , TRIANGULAR_KERNEL , HYPTAN_KERNEL } |
| A list of all the kernels we support. More... | |
Public Member Functions | |
| FastMKSModel (const int kernelType=LINEAR_KERNEL) | |
| Create the FastMKSModel with the given kernel type. More... | |
| FastMKSModel (const FastMKSModel &other) | |
| Copy constructor. More... | |
| FastMKSModel (FastMKSModel &&other) | |
| Move constructor. More... | |
| ~FastMKSModel () | |
| Clean memory. More... | |
template < typename TKernelType > | |
| void | BuildModel (util::Timers &timers, arma::mat &&referenceData, TKernelType &kernel, const bool singleMode, const bool naive, const double base) |
| Build the model on the given reference set. More... | |
| int | KernelType () const |
| Get the kernel type. More... | |
| int & | KernelType () |
| Modify the kernel type. More... | |
| bool | Naive () const |
| Get whether or not naive search is used. More... | |
| bool & | Naive () |
| Set whether or not naive search is used. More... | |
| FastMKSModel & | operator= (const FastMKSModel &other) |
| Copy assignment operator. More... | |
| FastMKSModel & | operator= (FastMKSModel &&other) |
| Move assignment operator. More... | |
| void | Search (util::Timers &timers, const arma::mat &querySet, const size_t k, arma::Mat< size_t > &indices, arma::mat &kernels, const double base) |
| Search with a different query set. More... | |
| void | Search (util::Timers &timers, const size_t k, arma::Mat< size_t > &indices, arma::mat &kernels) |
| Search with the reference set as the query set. More... | |
template < typename Archive > | |
| void | serialize (Archive &ar, const uint32_t) |
| Serialize the model. More... | |
| bool | SingleMode () const |
| Get whether or not single-tree search is used. More... | |
| bool & | SingleMode () |
| Set whether or not single-tree search is used. More... | |
A utility struct to contain all the possible FastMKS models, for use by the mlpack_fastmks program.
Definition at line 34 of file fastmks_model.hpp.
| enum KernelTypes |
A list of all the kernels we support.
| Enumerator | |
|---|---|
| LINEAR_KERNEL | |
| POLYNOMIAL_KERNEL | |
| COSINE_DISTANCE | |
| GAUSSIAN_KERNEL | |
| EPANECHNIKOV_KERNEL | |
| TRIANGULAR_KERNEL | |
| HYPTAN_KERNEL | |
Definition at line 38 of file fastmks_model.hpp.
| FastMKSModel | ( | const int | kernelType = LINEAR_KERNEL | ) |
Create the FastMKSModel with the given kernel type.
| FastMKSModel | ( | const FastMKSModel & | other | ) |
Copy constructor.
| FastMKSModel | ( | FastMKSModel && | other | ) |
Move constructor.
| ~FastMKSModel | ( | ) |
Clean memory.
| void BuildModel | ( | util::Timers & | timers, |
| arma::mat && | referenceData, | ||
| TKernelType & | kernel, | ||
| const bool | singleMode, | ||
| const bool | naive, | ||
| const double | base | ||
| ) |
Build the model on the given reference set.
Make sure kernelType is equal to the correct entry in KernelTypes for the given KernelType class!
|
inline |
Get the kernel type.
Definition at line 94 of file fastmks_model.hpp.
|
inline |
Modify the kernel type.
Definition at line 96 of file fastmks_model.hpp.
References FastMKSModel::Search(), and FastMKSModel::serialize().
| bool Naive | ( | ) | const |
Get whether or not naive search is used.
| bool& Naive | ( | ) |
Set whether or not naive search is used.
| FastMKSModel& operator= | ( | const FastMKSModel & | other | ) |
Copy assignment operator.
| FastMKSModel& operator= | ( | FastMKSModel && | other | ) |
Move assignment operator.
| void Search | ( | util::Timers & | timers, |
| const arma::mat & | querySet, | ||
| const size_t | k, | ||
| arma::Mat< size_t > & | indices, | ||
| arma::mat & | kernels, | ||
| const double | base | ||
| ) |
Search with a different query set.
| querySet | Set to search with. |
| k | Number of max-kernel candidates to search for. |
| indices | A matrix in which to store the indices of max-kernel candidates. |
| kernels | A matrix in which to store the max-kernel candidate kernel values. |
| base | Base to use for cover tree building (if in dual-tree search mode). |
Referenced by FastMKSModel::KernelType().
| void Search | ( | util::Timers & | timers, |
| const size_t | k, | ||
| arma::Mat< size_t > & | indices, | ||
| arma::mat & | kernels | ||
| ) |
Search with the reference set as the query set.
| k | Number of max-kernel candidates to search for. |
| indices | A matrix in which to store the indices of max-kernel candidates. |
| kernels | A matrix in which to store the max-kernel candidate kernel values. |
| void serialize | ( | Archive & | ar, |
| const uint32_t | |||
| ) |
Serialize the model.
Referenced by FastMKSModel::KernelType().
| bool SingleMode | ( | ) | const |
Get whether or not single-tree search is used.
| bool& SingleMode | ( | ) |
Set whether or not single-tree search is used.