Package elki.clustering.hierarchical
Class HACAM<O>
- java.lang.Object
-
- elki.clustering.hierarchical.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 earlierMedoidLinkage, 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
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classHACAM.InstanceMain worker instance of AGNES.static classHACAM.VariantVariants of the HACAM method.-
Nested classes/interfaces inherited from interface elki.Algorithm
Algorithm.Utils
-
-
Constructor Summary
Constructors Constructor Description HACAM(Distance<? super O> distance, HACAM.Variant variant)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TypeInformation[]getInputTypeRestriction()Get the input type restriction used for negotiating the data query.ClusterPrototypeMergeHistoryrun(Relation<O> relation)Run the algorithm-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface elki.clustering.hierarchical.HierarchicalClusteringAlgorithm
autorun
-
-
-
-
Field Detail
-
LOG
private static final Logging LOG
Class logger
-
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 usevariant- Variant to use
-
-
Method Detail
-
run
public ClusterPrototypeMergeHistory run(Relation<O> relation)
Run the algorithm- Parameters:
relation- Relation- Returns:
- Clustering hierarchy
-
getInputTypeRestriction
public TypeInformation[] getInputTypeRestriction()
Description copied from interface:AlgorithmGet the input type restriction used for negotiating the data query.- Specified by:
getInputTypeRestrictionin interfaceAlgorithm- Returns:
- Type restriction
-
-