Package elki.outlier

Class COP<V extends NumberVector>

  • Type Parameters:
    V - the type of NumberVector handled by this Algorithm
    All Implemented Interfaces:
    Algorithm, OutlierAlgorithm

    @Title("COP: Correlation Outlier Probability")
    @Reference(authors="Hans-Peter Kriegel, Peer Kr\u00f6ger, Erich Schubert, Arthur Zimek",
               title="Outlier Detection in Arbitrarily Oriented Subspaces",
               booktitle="Proc. IEEE Int. Conf. on Data Mining (ICDM 2012)",
               url="https://doi.org/10.1109/ICDM.2012.21",
               bibkey="DBLP:conf/icdm/KriegelKSZ12")
    public class COP<V extends NumberVector>
    extends java.lang.Object
    implements OutlierAlgorithm
    Correlation outlier probability: Outlier Detection in Arbitrarily Oriented Subspaces

    Reference:

    Hans-Peter Kriegel, Peer Kröger, Erich Schubert, Arthur Zimek
    Outlier Detection in Arbitrarily Oriented Subspaces
    Proc. IEEE Int. Conf. on Data Mining (ICDM 2012)

    Since:
    0.5.5
    Author:
    Erich Schubert
    • Field Detail

      • LOG

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

        public static final java.lang.String COP_SCORES
        Result name for the COP outlier scores.
        See Also:
        Constant Field Values
      • COP_DIM

        public static final java.lang.String COP_DIM
        Result name for the dimensionality.
        See Also:
        Constant Field Values
      • COP_ERRORVEC

        public static final java.lang.String COP_ERRORVEC
        Result name for the error vectors.
        See Also:
        Constant Field Values
      • k

        protected int k
        Number of neighbors to be considered.
      • pca

        protected PCARunner pca
        Holds the PCA runner.
      • expect

        protected double expect
        Expected amount of outliers.
      • dist

        protected COP.DistanceDist dist
        Type of distribution to assume for distances.
      • models

        protected boolean models
        Include models in output.
    • Constructor Detail

      • COP

        public COP​(Distance<? super V> distance,
                   int k,
                   PCARunner pca,
                   double expect,
                   COP.DistanceDist dist,
                   boolean models)
        Constructor.
        Parameters:
        distance - distance function
        k - number of neighbors
        pca - PCA computation method
        expect - Expected fraction of outliers (for score normalization)
        dist - Distance distribution model (ChiSquared, Gamma)
        models - Report models
    • Method Detail

      • 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
      • run

        public OutlierResult run​(Relation<V> relation)
        Process a single relation.
        Parameters:
        relation - Relation to process
        Returns:
        Outlier detection result
      • computeCentroid

        private static void computeCentroid​(double[] centroid,
                                            Relation<? extends NumberVector> relation,
                                            DBIDs ids)
        Recompute the centroid of a set.
        Parameters:
        centroid - Scratch buffer
        relation - Input data
        ids - IDs to include