O
- the type of DatabaseObjects handled by this Algorithm@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,D extends NumberDistance<D,?>> extends AbstractDistanceBasedAlgorithm<O,D,OutlierResult> implements OutlierAlgorithm
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.
Modifier and Type | Class and Description |
---|---|
static class |
LDOF.Parameterizer<O,D extends NumberDistance<D,?>>
Parameterization class.
|
Modifier and Type | Field and Description |
---|---|
(package private) int |
k
Holds the value of
K_ID . |
static OptionID |
K_ID
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.
|
private static double |
LDOF_BASELINE
The baseline for LDOF values.
|
private static Logging |
logger
The logger for this class.
|
DISTANCE_FUNCTION_ID
Constructor and Description |
---|
LDOF(DistanceFunction<? super O,D> distanceFunction,
int k)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
TypeInformation[] |
getInputTypeRestriction()
Get the input type restriction used for negotiating the data query.
|
protected Logging |
getLogger()
Get the (STATIC) logger for this class.
|
OutlierResult |
run(Database database,
Relation<O> relation) |
getDistanceFunction
makeParameterDistanceFunction, run
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
run
private static final Logging logger
public static final OptionID K_ID
private static final double LDOF_BASELINE
int k
K_ID
.public LDOF(DistanceFunction<? super O,D> distanceFunction, int k)
distanceFunction
- distance functionk
- k Parameterpublic OutlierResult run(Database database, Relation<O> relation) throws IllegalStateException
IllegalStateException
public TypeInformation[] getInputTypeRestriction()
AbstractAlgorithm
getInputTypeRestriction
in interface Algorithm
getInputTypeRestriction
in class AbstractAlgorithm<OutlierResult>
protected Logging getLogger()
AbstractAlgorithm
getLogger
in class AbstractAlgorithm<OutlierResult>