Environment for
DeveLoping
KDD-Applications
Supported by Index-Structures

de.lmu.ifi.dbs.elki.algorithm.outlier
Class DBOutlierDetection<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>
                  extended by de.lmu.ifi.dbs.elki.algorithm.outlier.DBOutlierDetection<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

@Title(value="DBOD: Distance Based Outlier Detection")
@Description(value="If the D-neighborhood of an object contains only very few objects (less than (1-p) percent of the data) this object is flagged as an outlier")
@Reference(authors="E.M. Knorr, R. T. Ng",
           title="Algorithms for Mining Distance-Based Outliers in Large Datasets",
           booktitle="Procs Int. Conf. on Very Large Databases (VLDB\'98), New York, USA, 1998")
public class DBOutlierDetection<O extends DatabaseObject,D extends Distance<D>>
extends AbstractDBOutlier<O,D>

Simple distanced based outlier detection algorithm. User has to specify two parameters An object is flagged as an outlier if at least a fraction p of all data objects has a distance aboce d from c

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. This paper presents several Distance Based Outlier Detection algorithms. Implemented here is a simple index based algorithm as presented in section 3.1.

Author:
Lisa Reichert

Field Summary
private  double p
          Holds the value of P_PARAM.
static OptionID P_ID
          OptionID for P_PARAM
private  DoubleParameter P_PARAM
          Parameter to specify the minimum fraction of objects that must be outside the D- neighborhood of an outlier, Key: -dbod.p
 
Fields inherited from class de.lmu.ifi.dbs.elki.algorithm.outlier.AbstractDBOutlier
D_ID, DBOD_SCORE
 
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
DBOutlierDetection(Parameterization config)
          Constructor, adhering to Parameterizable
 
Method Summary
protected  HashMap<Integer,Double> computeOutlierScores(Database<O> database, D neighborhoodSize)
          computes an outlier score for each object of the database.
 
Methods inherited from class de.lmu.ifi.dbs.elki.algorithm.outlier.AbstractDBOutlier
runInTime
 
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

P_ID

public static final OptionID P_ID
OptionID for P_PARAM


P_PARAM

private final DoubleParameter P_PARAM
Parameter to specify the minimum fraction of objects that must be outside the D- neighborhood of an outlier,

Key: -dbod.p


p

private double p
Holds the value of P_PARAM.

Constructor Detail

DBOutlierDetection

public DBOutlierDetection(Parameterization config)
Constructor, adhering to Parameterizable

Parameters:
config - Parameterization
Method Detail

computeOutlierScores

protected HashMap<Integer,Double> computeOutlierScores(Database<O> database,
                                                       D neighborhoodSize)
Description copied from class: AbstractDBOutlier
computes an outlier score for each object of the database.

Specified by:
computeOutlierScores in class AbstractDBOutlier<O extends DatabaseObject,D extends Distance<D>>

Release 0.3 (2010-03-31_1612)