|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm<R> de.lmu.ifi.dbs.elki.algorithm.clustering.AbstractProjectedDBSCAN<R,V>
V
- the type of NumberVector handled by this Algorithmpublic abstract class AbstractProjectedDBSCAN<R extends Clustering<Model>,V extends NumberVector<V,?>>
Provides an abstract algorithm requiring a VarianceAnalysisPreprocessor.
Nested Class Summary | |
---|---|
static class |
AbstractProjectedDBSCAN.Parameterizer<V extends NumberVector<V,?>,D extends Distance<D>>
Parameterization class. |
Field Summary | |
---|---|
private LocallyWeightedDistanceFunction<V> |
distanceFunction
Holds the instance of the distance function specified by INNER_DISTANCE_FUNCTION_ID . |
protected DoubleDistance |
epsilon
Holds the value of EPSILON_ID . |
static OptionID |
EPSILON_ID
Parameter to specify the maximum radius of the neighborhood to be considered, must be suitable to LocallyWeightedDistanceFunction . |
static OptionID |
INNER_DISTANCE_FUNCTION_ID
Parameter distance function |
private int |
lambda
Holds the value of LAMBDA_ID . |
static OptionID |
LAMBDA_ID
Parameter to specify the intrinsic dimensionality of the clusters to find, must be an integer greater than 0. |
protected int |
minpts
Holds the value of MINPTS_ID . |
static OptionID |
MINPTS_ID
Parameter to specify the threshold for minimum number of points in the epsilon-neighborhood of a point, must be an integer greater than 0. |
private ModifiableDBIDs |
noise
Holds a set of noise. |
static OptionID |
OUTER_DISTANCE_FUNCTION_ID
Parameter to specify the distance function to determine the distance between database objects, must extend LocallyWeightedDistanceFunction
. |
private ModifiableDBIDs |
processedIDs
Holds a set of processed ids. |
private List<ModifiableDBIDs> |
resultList
Holds a list of clusters found. |
Constructor Summary | |
---|---|
AbstractProjectedDBSCAN(DoubleDistance epsilon,
int minpts,
LocallyWeightedDistanceFunction<V> distanceFunction,
int lambda)
Constructor. |
Method Summary | |
---|---|
protected void |
expandCluster(LocallyWeightedDistanceFunction.Instance<V> distFunc,
RangeQuery<V,DoubleDistance> rangeQuery,
DBID startObjectID,
FiniteProgress objprog,
IndefiniteProgress clusprog)
ExpandCluster function of DBSCAN. |
TypeInformation[] |
getInputTypeRestriction()
Get the input type restriction used for negotiating the data query. |
abstract String |
getLongResultName()
Return the long result name. |
abstract String |
getShortResultName()
Return the short result name. |
Clustering<Model> |
run(Database database,
Relation<V> relation)
|
Methods inherited from class de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm |
---|
getLogger, makeParameterDistanceFunction, run |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface de.lmu.ifi.dbs.elki.algorithm.clustering.ClusteringAlgorithm |
---|
run |
Field Detail |
---|
public static final OptionID OUTER_DISTANCE_FUNCTION_ID
LocallyWeightedDistanceFunction
.
Key: -projdbscan.distancefunction
Default value:
LocallyWeightedDistanceFunction
public static final OptionID INNER_DISTANCE_FUNCTION_ID
public static final OptionID EPSILON_ID
LocallyWeightedDistanceFunction
.
Key: -projdbscan.epsilon
public static final OptionID LAMBDA_ID
Key: -projdbscan.lambda
public static final OptionID MINPTS_ID
Key: -projdbscan.minpts
private LocallyWeightedDistanceFunction<V extends NumberVector<V,?>> distanceFunction
INNER_DISTANCE_FUNCTION_ID
.
protected DoubleDistance epsilon
EPSILON_ID
.
private int lambda
LAMBDA_ID
.
protected int minpts
MINPTS_ID
.
private List<ModifiableDBIDs> resultList
private ModifiableDBIDs noise
private ModifiableDBIDs processedIDs
Constructor Detail |
---|
public AbstractProjectedDBSCAN(DoubleDistance epsilon, int minpts, LocallyWeightedDistanceFunction<V> distanceFunction, int lambda)
epsilon
- Epsilonminpts
- MinPts parameterdistanceFunction
- Outer distance functionlambda
- Lambda valueMethod Detail |
---|
public Clustering<Model> run(Database database, Relation<V> relation) throws IllegalStateException
IllegalStateException
public abstract String getLongResultName()
public abstract String getShortResultName()
protected void expandCluster(LocallyWeightedDistanceFunction.Instance<V> distFunc, RangeQuery<V,DoubleDistance> rangeQuery, DBID startObjectID, FiniteProgress objprog, IndefiniteProgress clusprog)
distFunc
- Distance query to userangeQuery
- Range querystartObjectID
- the object id of the database object to start the
expansion withobjprog
- the progress object for logging the current statuspublic TypeInformation[] getInputTypeRestriction()
AbstractAlgorithm
getInputTypeRestriction
in interface Algorithm
getInputTypeRestriction
in class AbstractAlgorithm<R extends Clustering<Model>>
|
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |