O - Object type@Reference(authors="R. M. Cormack", title="A Review of Classification", booktitle="Journal of the Royal Statistical Society. Series A, Vol. 134, No. 3", url="https://doi.org/10.2307/2344237", bibkey="doi:10.2307/2344237") public class NaiveAgglomerativeHierarchicalClustering3<O> extends AbstractDistanceBasedAlgorithm<O,Result>
This is the third step, where we add support for different linkage strategies.
 This is the naive O(n³) algorithm. See SLINK for a much faster
 algorithm (however, only for single-linkage).
 
Reference (for the update formulas):
 R. M. Cormack
 A Review of Classification
 Journal of the Royal Statistical Society. Series A, Vol. 134, No. 3
| Modifier and Type | Class and Description | 
|---|---|
static class  | 
NaiveAgglomerativeHierarchicalClustering3.Linkage
Different linkage strategies. 
 | 
static class  | 
NaiveAgglomerativeHierarchicalClustering3.Parameterizer<O>
Parameterization class 
 | 
| Modifier and Type | Field and Description | 
|---|---|
(package private) NaiveAgglomerativeHierarchicalClustering3.Linkage | 
linkage
Current linkage in use. 
 | 
private static Logging | 
LOG
Class logger 
 | 
(package private) int | 
numclusters
Threshold, how many clusters to extract. 
 | 
ALGORITHM_IDDISTANCE_FUNCTION_ID| Constructor and Description | 
|---|
NaiveAgglomerativeHierarchicalClustering3(DistanceFunction<? super O> distanceFunction,
                                         int numclusters,
                                         NaiveAgglomerativeHierarchicalClustering3.Linkage linkage)
Constructor. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
TypeInformation[] | 
getInputTypeRestriction()
Get the input type restriction used for negotiating the data query. 
 | 
protected Logging | 
getLogger()
Get the (STATIC) logger for this class. 
 | 
Result | 
run(Database db,
   Relation<O> relation)
Run the algorithm 
 | 
protected static int | 
triangleSize(int x)
Compute the size of a complete x by x triangle (minus diagonal) 
 | 
getDistanceFunctionrunprivate static final Logging LOG
int numclusters
NaiveAgglomerativeHierarchicalClustering3.Linkage linkage
public NaiveAgglomerativeHierarchicalClustering3(DistanceFunction<? super O> distanceFunction, int numclusters, NaiveAgglomerativeHierarchicalClustering3.Linkage linkage)
distanceFunction - Distance function to usenumclusters - Number of clusterslinkage - Linkage strategypublic Result run(Database db, Relation<O> relation)
db - Databaserelation - Relationprotected static int triangleSize(int x)
x - Offsetpublic TypeInformation[] getInputTypeRestriction()
AbstractAlgorithmgetInputTypeRestriction in interface AlgorithmgetInputTypeRestriction in class AbstractAlgorithm<Result>protected Logging getLogger()
AbstractAlgorithmgetLogger in class AbstractAlgorithm<Result>Copyright © 2019 ELKI Development Team. License information.