|
mlpack
master
|
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 (const 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... | |
| void | Search (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 (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 unsigned int) |
| 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... | |
Private Member Functions | |
| template<typename FastMKSType > | |
| void | Search (FastMKSType &f, const arma::mat &querySet, const size_t k, arma::Mat< size_t > &indices, arma::mat &kernels, const double base) |
| Build a query tree and execute the search. More... | |
Private Attributes | |
| FastMKS< kernel::CosineDistance > * | cosine |
| This will only be non-NULL if this is the type of kernel we are using. More... | |
| FastMKS< kernel::EpanechnikovKernel > * | epan |
| This will only be non-NULL if this is the type of kernel we are using. More... | |
| FastMKS< kernel::GaussianKernel > * | gaussian |
| This will only be non-NULL if this is the type of kernel we are using. More... | |
| FastMKS< kernel::HyperbolicTangentKernel > * | hyptan |
| This will only be non-NULL if this is the type of kernel we are using. More... | |
| int | kernelType |
| The type of kernel we are using. More... | |
| FastMKS< kernel::LinearKernel > * | linear |
| This will only be non-NULL if this is the type of kernel we are using. More... | |
| FastMKS< kernel::PolynomialKernel > * | polynomial |
| This will only be non-NULL if this is the type of kernel we are using. More... | |
| FastMKS< kernel::TriangularKernel > * | triangular |
| This will only be non-NULL if this is the type of kernel we are using. 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.
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.
| mlpack::fastmks::FastMKSModel::FastMKSModel | ( | const int | kernelType = LINEAR_KERNEL | ) |
Create the FastMKSModel with the given kernel type.
| mlpack::fastmks::FastMKSModel::FastMKSModel | ( | const FastMKSModel & | other | ) |
Copy constructor.
| mlpack::fastmks::FastMKSModel::FastMKSModel | ( | FastMKSModel && | other | ) |
Move constructor.
| mlpack::fastmks::FastMKSModel::~FastMKSModel | ( | ) |
Clean memory.
| void mlpack::fastmks::FastMKSModel::BuildModel | ( | const 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 |
|
inline |
Modify the kernel type.
Definition at line 92 of file fastmks_model.hpp.
References kernelType, Search(), and Serialize().
| bool mlpack::fastmks::FastMKSModel::Naive | ( | ) | const |
Get whether or not naive search is used.
| bool& mlpack::fastmks::FastMKSModel::Naive | ( | ) |
Set whether or not naive search is used.
| FastMKSModel& mlpack::fastmks::FastMKSModel::operator= | ( | const FastMKSModel & | other | ) |
Copy assignment operator.
| void mlpack::fastmks::FastMKSModel::Search | ( | 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 KernelType().
| void mlpack::fastmks::FastMKSModel::Search | ( | 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. |
|
private |
Build a query tree and execute the search.
| void mlpack::fastmks::FastMKSModel::Serialize | ( | Archive & | ar, |
| const unsigned | int | ||
| ) |
Serialize the model.
Referenced by KernelType().
| bool mlpack::fastmks::FastMKSModel::SingleMode | ( | ) | const |
Get whether or not single-tree search is used.
| bool& mlpack::fastmks::FastMKSModel::SingleMode | ( | ) |
Set whether or not single-tree search is used.
|
private |
This will only be non-NULL if this is the type of kernel we are using.
Definition at line 140 of file fastmks_model.hpp.
|
private |
This will only be non-NULL if this is the type of kernel we are using.
Definition at line 144 of file fastmks_model.hpp.
|
private |
This will only be non-NULL if this is the type of kernel we are using.
Definition at line 142 of file fastmks_model.hpp.
|
private |
This will only be non-NULL if this is the type of kernel we are using.
Definition at line 148 of file fastmks_model.hpp.
|
private |
The type of kernel we are using.
Definition at line 133 of file fastmks_model.hpp.
Referenced by KernelType().
|
private |
This will only be non-NULL if this is the type of kernel we are using.
Definition at line 136 of file fastmks_model.hpp.
|
private |
This will only be non-NULL if this is the type of kernel we are using.
Definition at line 138 of file fastmks_model.hpp.
|
private |
This will only be non-NULL if this is the type of kernel we are using.
Definition at line 146 of file fastmks_model.hpp.
1.8.11