de.lmu.ifi.dbs.elki.algorithm.outlier
Class GaussianModel<V extends NumberVector<V,?>>

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm<OutlierResult>
      extended by de.lmu.ifi.dbs.elki.algorithm.outlier.GaussianModel<V>
Type Parameters:
V - Vector type
All Implemented Interfaces:
Algorithm, OutlierAlgorithm, InspectionUtilFrequentlyScanned, Parameterizable

@Title(value="Gaussian Model Outlier Detection")
@Description(value="Fit a multivariate gaussian model onto the data, and use the PDF to compute an outlier score.")
public class GaussianModel<V extends NumberVector<V,?>>
extends AbstractAlgorithm<OutlierResult>
implements OutlierAlgorithm

Outlier have smallest GMOD_PROB: the outlier scores is the probability density of the assumed distribution.


Nested Class Summary
static class GaussianModel.Parameterizer<V extends NumberVector<V,?>>
          Parameterization class.
 
Field Summary
private  boolean invert
          Invert the result
static OptionID INVERT_ID
          OptionID for inversion flag.
private static Logging logger
          The logger for this class.
private static double SINGULARITY_CHEAT
          Small value to increment diagonally of a matrix in order to avoid singularity before building the inverse.
 
Constructor Summary
GaussianModel(boolean invert)
          Constructor with actual parameters.
 
Method Summary
 TypeInformation[] getInputTypeRestriction()
          Get the input type restriction used for negotiating the data query.
protected  Logging getLogger()
          Get the (STATIC) logger for this class.
 OutlierResult run(Relation<V> relation)
           
 
Methods inherited from class de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm
makeParameterDistanceFunction, run
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.lmu.ifi.dbs.elki.algorithm.outlier.OutlierAlgorithm
run
 

Field Detail

logger

private static final Logging logger
The logger for this class.


INVERT_ID

public static final OptionID INVERT_ID
OptionID for inversion flag.


SINGULARITY_CHEAT

private static final double SINGULARITY_CHEAT
Small value to increment diagonally of a matrix in order to avoid singularity before building the inverse.

See Also:
Constant Field Values

invert

private boolean invert
Invert the result

Constructor Detail

GaussianModel

public GaussianModel(boolean invert)
Constructor with actual parameters.

Parameters:
invert - inversion flag.
Method Detail

run

public OutlierResult run(Relation<V> relation)
                  throws IllegalStateException
Throws:
IllegalStateException

getInputTypeRestriction

public TypeInformation[] getInputTypeRestriction()
Description copied from class: AbstractAlgorithm
Get the input type restriction used for negotiating the data query.

Specified by:
getInputTypeRestriction in interface Algorithm
Specified by:
getInputTypeRestriction in class AbstractAlgorithm<OutlierResult>
Returns:
Type restriction

getLogger

protected Logging getLogger()
Description copied from class: AbstractAlgorithm
Get the (STATIC) logger for this class.

Specified by:
getLogger in class AbstractAlgorithm<OutlierResult>
Returns:
the static logger

Release 0.4.0 (2011-09-20_1324)