Class FourCNeighborPredicate
- java.lang.Object
-
- elki.clustering.dbscan.predicates.AbstractRangeQueryNeighborPredicate<elki.data.NumberVector,PreDeConNeighborPredicate.PreDeConModel,PreDeConNeighborPredicate.PreDeConModel>
-
- elki.clustering.dbscan.predicates.FourCNeighborPredicate
-
- All Implemented Interfaces:
NeighborPredicate<PreDeConNeighborPredicate.PreDeConModel>
@Reference(authors="Christian B\u00f6hm, Karin Kailing, Peer Kr\u00f6ger, Arthur Zimek", title="Computing Clusters of Correlation Connected Objects", booktitle="Proc. ACM SIGMOD Int. Conf. on Management of Data (SIGMOD 2004)", url="https://doi.org/10.1145/1007568.1007620", bibkey="DBLP:conf/sigmod/BohmKKZ04") public class FourCNeighborPredicate extends AbstractRangeQueryNeighborPredicate<elki.data.NumberVector,PreDeConNeighborPredicate.PreDeConModel,PreDeConNeighborPredicate.PreDeConModel>4C identifies local subgroups of data objects sharing a uniform correlation. The algorithm is based on a combination of PCA and density-based clustering (DBSCAN).Reference:
Christian Böhm, Karin Kailing, Peer Kröger, Arthur Zimek
Computing Clusters of Correlation Connected Objects
Proc. ACM SIGMOD Int. Conf. on Management of Data (SIGMOD 2004)- Since:
- 0.7.0
- Author:
- Arthur Zimek, Erich Schubert
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classFourCNeighborPredicate.InstanceInstance for a particular data set.static classFourCNeighborPredicate.ParParameterization class.
-
Field Summary
Fields Modifier and Type Field Description private elki.math.linearalgebra.pca.filter.EigenPairFilterfilterFilter for selecting eigenvectors.private static elki.logging.LoggingLOGThe logger for this class.private elki.math.MeanVariancemvCorDimTool to help with parameterization.private elki.math.MeanVariancemvSizeTool to help with parameterization.private elki.math.MeanVariancemvSize2Tool to help with parameterization.private elki.math.linearalgebra.pca.PCARunnerpcaThe Filtered PCA Runnerprivate FourC.Settingssettings4C settings class.-
Fields inherited from class elki.clustering.dbscan.predicates.AbstractRangeQueryNeighborPredicate
distance, epsilon
-
-
Constructor Summary
Constructors Constructor Description FourCNeighborPredicate(FourC.Settings settings)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected PreDeConNeighborPredicate.PreDeConModelcomputeLocalModel(elki.database.ids.DBIDRef id, elki.database.ids.DoubleDBIDList neighbors, elki.database.relation.Relation<? extends elki.data.NumberVector> relation)Method to compute the actual data model.elki.data.type.TypeInformationgetInputTypeRestriction()Input data type restriction.(package private) elki.logging.LogginggetLogger()Get the class logger.elki.data.type.SimpleTypeInformation<PreDeConNeighborPredicate.PreDeConModel>getOutputType()Output data type information.FourCNeighborPredicate.Instanceinstantiate(elki.database.Database database)Instantiate for a database.-
Methods inherited from class elki.clustering.dbscan.predicates.AbstractRangeQueryNeighborPredicate
preprocess
-
-
-
-
Field Detail
-
LOG
private static final elki.logging.Logging LOG
The logger for this class.
-
settings
private FourC.Settings settings
4C settings class.
-
mvSize
private elki.math.MeanVariance mvSize
Tool to help with parameterization.
-
mvSize2
private elki.math.MeanVariance mvSize2
Tool to help with parameterization.
-
mvCorDim
private elki.math.MeanVariance mvCorDim
Tool to help with parameterization.
-
pca
private elki.math.linearalgebra.pca.PCARunner pca
The Filtered PCA Runner
-
filter
private elki.math.linearalgebra.pca.filter.EigenPairFilter filter
Filter for selecting eigenvectors.
-
-
Constructor Detail
-
FourCNeighborPredicate
public FourCNeighborPredicate(FourC.Settings settings)
Constructor.- Parameters:
settings- 4C settings
-
-
Method Detail
-
instantiate
public FourCNeighborPredicate.Instance instantiate(elki.database.Database database)
Description copied from interface:NeighborPredicateInstantiate for a database.- Parameters:
database- Database to instantiate for- Returns:
- Instance
-
computeLocalModel
protected PreDeConNeighborPredicate.PreDeConModel computeLocalModel(elki.database.ids.DBIDRef id, elki.database.ids.DoubleDBIDList neighbors, elki.database.relation.Relation<? extends elki.data.NumberVector> relation)
Description copied from class:AbstractRangeQueryNeighborPredicateMethod to compute the actual data model.- Specified by:
computeLocalModelin classAbstractRangeQueryNeighborPredicate<elki.data.NumberVector,PreDeConNeighborPredicate.PreDeConModel,PreDeConNeighborPredicate.PreDeConModel>- Parameters:
id- Object IDneighbors- Neighborsrelation- Data relation- Returns:
- Model for this object.
-
getLogger
elki.logging.Logging getLogger()
Description copied from class:AbstractRangeQueryNeighborPredicateGet the class logger.- Specified by:
getLoggerin classAbstractRangeQueryNeighborPredicate<elki.data.NumberVector,PreDeConNeighborPredicate.PreDeConModel,PreDeConNeighborPredicate.PreDeConModel>- Returns:
- Logger
-
getInputTypeRestriction
public elki.data.type.TypeInformation getInputTypeRestriction()
Description copied from interface:NeighborPredicateInput data type restriction.- Specified by:
getInputTypeRestrictionin interfaceNeighborPredicate<PreDeConNeighborPredicate.PreDeConModel>- Overrides:
getInputTypeRestrictionin classAbstractRangeQueryNeighborPredicate<elki.data.NumberVector,PreDeConNeighborPredicate.PreDeConModel,PreDeConNeighborPredicate.PreDeConModel>- Returns:
- Type restriction
-
getOutputType
public elki.data.type.SimpleTypeInformation<PreDeConNeighborPredicate.PreDeConModel> getOutputType()
Description copied from interface:NeighborPredicateOutput data type information.- Returns:
- Type information
-
-