de.lmu.ifi.dbs.elki.algorithm.outlier
Class DBOutlierDetection<O,D extends Distance<D>>
java.lang.Object
  
de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm<R>
      
de.lmu.ifi.dbs.elki.algorithm.AbstractDistanceBasedAlgorithm<O,D,OutlierResult>
          
de.lmu.ifi.dbs.elki.algorithm.outlier.AbstractDBOutlier<O,D>
              
de.lmu.ifi.dbs.elki.algorithm.outlier.DBOutlierDetection<O,D>
- Type Parameters:
 O - the type of DatabaseObjects handled by this AlgorithmD - the type of Distance used by this Algorithm
- All Implemented Interfaces: 
 - Algorithm, OutlierAlgorithm, InspectionUtilFrequentlyScanned, 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,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 above 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.
 
| 
Field Summary | 
private static Logging | 
logger
 
          The logger for this class. | 
private  double | 
p
 
          Holds the value of P_ID. | 
static OptionID | 
P_ID
 
          Parameter to specify the minimum fraction of objects that must be outside
 the D- neighborhood of an outlier | 
 
 
 
 
 
 
 
 
| Methods inherited from class java.lang.Object | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
 
logger
private static final Logging logger
- The logger for this class.
 
P_ID
public static final OptionID P_ID
- Parameter to specify the minimum fraction of objects that must be outside
 the D- neighborhood of an outlier
 
p
private double p
- Holds the value of 
P_ID.
 
DBOutlierDetection
public DBOutlierDetection(DistanceFunction<O,D> distanceFunction,
                          D d,
                          double p)
- Constructor with actual parameters.
- Parameters:
 distanceFunction - distance function parameterd - distance query radiusp - percentage parameter
 
computeOutlierScores
protected DataStore<Double> computeOutlierScores(Database database,
                                                 DistanceQuery<O,D> distFunc,
                                                 D neighborhoodSize)
- Description copied from class: 
AbstractDBOutlier 
- computes an outlier score for each object of the database.
- Specified by:
 computeOutlierScores in class AbstractDBOutlier<O,D extends Distance<D>>
 
 
 
getLogger
protected Logging getLogger()
- Description copied from class: 
AbstractAlgorithm 
- Get the (STATIC) logger for this class.
- Specified by:
 getLogger in class AbstractAlgorithm<OutlierResult>
 
- Returns:
 - the static logger