Class MedoidLinkage<O>

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

    @Reference(authors="D. Herr, Q. Han, S. Lohmann, T. Ertl",title="Visual clutter reduction through hierarchy-based projection of high-dimensional labeled data",booktitle="Graphics Interface Conference",url="https://doi.org/10.20380/GI2016.14",bibkey="DBLP:conf/graphicsinterface/HerrHLE16") @Reference(authors="S. Miyamoto, Y. Kaizu, Y. Endo",title="Hierarchical and non-hierarchical medoid clustering using asymmetric similarity measures",booktitle="Soft Computing and Intelligent Systems (SCIS) and Int. Symp. Advanced Intelligent Systems (ISIS)",url="https://doi.org/10.1109/SCIS-ISIS.2016.0091",bibkey="DBLP:conf/scisisis/MiyamotoKE16")
    public class MedoidLinkage<O>
    extends java.lang.Object
    implements HierarchicalClusteringAlgorithm
    Medoid linkage uses the distance of medoids as criterion. The implementation is a simplified version of AGNES, as we do not have to update a distance matrix. This approach was invented at least twice. An approach more consistent with the ideas of optimum medoids is found in HACAM, which uses the loss of the resulting medoid after merging instead.

    References:

    D. Herr, Q. Han, S. Lohmann, T. Ertl
    Visual clutter reduction through hierarchy-based projection of high-dimensional labeled data
    Graphics Interface Conference

    S. Miyamoto, Y. Kaizu, Y. Endo
    Hierarchical and non-hierarchical medoid clustering using asymmetric similarity measures
    Soft Computing and Intelligent Systems (SCIS) and Int. Symp. Advanced Intelligent Systems (ISIS)

    Since:
    0.8.0
    Author:
    Erich Schubert
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  MedoidLinkage.Instance
      Main worker instance of AGNES.
      • Nested classes/interfaces inherited from interface elki.Algorithm

        elki.Algorithm.Utils
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected elki.distance.Distance<? super O> distance
      The distance function to use.
      private static elki.logging.Logging LOG
      Class logger
    • Constructor Summary

      Constructors 
      Constructor Description
      MedoidLinkage​(elki.distance.Distance<? super O> distance)
      Constructor.
    • Field Detail

      • LOG

        private static final elki.logging.Logging LOG
        Class logger
      • distance

        protected elki.distance.Distance<? super O> distance
        The distance function to use.
    • Constructor Detail

      • MedoidLinkage

        public MedoidLinkage​(elki.distance.Distance<? super O> distance)
        Constructor.
        Parameters:
        distance - Distance function to use
    • Method Detail

      • run

        public ClusterPrototypeMergeHistory run​(elki.database.relation.Relation<O> relation)
        Run the algorithm
        Parameters:
        relation - Relation
        Returns:
        Clustering hierarchy
      • getInputTypeRestriction

        public elki.data.type.TypeInformation[] getInputTypeRestriction()
        Specified by:
        getInputTypeRestriction in interface elki.Algorithm