MLPACK  1.0.11
refined_start.hpp
Go to the documentation of this file.
1 
24 #ifndef __MLPACK_METHODS_KMEANS_REFINED_START_HPP
25 #define __MLPACK_METHODS_KMEANS_REFINED_START_HPP
26 
27 #include <mlpack/core.hpp>
28 
29 namespace mlpack {
30 namespace kmeans {
31 
48 {
49  public:
55  RefinedStart(const size_t samplings = 100,
56  const double percentage = 0.02) :
58 
69  template<typename MatType>
70  void Cluster(const MatType& data,
71  const size_t clusters,
72  arma::Col<size_t>& assignments) const;
73 
75  size_t Samplings() const { return samplings; }
77  size_t& Samplings() { return samplings; }
78 
80  double Percentage() const { return percentage; }
82  double& Percentage() { return percentage; }
83 
84  private:
86  size_t samplings;
88  double percentage;
89 };
90 
91 }; // namespace kmeans
92 }; // namespace mlpack
93 
94 // Include implementation.
95 #include "refined_start_impl.hpp"
96 
97 #endif
size_t Samplings() const
Get the number of samplings that will be performed.
RefinedStart(const size_t samplings=100, const double percentage=0.02)
Create the RefinedStart object, optionally specifying parameters for the number of samplings to perfo...
double & Percentage()
Modify the percentage of the data used by each subsampling.
double percentage
The percentage of the data to use for each subsampling.
double Percentage() const
Get the percentage of the data used by each subsampling.
void Cluster(const MatType &data, const size_t clusters, arma::Col< size_t > &assignments) const
Partition the given dataset into the given number of clusters according to the random sampling scheme...
size_t samplings
The number of samplings to perform.
A refined approach for choosing initial points for k-means clustering.
size_t & Samplings()
Modify the number of samplings that will be performed.