Environment for
DeveLoping
KDD-Applications
Supported by Index-Structures

de.lmu.ifi.dbs.elki.preprocessing
Class ProjectedDBSCANPreprocessor<D extends Distance<D>,V extends FeatureVector<V,?>>

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.logging.AbstractLoggable
      extended by de.lmu.ifi.dbs.elki.preprocessing.ProjectedDBSCANPreprocessor<D,V>
Type Parameters:
D - Distance type
V - Vector type
All Implemented Interfaces:
Preprocessor<V>
Direct Known Subclasses:
FourCPreprocessor, PreDeConPreprocessor

public abstract class ProjectedDBSCANPreprocessor<D extends Distance<D>,V extends FeatureVector<V,?>>
extends AbstractLoggable
implements Preprocessor<V>

Abstract superclass for preprocessor of algorithms extending the ProjectedDBSCAN algorithm.

Author:
Arthur Zimek

Field Summary
static Class<?> DEFAULT_DISTANCE_FUNCTION
          The default range query distance function.
private  ObjectParameter<DistanceFunction<V,D>> DISTANCE_FUNCTION_PARAM
          Parameter distance function
private  D epsilon
          Contains the value of parameter epsilon;
 DistanceParameter<D> EPSILON_PARAM
          Parameter to specify the maximum radius of the neighborhood to be considered, must be suitable to LocallyWeightedDistanceFunction.
private  int minpts
          Holds the value of parameter minpts.
private  IntParameter MINPTS_PARAM
          Parameter to specify the threshold for minimum number of points in the epsilon-neighborhood of a point, must be an integer greater than 0.
protected  DistanceFunction<V,D> rangeQueryDistanceFunction
          The distance function for the variance analysis.
 
Fields inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debug, logger
 
Constructor Summary
protected ProjectedDBSCANPreprocessor(Parameterization config)
          Provides a new Preprocessor that computes the correlation dimension of objects of a certain database.
 
Method Summary
 void run(Database<V> database, boolean verbose, boolean time)
          This method executes the particular preprocessing step of this Preprocessor for the objects of the specified database.
protected abstract  void runVarianceAnalysis(Integer id, List<DistanceResultPair<D>> neighbors, Database<V> database)
          This method implements the type of variance analysis to be computed for a given point.
 
Methods inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debugFine, debugFiner, debugFinest, exception, progress, verbose, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EPSILON_PARAM

public final DistanceParameter<D extends Distance<D>> EPSILON_PARAM
Parameter to specify the maximum radius of the neighborhood to be considered, must be suitable to LocallyWeightedDistanceFunction.

Key: -epsilon


MINPTS_PARAM

private final IntParameter MINPTS_PARAM
Parameter to specify the threshold for minimum number of points in the epsilon-neighborhood of a point, must be an integer greater than 0.

Key: -projdbscan.minpts


DEFAULT_DISTANCE_FUNCTION

public static final Class<?> DEFAULT_DISTANCE_FUNCTION
The default range query distance function.


DISTANCE_FUNCTION_PARAM

private final ObjectParameter<DistanceFunction<V extends FeatureVector<V,?>,D extends Distance<D>>> DISTANCE_FUNCTION_PARAM
Parameter distance function


epsilon

private D extends Distance<D> epsilon
Contains the value of parameter epsilon;


rangeQueryDistanceFunction

protected DistanceFunction<V extends FeatureVector<V,?>,D extends Distance<D>> rangeQueryDistanceFunction
The distance function for the variance analysis.


minpts

private int minpts
Holds the value of parameter minpts.

Constructor Detail

ProjectedDBSCANPreprocessor

protected ProjectedDBSCANPreprocessor(Parameterization config)
Provides a new Preprocessor that computes the correlation dimension of objects of a certain database.

Method Detail

run

public void run(Database<V> database,
                boolean verbose,
                boolean time)
Description copied from interface: Preprocessor
This method executes the particular preprocessing step of this Preprocessor for the objects of the specified database.

Specified by:
run in interface Preprocessor<V extends FeatureVector<V,?>>
Parameters:
database - the database for which the preprocessing is performed
verbose - flag to allow verbose messages while performing the algorithm
time - flag to request output of performance time

runVarianceAnalysis

protected abstract void runVarianceAnalysis(Integer id,
                                            List<DistanceResultPair<D>> neighbors,
                                            Database<V> database)
This method implements the type of variance analysis to be computed for a given point.

Example1: for 4C, this method should implement a PCA for the given point. Example2: for PreDeCon, this method should implement a simple axis-parallel variance analysis.

Parameters:
id - the given point
neighbors - the neighbors as query results of the given point
database - the database for which the preprocessing is performed

Release 0.3 (2010-03-31_1612)