V - vector datatype@Title(value="K-Means--") @Reference(authors="S. Chawla, A. Gionis", title="k-means--: A Unified Approach to Clustering and Outlier Detection", booktitle="Proc. 13th SIAM Int. Conf. on Data Mining (SDM 2013)", url="https://doi.org/10.1137/1.9781611972832.21", bibkey="DBLP:conf/sdm/ChawlaG13") public class KMeansMinusMinus<V extends NumberVector> extends AbstractKMeans<V,KMeansModel>
Similar to Lloyds K-means algorithm, but ignores the farthest points when updating the means, considering them to be outliers.
Reference:
S. Chawla, A. Gionis
k-means--: A Unified Approach to Clustering and Outlier Detection
Proc. 13th SIAM Int. Conf. on Data Mining (SDM 2013)
| Modifier and Type | Class and Description |
|---|---|
protected class |
KMeansMinusMinus.Instance
Inner instance, storing state for a single data set.
|
static class |
KMeansMinusMinus.Parameterizer<V extends NumberVector>
Parameterization class.
|
| Modifier and Type | Field and Description |
|---|---|
private static Logging |
LOG
The logger for this class.
|
boolean |
noiseFlag
Create a noise cluster, otherwise assign to the nearest cluster.
|
double |
rate
Outlier rate.
|
initializer, k, maxiterdistanceFunctionALGORITHM_IDINIT_ID, K_ID, MAXITER_ID, SEED_ID, VARSTAT_IDDISTANCE_FUNCTION_ID| Constructor and Description |
|---|
KMeansMinusMinus(NumberVectorDistanceFunction<? super V> distanceFunction,
int k,
int maxiter,
KMeansInitialization initializer,
double rate,
boolean noiseFlag)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
protected Logging |
getLogger()
Get the (STATIC) logger for this class.
|
Clustering<KMeansModel> |
run(Database database,
Relation<V> relation)
Run the clustering algorithm.
|
getInputTypeRestriction, incrementalUpdateMean, initialMeans, means, minusEquals, nearestMeans, plusEquals, plusMinusEquals, setDistanceFunction, setInitializer, setKgetDistanceFunctionrunclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitrungetDistanceFunctionprivate static final Logging LOG
public double rate
public boolean noiseFlag
public KMeansMinusMinus(NumberVectorDistanceFunction<? super V> distanceFunction, int k, int maxiter, KMeansInitialization initializer, double rate, boolean noiseFlag)
distanceFunction - distance functionk - k parametermaxiter - Maxiter parameterinitializer - Initialization methodnoiseFlag - Create a noise cluster instead of assigning to the nearest
clusterpublic Clustering<KMeansModel> run(Database database, Relation<V> relation)
KMeansdatabase - Database to run on.relation - Relation to process.protected Logging getLogger()
AbstractAlgorithmgetLogger in class AbstractAlgorithm<Clustering<KMeansModel>>Copyright © 2019 ELKI Development Team. License information.