
O - Object type@Title(value="Fast Outlier Detection in High Dimensional Spaces") @Description(value="Algorithm to compute outliers using Hilbert space filling curves") @Reference(authors="F. Angiulli, C. Pizzuti", title="Fast Outlier Detection in High Dimensional Spaces", booktitle="Proc. European Conference on Principles of Knowledge Discovery and Data Mining (PKDD\'02)", url="http://dx.doi.org/10.1145/375663.375668") public class HilOut<O extends NumberVector<O,?>> extends AbstractDistanceBasedAlgorithm<O,DoubleDistance,OutlierResult> implements OutlierAlgorithm
 F. Angiulli, C. Pizzuti:
 Fast Outlier Detection in High Dimensional Spaces.
 In: Proc. European Conference on Principles of Knowledge Discovery and Data
 Mining (PKDD'02), Helsinki, Finland, 2002.
 
| Modifier and Type | Class and Description | 
|---|---|
(package private) class  | 
HilOut.HilbertFeatures
Class organizing the data points along a hilbert curve. 
 | 
(package private) static class  | 
HilOut.HilFeature
Hilbert representation of a single object. 
 | 
static class  | 
HilOut.Parameterizer<O extends NumberVector<O,?>>
Parameterization class 
 | 
static class  | 
HilOut.ScoreType
Type of output: all scores (upper bounds) or top n only 
 | 
| Modifier and Type | Field and Description | 
|---|---|
private int | 
capital_n
Set sizes, total and current iteration 
 | 
private int | 
capital_n_star
Set sizes, total and current iteration 
 | 
private int | 
d
Set sizes, total and current iteration 
 | 
private DistanceQuery<O,DoubleDistance> | 
distq
Distance query 
 | 
private int | 
h
Hilbert precision 
 | 
private int | 
k
Number of nearest neighbors 
 | 
private static Logging | 
logger
The logger for this class. 
 | 
private int | 
n
Number of outliers to compute exactly 
 | 
private int | 
n_star
Set sizes, total and current iteration 
 | 
private double | 
omega_star
Outlier threshold 
 | 
private double | 
t
LPNorm p parameter 
 | 
private Enum<HilOut.ScoreType> | 
tn
Reporting mode: exact (top n) only, or all 
 | 
DISTANCE_FUNCTION_ID| Modifier | Constructor and Description | 
|---|---|
protected  | 
HilOut(LPNormDistanceFunction distfunc,
      int k,
      int n,
      int h,
      Enum<HilOut.ScoreType> tn)
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. 
 | 
private void | 
innerScan(HilOut.HilbertFeatures hf,
         int i,
         int maxcount)
innerScan function calculates new upper and lower bounds and inserts the
 points of the neighborhood the bounds are based on in the NN Set 
 | 
OutlierResult | 
run(Database database,
   Relation<O> relation)  | 
private void | 
scan(HilOut.HilbertFeatures hf,
    int k0)
Scan function performs a squential scan over the data. 
 | 
private void | 
trueOutliers(HilOut.HilbertFeatures h)
trueOutliers function updates n_star 
 | 
getDistanceFunctionmakeParameterDistanceFunction, runclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitrunprivate static final Logging logger
private int k
private int n
private int h
private double t
private Enum<HilOut.ScoreType> tn
private DistanceQuery<O extends NumberVector<O,?>,DoubleDistance> distq
private int capital_n
private int n_star
private int capital_n_star
private int d
private double omega_star
protected HilOut(LPNormDistanceFunction distfunc, int k, int n, int h, Enum<HilOut.ScoreType> tn)
k - Number of Next Neighborsn - Number of Outlierh - Number of Bits for precision to use - max 32tn - TopN or All Outlier Rank to returnpublic OutlierResult run(Database database, Relation<O> relation)
private void scan(HilOut.HilbertFeatures hf, int k0)
hf - the hilbert featuresk0 - private void innerScan(HilOut.HilbertFeatures hf, int i, int maxcount)
i - position in pf of the feature for which the bounds should be
        calculatedmaxcount - maximal size of the neighborhoodprivate void trueOutliers(HilOut.HilbertFeatures h)
h - the HilberFeaturesprotected Logging getLogger()
AbstractAlgorithmgetLogger in class AbstractAlgorithm<OutlierResult>public TypeInformation[] getInputTypeRestriction()
AbstractAlgorithmgetInputTypeRestriction in interface AlgorithmgetInputTypeRestriction in class AbstractAlgorithm<OutlierResult>