Package elki.clustering.optics
Class FastOPTICS<V extends NumberVector>
- java.lang.Object
-
- elki.clustering.optics.FastOPTICS<V>
-
- Type Parameters:
V
- Input vector type
- All Implemented Interfaces:
Algorithm
,OPTICSTypeAlgorithm
@Reference(authors="J. Schneider, M. Vlachos", title="Fast parameterless density-based clustering via random projections", booktitle="Proc. 22nd ACM Int. Conf. on Information & Knowledge Management (CIKM 2013)", url="https://doi.org/10.1145/2505515.2505590", bibkey="DBLP:conf/cikm/SchneiderV13") public class FastOPTICS<V extends NumberVector> extends java.lang.Object implements OPTICSTypeAlgorithm
FastOPTICS algorithm (Fast approximation of OPTICS)Note that this is not FOPTICS as in "Fuzzy OPTICS"!
Reference:
J. Schneider, M. Vlachos
Fast parameterless density-based clustering via random projections
Proc. 22nd ACM Int. Conf. on Information and Knowledge Management (CIKM 2013)This is based on the original code provided by Johannes Schneider, with ELKIfications and optimizations by Erich Schubert.
- Since:
- 0.7.0
- Author:
- Johannes Schneider, Erich Schubert
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface elki.Algorithm
Algorithm.Utils
-
-
Field Summary
Fields Modifier and Type Field Description (package private) RandomProjectedNeighborsAndDensities
index
Index.(package private) DoubleDataStore
inverseDensities
Inverse Densities correspond to average distances in point set of projectionsprivate static Logging
LOG
Class logger.(package private) int
minPts
MinPts parameter.(package private) DataStore<? extends DBIDs>
neighs
neighbors of a point(package private) ClusterOrder
order
Result: output order of points(package private) ModifiableDBIDs
processed
processed points(package private) WritableDoubleDataStore
reachDist
Result: reachability distancesstatic double
UNDEFINED_DISTANCE
undefined value for (reachability/average) distance
-
Constructor Summary
Constructors Constructor Description FastOPTICS(int minpts, RandomProjectedNeighborsAndDensities index)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
expandClusterOrder(DBID ipt, ClusterOrder order, DistanceQuery<V> dq, FiniteProgress prog)
OPTICS algorithm for processing a point, but with different density estimatesTypeInformation[]
getInputTypeRestriction()
Get the input type restriction used for negotiating the data query.int
getMinPts()
Get the minpts value used.ClusterOrder
run(Relation<V> relation)
Run the 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 Logging LOG
Class logger.
-
UNDEFINED_DISTANCE
public static final double UNDEFINED_DISTANCE
undefined value for (reachability/average) distance- See Also:
- Constant Field Values
-
order
ClusterOrder order
Result: output order of points
-
reachDist
WritableDoubleDataStore reachDist
Result: reachability distances
-
processed
ModifiableDBIDs processed
processed points
-
inverseDensities
DoubleDataStore inverseDensities
Inverse Densities correspond to average distances in point set of projections
-
minPts
int minPts
MinPts parameter.
-
index
RandomProjectedNeighborsAndDensities index
Index.
-
-
Constructor Detail
-
FastOPTICS
public FastOPTICS(int minpts, RandomProjectedNeighborsAndDensities index)
Constructor.- Parameters:
minpts
- Minimum number of neighbors.index
- Index
-
-
Method Detail
-
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
-
run
public ClusterOrder run(Relation<V> relation)
Run the algorithm.- Parameters:
relation
- Relation
-
expandClusterOrder
protected void expandClusterOrder(DBID ipt, ClusterOrder order, DistanceQuery<V> dq, FiniteProgress prog)
OPTICS algorithm for processing a point, but with different density estimates- Parameters:
ipt
- Pointorder
- Cluster order (output)dq
- Distance queryprog
- Progress for logging.
-
getMinPts
public int getMinPts()
Description copied from interface:OPTICSTypeAlgorithm
Get the minpts value used. Needed for OPTICS Xi.- Specified by:
getMinPts
in interfaceOPTICSTypeAlgorithm
- Returns:
- minpts value
-
-