Class SphericalKMeansPlusPlus<O>
- java.lang.Object
-
- elki.clustering.kmeans.initialization.AbstractKMeansInitialization
-
- elki.clustering.kmeans.initialization.SphericalKMeansPlusPlus<O>
-
- Type Parameters:
O- Vector type
- All Implemented Interfaces:
KMeansInitialization
@Title("Spherical K-means++") @Reference(authors="Y. Endo and S. Miyamoto", title="Spherical k-Means++ Clustering", booktitle="Modeling Decisions for Artificial Intelligence", url="https://doi.org/10.1007/978-3-319-23240-9_9", bibkey="DBLP:conf/mdai/EndoM15") public class SphericalKMeansPlusPlus<O> extends AbstractKMeansInitializationSpherical K-Means++ initialization for k-means.FIXME: currently assumes the vectors to be L2 normalized beforehand, but does not ensure that this is true.
Reference:
Y. Endo and S. Miyamoto
Spherical k-Means++ Clustering
Modeling Decisions for Artificial Intelligence- Since:
- 0.8.0
- Author:
- Erich Schubert
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static classSphericalKMeansPlusPlus.InstanceAbstract instance implementing the weight handling.static classSphericalKMeansPlusPlus.Par<V>Parameterization class.
-
Field Summary
Fields Modifier and Type Field Description protected doublealphaParameter to balance distance vs. uniform sampling.private static elki.logging.LoggingLOGClass logger.-
Fields inherited from class elki.clustering.kmeans.initialization.AbstractKMeansInitialization
rnd
-
-
Constructor Summary
Constructors Constructor Description SphericalKMeansPlusPlus(double alpha, elki.utilities.random.RandomFactory rnd)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description double[][]chooseInitialMeans(elki.database.relation.Relation<? extends elki.data.NumberVector> relation, int k, elki.distance.NumberVectorDistance<?> distance)Choose initial means-
Methods inherited from class elki.clustering.kmeans.initialization.AbstractKMeansInitialization
unboxVectors
-
-
-
-
Method Detail
-
chooseInitialMeans
public double[][] chooseInitialMeans(elki.database.relation.Relation<? extends elki.data.NumberVector> relation, int k, elki.distance.NumberVectorDistance<?> distance)Description copied from interface:KMeansInitializationChoose initial means- Parameters:
relation- Relationk- Parameter kdistance- Distance function- Returns:
- List of chosen means for k-means
-
-