|
mlpack
master
|
When an empty cluster is detected, this class takes the point furthest from the centroid of the cluster with maximum variance as a new cluster. More...
Public Member Functions | |
| MaxVarianceNewCluster () | |
| Default constructor required by EmptyClusterPolicy. More... | |
| template<typename MetricType , typename MatType > | |
| size_t | EmptyCluster (const MatType &data, const size_t emptyCluster, const arma::mat &oldCentroids, arma::mat &newCentroids, arma::Col< size_t > &clusterCounts, MetricType &metric, const size_t iteration) |
| Take the point furthest from the centroid of the cluster with maximum variance to be a new cluster. More... | |
| template<typename Archive > | |
| void | Serialize (Archive &ar, const unsigned int version) |
| Serialize the object. More... | |
Private Member Functions | |
| template<typename MetricType , typename MatType > | |
| void | Precalculate (const MatType &data, const arma::mat &oldCentroids, arma::Col< size_t > &clusterCounts, MetricType &metric) |
| Called when we are on a new iteration. More... | |
Private Attributes | |
| arma::Row< size_t > | assignments |
| Cached assignments for each point. More... | |
| size_t | iteration |
| Index of iteration for which variance is cached. More... | |
| arma::vec | variances |
| Cached variances for each cluster. More... | |
When an empty cluster is detected, this class takes the point furthest from the centroid of the cluster with maximum variance as a new cluster.
Definition at line 26 of file max_variance_new_cluster.hpp.
|
inline |
Default constructor required by EmptyClusterPolicy.
Definition at line 30 of file max_variance_new_cluster.hpp.
References EmptyCluster(), iteration, and Serialize().
| size_t mlpack::kmeans::MaxVarianceNewCluster::EmptyCluster | ( | const MatType & | data, |
| const size_t | emptyCluster, | ||
| const arma::mat & | oldCentroids, | ||
| arma::mat & | newCentroids, | ||
| arma::Col< size_t > & | clusterCounts, | ||
| MetricType & | metric, | ||
| const size_t | iteration | ||
| ) |
Take the point furthest from the centroid of the cluster with maximum variance to be a new cluster.
| MatType | Type of data (arma::mat or arma::sp_mat). |
| data | Dataset on which clustering is being performed. |
| emptyCluster | Index of cluster which is empty. |
| oldCentroids | Centroids of each cluster (one per column), at the start of the iteration. |
| newCentroids | Centroids of each cluster (one per column), at the end of the iteration. This will be modified! |
| clusterCounts | Number of points in each cluster. |
| assignments | Cluster assignments of each point. |
Referenced by MaxVarianceNewCluster().
|
private |
Called when we are on a new iteration.
| void mlpack::kmeans::MaxVarianceNewCluster::Serialize | ( | Archive & | ar, |
| const unsigned int | version | ||
| ) |
Serialize the object.
Referenced by MaxVarianceNewCluster().
|
private |
Cached assignments for each point.
Definition at line 67 of file max_variance_new_cluster.hpp.
|
private |
Index of iteration for which variance is cached.
Definition at line 63 of file max_variance_new_cluster.hpp.
Referenced by MaxVarianceNewCluster().
|
private |
Cached variances for each cluster.
Definition at line 65 of file max_variance_new_cluster.hpp.
1.8.11