public class OnlineLOF<O,D extends NumberDistance<D,?>> extends FlexibleLOF<O,D>
LOF
Algorithm, supports insertions and
removals.Modifier and Type | Class and Description |
---|---|
private class |
OnlineLOF.LOFKNNListener
Encapsulates a listener for changes of kNNs used in the online LOF
algorithm.
|
static class |
OnlineLOF.Parameterizer<O,D extends NumberDistance<D,?>>
Parameterization class.
|
FlexibleLOF.LOFResult<O,D extends NumberDistance<D,?>>
Modifier and Type | Field and Description |
---|---|
private static Logging |
LOG
The logger for this class.
|
kreach, krefer, reachabilityDistanceFunction, referenceDistanceFunction
Constructor and Description |
---|
OnlineLOF(int krefer,
int kreach,
DistanceFunction<? super O,D> neighborhoodDistanceFunction,
DistanceFunction<? super O,D> reachabilityDistanceFunction)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
private Pair<Pair<KNNQuery<O,D>,KNNQuery<O,D>>,Pair<RKNNQuery<O,D>,RKNNQuery<O,D>>> |
getKNNAndRkNNQueries(Database database,
Relation<O> relation,
StepProgress stepprog)
Get the kNN and rkNN queries for the algorithm.
|
protected Logging |
getLogger()
Get the (STATIC) logger for this class.
|
OutlierResult |
run(Database database,
Relation<O> relation)
Performs the Generalized LOF_SCORE algorithm on the given database by
calling
#doRunInTime(Database) and adds a OnlineLOF.LOFKNNListener to
the preprocessors. |
computeLOFs, computeLRDs, doRunInTime, getInputTypeRestriction
makeParameterDistanceFunction, run
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
run
private static final Logging LOG
public OnlineLOF(int krefer, int kreach, DistanceFunction<? super O,D> neighborhoodDistanceFunction, DistanceFunction<? super O,D> reachabilityDistanceFunction)
krefer
- The number of neighbors for referencekreach
- The number of neighbors for reachability distanceneighborhoodDistanceFunction
- the neighborhood distance functionreachabilityDistanceFunction
- the reachability distance functionpublic OutlierResult run(Database database, Relation<O> relation)
#doRunInTime(Database)
and adds a OnlineLOF.LOFKNNListener
to
the preprocessors.run
in class FlexibleLOF<O,D extends NumberDistance<D,?>>
database
- Database to queryrelation
- Data to processprivate Pair<Pair<KNNQuery<O,D>,KNNQuery<O,D>>,Pair<RKNNQuery<O,D>,RKNNQuery<O,D>>> getKNNAndRkNNQueries(Database database, Relation<O> relation, StepProgress stepprog)
relation
- Datastepprog
- Progress loggerprotected Logging getLogger()
AbstractAlgorithm
getLogger
in class FlexibleLOF<O,D extends NumberDistance<D,?>>