public class KMeansProcessor<V extends NumberVector> extends Object implements Processor
Modifier and Type | Class and Description |
---|---|
static class |
KMeansProcessor.Instance<V extends NumberVector>
Instance to process part of the data set, for a single iteration.
|
Modifier and Type | Field and Description |
---|---|
(package private) WritableIntegerDataStore |
assignment
Assignment storage.
|
(package private) double[][] |
centroids
Updated cluster centroids
|
(package private) boolean |
changed
Whether the assignment changed during the last iteration.
|
(package private) NumberVectorDistanceFunction<? super V> |
distance
Distance function.
|
(package private) List<Vector> |
means
Mean vectors.
|
(package private) Relation<V> |
relation
Data relation.
|
(package private) int[] |
sizes
(Partial) cluster sizes
|
(package private) double[] |
varsum
Variance sum.
|
Constructor and Description |
---|
KMeansProcessor(Relation<V> relation,
NumberVectorDistanceFunction<? super V> distance,
WritableIntegerDataStore assignment,
double[] varsum)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
boolean |
changed()
Get the "has changed" value.
|
void |
cleanup(Processor.Instance inst)
Invoke cleanup.
|
List<Vector> |
getMeans()
Get the new means.
|
KMeansProcessor.Instance<V> |
instantiate(Executor exectutor)
Create an instance.
|
void |
nextIteration(List<Vector> means)
Initialize for a new iteration.
|
Relation<V extends NumberVector> relation
NumberVectorDistanceFunction<? super V extends NumberVector> distance
WritableIntegerDataStore assignment
double[][] centroids
int[] sizes
double[] varsum
boolean changed
public KMeansProcessor(Relation<V> relation, NumberVectorDistanceFunction<? super V> distance, WritableIntegerDataStore assignment, double[] varsum)
relation
- Data relationdistance
- Distance functionassignment
- Cluster assignmentvarsum
- Variance sumspublic boolean changed()
public void nextIteration(List<Vector> means)
means
- New means.public KMeansProcessor.Instance<V> instantiate(Executor exectutor)
Processor
instantiate
in interface Processor
exectutor
- Job executorpublic void cleanup(Processor.Instance inst)
Processor
Copyright © 2015 ELKI Development Team, Lehr- und Forschungseinheit für Datenbanksysteme, Ludwig-Maximilians-Universität München. License information.