Class ALOCI<V extends NumberVector>

  • Type Parameters:
    V - Vector type
    All Implemented Interfaces:
    Algorithm, OutlierAlgorithm

    @Title("Approximate LOCI: Fast Outlier Detection Using the Local Correlation Integral")
    @Description("Algorithm to compute outliers based on the Local Correlation Integral")
    @Reference(authors="S. Papadimitriou, H. Kitagawa, P. B. Gibbons, C. Faloutsos",
               title="LOCI: Fast Outlier Detection Using the Local Correlation Integral",
               booktitle="Proc. 19th IEEE Int. Conf. on Data Engineering (ICDE \'03)",
               url="https://doi.org/10.1109/ICDE.2003.1260802",
               bibkey="DBLP:conf/icde/PapadimitriouKGF03")
    public class ALOCI<V extends NumberVector>
    extends java.lang.Object
    implements OutlierAlgorithm
    Fast Outlier Detection Using the "approximate Local Correlation Integral".

    Outlier detection using multiple epsilon neighborhoods.

    Reference:

    S. Papadimitriou, H. Kitagawa, P. B. Gibbons and C. Faloutsos:
    LOCI: Fast Outlier Detection Using the Local Correlation Integral.
    In: Proc. 19th IEEE Int. Conf. on Data Engineering (ICDE '03)

    Since:
    0.5.0
    Author:
    Jonathan von Brünken, Erich Schubert
    • Field Detail

      • LOG

        private static final Logging LOG
        The logger for this class.
      • nmin

        private int nmin
        Minimum size for a leaf.
      • alpha

        private int alpha
        Alpha (level difference of sampling and counting neighborhoods)
      • g

        private int g
        Number of trees to generate (forest size)
    • Constructor Detail

      • ALOCI

        public ALOCI​(NumberVectorDistance<? super V> distance,
                     int nmin,
                     int alpha,
                     int g,
                     RandomFactory rnd)
        Constructor.
        Parameters:
        distance - Distance function
        nmin - Minimum neighborhood size
        alpha - Alpha value
        g - Number of grids to use
        rnd - Random generator.
    • Method Detail

      • run

        public OutlierResult run​(Relation<V> relation)
        Run the algorithm.
        Parameters:
        relation - Relation to process
        Returns:
        Outlier detection result
      • calculate_MDEF_norm

        private static double calculate_MDEF_norm​(ALOCI.Node sn,
                                                  ALOCI.Node cg)
        Method for the MDEF calculation
        Parameters:
        sn - Sampling Neighborhood
        cg - Counting Neighborhood
        Returns:
        MDEF norm
      • getInputTypeRestriction

        public TypeInformation[] getInputTypeRestriction()
        Description copied from interface: Algorithm
        Get the input type restriction used for negotiating the data query.
        Specified by:
        getInputTypeRestriction in interface Algorithm
        Returns:
        Type restriction