Environment for
DeveLoping
KDD-Applications
Supported by Index-Structures

de.lmu.ifi.dbs.elki.algorithm.outlier
Class AbstractDBOutlier<O extends DatabaseObject,D extends Distance<D>>

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.logging.AbstractLoggable
      extended by de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm<O,R>
          extended by de.lmu.ifi.dbs.elki.algorithm.DistanceBasedAlgorithm<O,D,OutlierResult>
              extended by de.lmu.ifi.dbs.elki.algorithm.outlier.AbstractDBOutlier<O,D>
Type Parameters:
O - the type of DatabaseObjects handled by this Algorithm
D - the type of Distance used by this Algorithm
All Implemented Interfaces:
Algorithm<O,OutlierResult>, Parameterizable
Direct Known Subclasses:
DBOutlierDetection, DBOutlierScore

public abstract class AbstractDBOutlier<O extends DatabaseObject,D extends Distance<D>>
extends DistanceBasedAlgorithm<O,D,OutlierResult>

Simple distance based outlier detection algorithms.

Reference: E.M. Knorr, R. T. Ng: Algorithms for Mining Distance-Based Outliers in Large Datasets, In: Procs Int. Conf. on Very Large Databases (VLDB'98), New York, USA, 1998.

Author:
Lisa Reichert

Field Summary
private  D d
          Holds the value of D_PARAM.
static OptionID D_ID
          OptionID for D_PARAM
private  DistanceParameter<D> D_PARAM
          Parameter to specify the size of the D-neighborhood, Key: -dbod.d
static AssociationID<Double> DBOD_SCORE
          Association ID for DBOD.
 
Fields inherited from class de.lmu.ifi.dbs.elki.algorithm.DistanceBasedAlgorithm
DISTANCE_FUNCTION_ID, DISTANCE_FUNCTION_PARAM
 
Fields inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debug, logger
 
Constructor Summary
AbstractDBOutlier(Parameterization config)
          Constructor, adhering to Parameterizable
 
Method Summary
protected abstract  HashMap<Integer,Double> computeOutlierScores(Database<O> database, D d)
          computes an outlier score for each object of the database.
protected  OutlierResult runInTime(Database<O> database)
          Runs the algorithm in the timed evaluation part.
 
Methods inherited from class de.lmu.ifi.dbs.elki.algorithm.DistanceBasedAlgorithm
getDistanceFactory, getDistanceFunction
 
Methods inherited from class de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm
isTime, isVerbose, run, setTime, setVerbose
 
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

DBOD_SCORE

public static final AssociationID<Double> DBOD_SCORE
Association ID for DBOD.


D_ID

public static final OptionID D_ID
OptionID for D_PARAM


D_PARAM

private final DistanceParameter<D extends Distance<D>> D_PARAM
Parameter to specify the size of the D-neighborhood,

Key: -dbod.d


d

private D extends Distance<D> d
Holds the value of D_PARAM.

Constructor Detail

AbstractDBOutlier

public AbstractDBOutlier(Parameterization config)
Constructor, adhering to Parameterizable

Parameters:
config - Parameterization
Method Detail

runInTime

protected OutlierResult runInTime(Database<O> database)
                           throws IllegalStateException
Runs the algorithm in the timed evaluation part.

Specified by:
runInTime in class AbstractAlgorithm<O extends DatabaseObject,OutlierResult>
Parameters:
database - the database to run the algorithm on
Returns:
the Result computed by this algorithm
Throws:
IllegalStateException - if the algorithm has not been initialized properly (e.g. the setParameters(String[]) method has been failed to be called).

computeOutlierScores

protected abstract HashMap<Integer,Double> computeOutlierScores(Database<O> database,
                                                                D d)
computes an outlier score for each object of the database.


Release 0.3 (2010-03-31_1612)