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

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm<R>
      extended by de.lmu.ifi.dbs.elki.algorithm.AbstractDistanceBasedAlgorithm<O,D,OutlierResult>
          extended by de.lmu.ifi.dbs.elki.algorithm.outlier.AbstractDBOutlier<O,D>
              extended by de.lmu.ifi.dbs.elki.algorithm.outlier.DBOutlierScore<O,D>
Type Parameters:
O - Database object type
D - Distance type
All Implemented Interfaces:
Algorithm, OutlierAlgorithm, InspectionUtilFrequentlyScanned, Parameterizable

@Title(value="Distance based outlier score")
@Description(value="Generalization of the original DB-Outlier approach to a ranking method, by turning the fraction parameter into the output value.")
@Reference(prefix="Generalization of a method proposed in",
           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 DBOutlierScore<O,D extends Distance<D>>
extends AbstractDBOutlier<O,D>

Compute percentage of neighbors in the given neighborhood with size d. Generalization of the DB Outlier Detection by using the fraction as outlier score thus eliminating this parameter and turning the method into a ranking method instead of a labelling one.


Nested Class Summary
static class DBOutlierScore.Parameterizer<O,D extends Distance<D>>
          Parameterization class.
 
Field Summary
private static Logging logger
          The logger for this class.
 
Fields inherited from class de.lmu.ifi.dbs.elki.algorithm.outlier.AbstractDBOutlier
D_ID
 
Fields inherited from class de.lmu.ifi.dbs.elki.algorithm.AbstractDistanceBasedAlgorithm
DISTANCE_FUNCTION_ID
 
Constructor Summary
DBOutlierScore(DistanceFunction<O,D> distanceFunction, D d)
          Constructor with parameters.
 
Method Summary
protected  DataStore<Double> computeOutlierScores(Database database, DistanceQuery<O,D> distFunc, D d)
          computes an outlier score for each object of the database.
protected  Logging getLogger()
          Get the (STATIC) logger for this class.
 
Methods inherited from class de.lmu.ifi.dbs.elki.algorithm.outlier.AbstractDBOutlier
getInputTypeRestriction, run
 
Methods inherited from class de.lmu.ifi.dbs.elki.algorithm.AbstractDistanceBasedAlgorithm
getDistanceFunction
 
Methods inherited from class de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm
makeParameterDistanceFunction, run
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.lmu.ifi.dbs.elki.algorithm.outlier.OutlierAlgorithm
run
 

Field Detail

logger

private static final Logging logger
The logger for this class.

Constructor Detail

DBOutlierScore

public DBOutlierScore(DistanceFunction<O,D> distanceFunction,
                      D d)
Constructor with parameters.

Parameters:
distanceFunction - Distance function
d - distance radius parameter
Method Detail

computeOutlierScores

protected DataStore<Double> computeOutlierScores(Database database,
                                                 DistanceQuery<O,D> distFunc,
                                                 D d)
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

Release 0.4.0 (2011-09-20_1324)