Environment for
DeveLoping
KDD-Applications
Supported by Index-Structures

de.lmu.ifi.dbs.elki.algorithm.outlier
Class LDOF<O extends DatabaseObject>

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,DoubleDistance,OutlierResult>
              extended by de.lmu.ifi.dbs.elki.algorithm.outlier.LDOF<O>
Type Parameters:
O - the type of DatabaseObjects handled by this Algorithm
All Implemented Interfaces:
Algorithm<O,OutlierResult>, Parameterizable

@Title(value="LDOF: Local Distance-Based Outlier Factor")
@Description(value="Local outlier detection appraoch suitable for scattered data by averaging the kNN distance over all k nearest neighbors")
@Reference(authors="K. Zhang, M. Hutter, H. Jin",
           title="A New Local Distance-Based Outlier Detection Approach for Scattered Real-World Data",
           booktitle="Proc. 13th Pacific-Asia Conference on Advances in Knowledge Discovery and Data Mining (PAKDD 2009), Bangkok, Thailand, 2009",
           url="http://dx.doi.org/10.1007/978-3-642-01307-2_84")
public class LDOF<O extends DatabaseObject>
extends DistanceBasedAlgorithm<O,DoubleDistance,OutlierResult>

Computes the LDOF (Local Distance-Based Outlier Factor) for all objects of a Database.

Reference:
K. Zhang, M. Hutter, H. Jin: A New Local Distance-Based Outlier Detection Approach for Scattered Real-World Data.
In: Proc. 13th Pacific-Asia Conference on Advances in Knowledge Discovery and Data Mining (PAKDD 2009), Bangkok, Thailand, 2009.

Author:
Arthur Zimek

Field Summary
(package private)  int k
          Holds the value of K_PARAM.
static OptionID K_ID
          OptionID for K_PARAM
private  IntParameter K_PARAM
          Parameter to specify the number of nearest neighbors of an object to be considered for computing its LDOF_SCORE, must be an integer greater than 1.
(package private)  MaterializeKNNPreprocessor<O,DoubleDistance> knnPreprocessor
          Preprocessor for materialization of kNN queries.
private static double LDOF_BASELINE
          The baseline for LDOF values.
static AssociationID<Double> LDOF_SCORE
          The association id to associate the LDOF_SCORE of an object for the LDOF algorithm.
 
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
LDOF(Parameterization config)
          Constructor, adhering to Parameterizable
 
Method Summary
protected  OutlierResult runInTime(Database<O> database)
          The run method encapsulated in measure of runtime.
 
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

LDOF_BASELINE

private static final double LDOF_BASELINE
The baseline for LDOF values. The paper gives 0.5 for uniform distributions, although one might also discuss using 1.0 as baseline.

See Also:
Constant Field Values

LDOF_SCORE

public static final AssociationID<Double> LDOF_SCORE
The association id to associate the LDOF_SCORE of an object for the LDOF algorithm.


K_ID

public static final OptionID K_ID
OptionID for K_PARAM


K_PARAM

private final IntParameter K_PARAM
Parameter to specify the number of nearest neighbors of an object to be considered for computing its LDOF_SCORE, must be an integer greater than 1.

Key: -ldof.k


k

int k
Holds the value of K_PARAM.


knnPreprocessor

MaterializeKNNPreprocessor<O extends DatabaseObject,DoubleDistance> knnPreprocessor
Preprocessor for materialization of kNN queries.

Constructor Detail

LDOF

public LDOF(Parameterization config)
Constructor, adhering to Parameterizable

Parameters:
config - Parameterization
Method Detail

runInTime

protected OutlierResult runInTime(Database<O> database)
                           throws IllegalStateException
Description copied from class: AbstractAlgorithm
The run method encapsulated in measure of runtime. An extending class needs not to take care of runtime itself.

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).

Release 0.3 (2010-03-31_1612)