Class GreedyAgglomerative

    • Field Detail

      • stoppingThreshold

        protected double stoppingThreshold
        Converged when merge score is below this value.
      • converged

        protected boolean converged
        True if should stop clustering.
      • scoreCache

        protected PairwiseMatrix scoreCache
        Cache for calls to NeighborhoodEvaluator. In some experiments, reduced running time by nearly half.
    • Constructor Detail

      • GreedyAgglomerative

        public GreedyAgglomerative​(Pipe instancePipe,
                                   NeighborEvaluator evaluator,
                                   double stoppingThreshold)
        Parameters:
        instancePipe - Pipe for each underying Instance.
        evaluator - To score potential merges.
        stoppingThreshold - Clustering converges when the evaluator score is below this value.
    • Method Detail

      • reset

        public void reset()
        Reset convergence to false so a new round of clustering can begin.
        Specified by:
        reset in class HillClimbingClusterer
      • improveClustering

        public Clustering improveClustering​(Clustering clustering)
        For each pair of clusters, calculate the score of the Neighbor that would result from merging the two clusters. Choose the merge that obtains the highest score. If no merge improves score, return original Clustering
        Specified by:
        improveClustering in class HillClimbingClusterer
        Parameters:
        clustering -
        Returns:
      • getScore

        protected double getScore​(Clustering clustering,
                                  int i,
                                  int j)
        Parameters:
        clustering -
        i -
        j -
        Returns:
        The score for merging these two clusters.
      • updateScoreMatrix

        protected void updateScoreMatrix​(Clustering clustering,
                                         int i,
                                         int j)
        Resets the values of clusters that have been merged.
        Parameters:
        clustering -
        i -
        j -
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object