mlpack
Classes | Namespaces | Typedefs | Functions
dual_tree_kmeans.hpp File Reference
#include <mlpack/core/tree/binary_space_tree.hpp>
#include <mlpack/methods/neighbor_search/neighbor_search.hpp>
#include <mlpack/core/tree/cover_tree.hpp>
#include "dual_tree_kmeans_statistic.hpp"
#include "dual_tree_kmeans_impl.hpp"
Include dependency graph for dual_tree_kmeans.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  mlpack::kmeans::DualTreeKMeans< MetricType, MatType, TreeType >
 An algorithm for an exact Lloyd iteration which simply uses dual-tree nearest-neighbor search to find the nearest centroid for each point in the dataset. More...
 

Namespaces

 mlpack
 Linear algebra utility functions, generally performed on matrices or vectors.
 
 mlpack::kmeans
 K-Means clustering.
 

Typedefs

template<typename MetricType , typename MatType >
using mlpack::kmeans::DefaultDualTreeKMeans = DualTreeKMeans< MetricType, MatType >
 A template typedef for the DualTreeKMeans algorithm with the default tree type (a kd-tree). More...
 
template<typename MetricType , typename MatType >
using mlpack::kmeans::CoverTreeDualTreeKMeans = DualTreeKMeans< MetricType, MatType, tree::StandardCoverTree >
 A template typedef for the DualTreeKMeans algorithm with the cover tree type. More...
 

Functions

template<typename TreeType >
void mlpack::kmeans::HideChild (TreeType &node, const size_t child, const typename std::enable_if_t< !tree::TreeTraits< TreeType >::BinaryTree > *junk=0)
 Utility function for hiding children. More...
 
template<typename TreeType >
void mlpack::kmeans::HideChild (TreeType &node, const size_t child, const typename std::enable_if_t< tree::TreeTraits< TreeType >::BinaryTree > *junk=0)
 Utility function for hiding children. More...
 
template<typename TreeType >
void mlpack::kmeans::RestoreChildren (TreeType &node, const typename std::enable_if_t<!tree::TreeTraits< TreeType >::BinaryTree > *junk=0)
 Utility function for restoring children to a non-binary tree.
 
template<typename TreeType >
void mlpack::kmeans::RestoreChildren (TreeType &node, const typename std::enable_if_t< tree::TreeTraits< TreeType >::BinaryTree > *junk=0)
 Utility function for restoring children to a binary tree. More...
 

Detailed Description

Author
Ryan Curtin

An implementation of a Lloyd iteration which uses dual-tree nearest neighbor search as a black box. The conditions under which this will perform best are probably limited to the case where k is close to the number of points in the dataset, and the number of iterations of the k-means algorithm will be few.

mlpack is free software; you may redistribute it and/or modify it under the terms of the 3-clause BSD license. You should have received a copy of the 3-clause BSD license along with mlpack. If not, see http://www.opensource.org/licenses/BSD-3-Clause for more information.