Package elki.clustering.correlation
Class HiCO
- java.lang.Object
-
- elki.clustering.correlation.HiCO
-
- All Implemented Interfaces:
elki.Algorithm,GeneralizedOPTICS,OPTICSTypeAlgorithm
@Title("Mining Hierarchies of Correlation Clusters") @Description("Algorithm for detecting hierarchies of correlation clusters.") @Reference(authors="Elke Achtert, Christian B\u00f6hm, Peer Kr\u00f6ger, Arthur Zimek", title="Mining Hierarchies of Correlation Clusters", booktitle="Proc. Int. Conf. on Scientific and Statistical Database Management (SSDBM\'06)", url="https://doi.org/10.1109/SSDBM.2006.35", bibkey="DBLP:conf/ssdbm/AchtertBKZ06") public class HiCO extends java.lang.Object implements GeneralizedOPTICSImplementation of the HiCO algorithm, an algorithm for detecting hierarchies of correlation clusters.Reference:
Elke Achtert, Christian Böhm, Peer Kröger, Arthur Zimek
Mining Hierarchies of Correlation Clusters.
Proc. Int. Conf. on Scientific and Statistical Database Management (SSDBM'06)- Since:
- 0.1
- Author:
- Elke Achtert
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classHiCO.InstanceInstance of the OPTICS algorithm.static classHiCO.ParParameterization class.
-
Field Summary
Fields Modifier and Type Field Description static doubleDEFAULT_ALPHAThe default value forHiCO.Par.ALPHA_ID.static doubleDEFAULT_DELTAThe default value forHiCO.Par.DELTA_ID.private doubledeltasqDelta parameterprivate elki.math.linearalgebra.pca.filter.EigenPairFilterfilterFilter for selecting eigenvectorsprivate intkNumber of neighbors to query.private static elki.logging.LoggingLOGThe logger for this class.private intmuMu parameter.private elki.math.linearalgebra.pca.PCARunnerpcaPCA utility object.
-
Constructor Summary
Constructors Constructor Description HiCO(int k, elki.math.linearalgebra.pca.PCARunner pca, double alpha, int mu, double delta)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidadjust(double[][] v, double[] vector, int corrDim)Inserts the specified vector into the given orthonormal matrixvat columncorrDim.intcorrelationDistance(elki.math.linearalgebra.pca.PCAFilteredResult pca1, elki.math.linearalgebra.pca.PCAFilteredResult pca2, int dimensionality)Computes the correlation distance between the two subspaces defined by the specified PCAs.elki.data.type.TypeInformation[]getInputTypeRestriction()intgetMinPts()Get the minpts value used.ClusterOrderrun(elki.database.relation.Relation<? extends elki.data.NumberVector> relation)Run the HiCO 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.optics.OPTICSTypeAlgorithm
autorun
-
-
-
-
Field Detail
-
LOG
private static final elki.logging.Logging LOG
The logger for this class.
-
DEFAULT_DELTA
public static final double DEFAULT_DELTA
The default value forHiCO.Par.DELTA_ID.- See Also:
- Constant Field Values
-
DEFAULT_ALPHA
public static final double DEFAULT_ALPHA
The default value forHiCO.Par.ALPHA_ID.- See Also:
- Constant Field Values
-
deltasq
private double deltasq
Delta parameter
-
mu
private int mu
Mu parameter.
-
k
private int k
Number of neighbors to query.
-
pca
private elki.math.linearalgebra.pca.PCARunner pca
PCA utility object.
-
filter
private elki.math.linearalgebra.pca.filter.EigenPairFilter filter
Filter for selecting eigenvectors
-
-
Method Detail
-
getInputTypeRestriction
public elki.data.type.TypeInformation[] getInputTypeRestriction()
- Specified by:
getInputTypeRestrictionin interfaceelki.Algorithm
-
run
public ClusterOrder run(elki.database.relation.Relation<? extends elki.data.NumberVector> relation)
Run the HiCO algorithm.- Parameters:
relation- Data relation- Returns:
- OPTICS cluster order
-
correlationDistance
public int correlationDistance(elki.math.linearalgebra.pca.PCAFilteredResult pca1, elki.math.linearalgebra.pca.PCAFilteredResult pca2, int dimensionality)Computes the correlation distance between the two subspaces defined by the specified PCAs.- Parameters:
pca1- first PCApca2- second PCAdimensionality- the dimensionality of the data space- Returns:
- the correlation distance between the two subspaces defined by the specified PCAs
-
adjust
private void adjust(double[][] v, double[] vector, int corrDim)Inserts the specified vector into the given orthonormal matrixvat columncorrDim. After insertion the matrixvis orthonormalized and columncorrDimof matrixe_czechis set to thecorrDim-th unit vector.- Parameters:
v- the orthonormal matrix of the eigenvectorsvector- the vector to be insertedcorrDim- the column at which the vector should be inserted
-
getMinPts
public int getMinPts()
Description copied from interface:OPTICSTypeAlgorithmGet the minpts value used. Needed for OPTICS Xi.- Specified by:
getMinPtsin interfaceOPTICSTypeAlgorithm- Returns:
- minpts value
-
-