Package elki.outlier.anglebased
Class FastABOD<V extends NumberVector>
- java.lang.Object
-
- elki.outlier.anglebased.ABOD<V>
-
- elki.outlier.anglebased.FastABOD<V>
-
- Type Parameters:
V- Vector type
- All Implemented Interfaces:
Algorithm,OutlierAlgorithm
- Direct Known Subclasses:
LBABOD
@Title("Approximate ABOD: Angle-Based Outlier Detection") @Description("Outlier detection using variance analysis on angles, especially for high dimensional data sets.") @Reference(authors="Hans-Peter Kriegel, Matthias Schubert, Arthur Zimek", title="Angle-Based Outlier Detection in High-dimensional Data", booktitle="Proc. 14th ACM SIGKDD Int. Conf. Knowledge Discovery and Data Mining (KDD\'08)", url="https://doi.org/10.1145/1401890.1401946", bibkey="DBLP:conf/kdd/KriegelSZ08") public class FastABOD<V extends NumberVector> extends ABOD<V>
Fast-ABOD (approximateABOF) version of Angle-Based Outlier Detection / Angle-Based Outlier Factor.Note: the minimum k is 3. The 2 nearest neighbors yields one 1 angle, which implies a constant 0 variance everywhere.
Reference:
Hans-Peter Kriegel, Matthias Schubert, Arthur Zimek
Angle-Based Outlier Detection in High-dimensional Data
Proc. 14th ACM SIGKDD Int. Conf. Knowledge Discovery and Data Mining (KDD'08)- Since:
- 0.6.0
- Author:
- Matthias Schubert (Original Code), Erich Schubert (ELKIfication)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classFastABOD.Par<V extends NumberVector>Parameterization class.-
Nested classes/interfaces inherited from interface elki.Algorithm
Algorithm.Utils
-
-
Field Summary
Fields Modifier and Type Field Description protected intkNumber of nearest neighbors.-
Fields inherited from class elki.outlier.anglebased.ABOD
kernelFunction
-
-
Constructor Summary
Constructors Constructor Description FastABOD(Similarity<? super V> kernelFunction, int k)Constructor for Angle-Based Outlier Detection (ABOD).
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidfastABOD(Relation<V> relation, DBIDs ids, WritableDoubleDataStore abodvalues, DoubleMinMax minmaxabod)Full kernel-based version.TypeInformation[]getInputTypeRestriction()Get the input type restriction used for negotiating the data query.private booleankNNABOD(Relation<V> relation, DBIDs ids, WritableDoubleDataStore abodvalues, DoubleMinMax minmaxabod)Simpler kNN based, can use more indexing.OutlierResultrun(Relation<V> relation)Run Fast-ABOD on the data set.-
Methods inherited from class elki.outlier.anglebased.ABOD
computeABOF
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface elki.outlier.OutlierAlgorithm
autorun
-
-
-
-
Constructor Detail
-
FastABOD
public FastABOD(Similarity<? super V> kernelFunction, int k)
Constructor for Angle-Based Outlier Detection (ABOD).- Parameters:
kernelFunction- kernel function to usek- Number of nearest neighbors
-
-
Method Detail
-
run
public OutlierResult run(Relation<V> relation)
Run Fast-ABOD on the data set.- Overrides:
runin classABOD<V extends NumberVector>- Parameters:
relation- Relation to process- Returns:
- Outlier detection result
-
kNNABOD
private boolean kNNABOD(Relation<V> relation, DBIDs ids, WritableDoubleDataStore abodvalues, DoubleMinMax minmaxabod)
Simpler kNN based, can use more indexing.- Parameters:
relation- Data relationids- IDsabodvalues- Score storageminmaxabod- Min/max storage- Returns:
trueif kNN were available and usable.
-
fastABOD
private void fastABOD(Relation<V> relation, DBIDs ids, WritableDoubleDataStore abodvalues, DoubleMinMax minmaxabod)
Full kernel-based version.- Parameters:
relation- Data relationids- IDsabodvalues- Score storageminmaxabod- Min/max storage
-
getInputTypeRestriction
public TypeInformation[] getInputTypeRestriction()
Description copied from interface:AlgorithmGet the input type restriction used for negotiating the data query.- Specified by:
getInputTypeRestrictionin interfaceAlgorithm- Overrides:
getInputTypeRestrictionin classABOD<V extends NumberVector>- Returns:
- Type restriction
-
-