jsat.clustering.kmeans
Class HamerlyKMeans
- java.lang.Object
-
- jsat.clustering.ClustererBase
-
- jsat.clustering.KClustererBase
-
- jsat.clustering.kmeans.KMeans
-
- jsat.clustering.kmeans.HamerlyKMeans
-
- All Implemented Interfaces:
- java.io.Serializable, Clusterer, KClusterer, Parameterized
public class HamerlyKMeans extends KMeans
An efficient implementation of the K-Means algorithm. This implementation uses the triangle inequality to accelerate computation while maintaining the exact same solution. This requires that theDistanceMetricused supportDistanceMetric.isSubadditive(). It uses only O(n) extra memory.
See:- Hamerly, G. (2010). Making k-means even faster. SIAM International Conference on Data Mining (SDM) (pp. 130–140). Retrieved from here
- Ryšavý, P., & Hamerly, G. (2016). Geometric methods to accelerate k-means algorithms. In Proceedings of the 2016 SIAM International Conference on Data Mining (pp. 324–332). Philadelphia, PA: Society for Industrial and Applied Mathematics. http://doi.org/10.1137/1.9781611974348.37
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class jsat.clustering.kmeans.KMeans
DEFAULT_SEED_SELECTION
-
-
Constructor Summary
Constructors Constructor and Description HamerlyKMeans()Creates a new k-Means objectHamerlyKMeans(DistanceMetric dm, SeedSelectionMethods.SeedSelection seedSelection)Creates a new k-Means objectHamerlyKMeans(DistanceMetric dm, SeedSelectionMethods.SeedSelection seedSelection, java.util.Random rand)Creates a new k-Means objectHamerlyKMeans(HamerlyKMeans toCopy)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description HamerlyKMeansclone()-
Methods inherited from class jsat.clustering.kmeans.KMeans
cluster, cluster, cluster, cluster, getDistanceMetric, getIterationLimit, getMeans, getSeedSelection, setIterationLimit, setSeedSelection, setStoreMeans, supportsWeightedData
-
Methods inherited from class jsat.clustering.ClustererBase
createClusterListFromAssignmentArray, getDatapointsFromCluster
-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface jsat.parameters.Parameterized
getParameter, getParameters
-
-
-
-
Constructor Detail
-
HamerlyKMeans
public HamerlyKMeans(DistanceMetric dm, SeedSelectionMethods.SeedSelection seedSelection, java.util.Random rand)
Creates a new k-Means object- Parameters:
dm- the distance metric to use for clusteringseedSelection- the method of initial seed selectionrand- the source of randomnes to use
-
HamerlyKMeans
public HamerlyKMeans(DistanceMetric dm, SeedSelectionMethods.SeedSelection seedSelection)
Creates a new k-Means object- Parameters:
dm- the distance metric to use for clusteringseedSelection- the method of initial seed selection
-
HamerlyKMeans
public HamerlyKMeans()
Creates a new k-Means object
-
HamerlyKMeans
public HamerlyKMeans(HamerlyKMeans toCopy)
-
-
Method Detail
-
clone
public HamerlyKMeans clone()
-
-
DataMelt 3.0 © DataMelt by jWork.ORG