Class HACAM<O>

  • Type Parameters:
    O - Object type
    All Implemented Interfaces:
    Algorithm, HierarchicalClusteringAlgorithm

    @Reference(authors="Erich Schubert",
               title="HACAM: Hierarchical Agglomerative Clustering Around Medoids - and its Limitations",
               booktitle="Proc. Conf. \"Lernen, Wissen, Daten, Analysen\", LWDA",
               url="http://ceur-ws.org/Vol-2993/paper-19.pdf",
               bibkey="DBLP:conf/lwa/Schubert21")
    public class HACAM<O>
    extends java.lang.Object
    implements HierarchicalClusteringAlgorithm
    Hierarchical Agglomerative Clustering Around Medoids (HACAM) is a hierarchical clustering method that merges the clusters with the smallest distance to the medoid of the union. This is different from the earlier MedoidLinkage, which used the distance of the two previous medoids.

    The implementation incorporates the approach of Anderson for acceleration.

    Reference:

    Erich Schubert
    HACAM: Hierarchical Agglomerative Clustering Around Medoids - and its Limitations
    Proceedings of the Conference "Lernen, Wissen, Daten, Analysen", LWDA

    Since:
    0.8.0
    Author:
    Erich Schubert
    • Field Detail

      • LOG

        private static final Logging LOG
        Class logger
      • distance

        protected Distance<? super O> distance
        Distance to use
      • variant

        protected HACAM.Variant variant
        Linkage variant to use
    • Constructor Detail

      • HACAM

        public HACAM​(Distance<? super O> distance,
                     HACAM.Variant variant)
        Constructor.
        Parameters:
        distance - Distance function to use
        variant - Variant to use