V - the type of vector the algorithm is applied to@Title(value="GriDBSCAN: Using Grid for Accelerating Density-Based Clustering") @Reference(authors="S. Mahran, K. Mahar", title="Using grid for accelerating density-based clustering", booktitle="8th IEEE Int. Conf. on Computer and Information Technology", url="https://doi.org/10.1109/CIT.2008.4594646", bibkey="DBLP:conf/IEEEcit/MahranM08") public class GriDBSCAN<V extends NumberVector> extends AbstractDistanceBasedAlgorithm<V,Clustering<Model>> implements ClusteringAlgorithm<Clustering<Model>>
An accelerated DBSCAN version for numerical data and Lp-norms only, by partitioning the data set into overlapping grid cells. For best efficiency, the overlap of the grid cells must be chosen well. The authors suggest a grid width of 10 times epsilon.
Because of partitioning the data, this version does not make use of indexes.
Reference:
S. Mahran, K. Mahar
Using grid for accelerating density-based clustering
In 8th IEEE Int. Conf. on Computer and Information Technology, 2008.
| Modifier and Type | Class and Description |
|---|---|
protected static class |
GriDBSCAN.Instance<V extends NumberVector>
Instance, for a single run.
|
static class |
GriDBSCAN.Parameterizer<O extends NumberVector>
Parameterization class.
|
| Modifier and Type | Field and Description |
|---|---|
protected double |
epsilon
Holds the epsilon radius threshold.
|
protected double |
gridwidth
Width of the grid cells.
|
private static Logging |
LOG
The logger for this class.
|
protected int |
minpts
Holds the minimum cluster size.
|
ALGORITHM_IDDISTANCE_FUNCTION_ID| Constructor and Description |
|---|
GriDBSCAN(DistanceFunction<? super V> distanceFunction,
double epsilon,
int minpts,
double gridwidth)
Constructor with parameters.
|
| 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.
|
Clustering<Model> |
run(Relation<V> relation)
Performs the DBSCAN algorithm on the given database.
|
getDistanceFunctionrunclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitrunprivate static final Logging LOG
protected double epsilon
protected int minpts
protected double gridwidth
public GriDBSCAN(DistanceFunction<? super V> distanceFunction, double epsilon, int minpts, double gridwidth)
distanceFunction - Distance functionepsilon - Epsilon valueminpts - Minpts parametergridwidth - Grid widthpublic Clustering<Model> run(Relation<V> relation)
public TypeInformation[] getInputTypeRestriction()
AbstractAlgorithmgetInputTypeRestriction in interface AlgorithmgetInputTypeRestriction in class AbstractAlgorithm<Clustering<Model>>protected Logging getLogger()
AbstractAlgorithmgetLogger in class AbstractAlgorithm<Clustering<Model>>Copyright © 2019 ELKI Development Team. License information.