Package elki.clustering.hierarchical
Class HACAM<O>
- java.lang.Object
-
- elki.clustering.hierarchical.HACAM<O>
-
- Type Parameters:
O- Object type
- All Implemented Interfaces:
elki.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 HierarchicalClusteringAlgorithmHierarchical 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.
-
Field Summary
Fields Modifier and Type Field Description protected elki.distance.Distance<? super O>distanceDistance to useprivate static elki.logging.LoggingLOGClass loggerprotected HACAM.VariantvariantLinkage variant to use
-
Constructor Summary
Constructors Constructor Description HACAM(elki.distance.Distance<? super O> distance, HACAM.Variant variant)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description elki.data.type.TypeInformation[]getInputTypeRestriction()ClusterPrototypeMergeHistoryrun(elki.database.relation.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 elki.logging.Logging LOG
Class logger
-
distance
protected elki.distance.Distance<? super O> distance
Distance to use
-
variant
protected HACAM.Variant variant
Linkage variant to use
-
-
Constructor Detail
-
HACAM
public HACAM(elki.distance.Distance<? super O> distance, HACAM.Variant variant)
Constructor.- Parameters:
distance- Distance function to usevariant- Variant 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:
getInputTypeRestrictionin interfaceelki.Algorithm
-
-