Package elki.clustering.dbscan
Class GeneralizedDBSCAN
- java.lang.Object
-
- elki.clustering.dbscan.GeneralizedDBSCAN
-
- All Implemented Interfaces:
Algorithm
,ClusteringAlgorithm<Clustering<Model>>
@Reference(authors="J\u00f6rg Sander, Martin Ester, Hans-Peter Kriegel, Xiaowei Xu", title="Density-Based Clustering in Spatial Databases: The Algorithm GDBSCAN and Its Applications", booktitle="Data Mining and Knowledge Discovery", url="https://doi.org/10.1023/A:1009745219419", bibkey="DBLP:journals/datamine/SanderEKX98") public class GeneralizedDBSCAN extends java.lang.Object implements ClusteringAlgorithm<Clustering<Model>>
Generalized DBSCAN, density-based clustering with noise.Reference:
Jörg Sander, Martin Ester, Hans-Peter Kriegel, Xiaowei Xu
Density-Based Clustering in Spatial Databases: The Algorithm GDBSCAN and Its Applications
Data Mining and Knowledge Discovery, 1998.- Since:
- 0.5.0
- Author:
- Erich Schubert, Arthur Zimek
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
GeneralizedDBSCAN.Instance<T>
Instance for a particular data set.static class
GeneralizedDBSCAN.Par
Parameterization class-
Nested classes/interfaces inherited from interface elki.Algorithm
Algorithm.Utils
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
coremodel
Track which objects are "core" objects.protected CorePredicate<?>
corepred
The core predicate factory.private static Logging
LOG
Get a logger for this algorithmprotected NeighborPredicate<?>
npred
The neighborhood predicate factory.
-
Constructor Summary
Constructors Constructor Description GeneralizedDBSCAN(NeighborPredicate<?> npred, CorePredicate<?> corepred, boolean coremodel)
Constructor for parameterized algorithm.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Clustering<Model>
autorun(Database database)
Try to auto-run the algorithm on a database by calling a method calledrun
, with an optionalDatabase
first, and with data relations as specified byAlgorithm.getInputTypeRestriction()
.TypeInformation[]
getInputTypeRestriction()
Get the input type restriction used for negotiating the data query.
-
-
-
Field Detail
-
LOG
private static final Logging LOG
Get a logger for this algorithm
-
npred
protected NeighborPredicate<?> npred
The neighborhood predicate factory.
-
corepred
protected CorePredicate<?> corepred
The core predicate factory.
-
coremodel
protected boolean coremodel
Track which objects are "core" objects.
-
-
Constructor Detail
-
GeneralizedDBSCAN
public GeneralizedDBSCAN(NeighborPredicate<?> npred, CorePredicate<?> corepred, boolean coremodel)
Constructor for parameterized algorithm.- Parameters:
npred
- Neighbor predicate.corepred
- Core point predicate.coremodel
- Keep track of core points.
-
-
Method Detail
-
autorun
public Clustering<Model> autorun(Database database)
Description copied from interface:Algorithm
Try to auto-run the algorithm on a database by calling a method calledrun
, with an optionalDatabase
first, and with data relations as specified byAlgorithm.getInputTypeRestriction()
.- Specified by:
autorun
in interfaceAlgorithm
- Specified by:
autorun
in interfaceClusteringAlgorithm<Clustering<Model>>
- Parameters:
database
- the database to run the algorithm on- Returns:
- the Result computed by this algorithm
-
getInputTypeRestriction
public TypeInformation[] getInputTypeRestriction()
Description copied from interface:Algorithm
Get the input type restriction used for negotiating the data query.- Specified by:
getInputTypeRestriction
in interfaceAlgorithm
- Returns:
- Type restriction
-
-