Class WithinClusterMeanDistance

  • All Implemented Interfaces:
    KMeansQualityMeasure<elki.data.NumberVector>

    public class WithinClusterMeanDistance
    extends java.lang.Object
    implements KMeansQualityMeasure<elki.data.NumberVector>
    Class for computing the average overall distance.

    The average of all average pairwise distances in a cluster.

    Since:
    0.6.0
    Author:
    Stephan Baier
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean isBetter​(double currentCost, double bestCost)
      Compare two scores.
      <V extends elki.data.NumberVector>
      double
      quality​(Clustering<? extends MeanModel> clustering, elki.distance.NumberVectorDistance<? super V> distance, elki.database.relation.Relation<V> relation)
      Calculates and returns the quality measure.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • WithinClusterMeanDistance

        public WithinClusterMeanDistance()
    • Method Detail

      • quality

        public <V extends elki.data.NumberVector> double quality​(Clustering<? extends MeanModel> clustering,
                                                                 elki.distance.NumberVectorDistance<? super V> distance,
                                                                 elki.database.relation.Relation<V> relation)
        Description copied from interface: KMeansQualityMeasure
        Calculates and returns the quality measure.
        Specified by:
        quality in interface KMeansQualityMeasure<elki.data.NumberVector>
        Type Parameters:
        V - Actual vector type (could be a subtype of O!)
        Parameters:
        clustering - Clustering to analyze
        distance - Distance function to use (usually Euclidean or squared Euclidean!)
        relation - Relation for accessing objects
        Returns:
        quality measure
      • isBetter

        public boolean isBetter​(double currentCost,
                                double bestCost)
        Description copied from interface: KMeansQualityMeasure
        Compare two scores.
        Specified by:
        isBetter in interface KMeansQualityMeasure<elki.data.NumberVector>
        Parameters:
        currentCost - New (candiate) cost/score
        bestCost - Existing best cost/score (may be NaN)
        Returns:
        true when the new score is better, or the old score is NaN.