
O - the type of DatabaseObjects handled by this AlgorithmD - the type of Distance used by this Algorithm@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>
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.
| Modifier and Type | Class and Description |
|---|---|
static class |
DBOutlierDetection.Parameterizer<O,D extends Distance<D>>
Parameterization class.
|
| Modifier and Type | Field and Description |
|---|---|
private static Logging |
LOG
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
|
D_IDDISTANCE_FUNCTION_ID| Constructor and Description |
|---|
DBOutlierDetection(DistanceFunction<O,D> distanceFunction,
D d,
double p)
Constructor with actual parameters.
|
| Modifier and Type | Method and Description |
|---|---|
protected DoubleDataStore |
computeOutlierScores(Database database,
Relation<O> relation,
D neighborhoodSize)
computes an outlier score for each object of the database.
|
protected Logging |
getLogger()
Get the (STATIC) logger for this class.
|
getInputTypeRestriction, rungetDistanceFunctionmakeParameterDistanceFunction, runclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitrunprivate static final Logging LOG
public static final OptionID P_ID
private double p
P_ID.public DBOutlierDetection(DistanceFunction<O,D> distanceFunction, D d, double p)
distanceFunction - distance function parameterd - distance query radiusp - percentage parameterprotected DoubleDataStore computeOutlierScores(Database database, Relation<O> relation, D neighborhoodSize)
AbstractDBOutliercomputeOutlierScores in class AbstractDBOutlier<O,D extends Distance<D>>database - Databaserelation - RelationneighborhoodSize - distanceprotected Logging getLogger()
AbstractAlgorithmgetLogger in class AbstractAlgorithm<OutlierResult>