weka.estimators
Class MahalanobisEstimator

java.lang.Object
  extended byweka.estimators.MahalanobisEstimator
All Implemented Interfaces:
Estimator, java.io.Serializable

public class MahalanobisEstimator
extends java.lang.Object
implements Estimator

Simple probability estimator that places a single normal distribution over the observed values.

Version:
$Revision: 1.4 $
Author:
Len Trigg (trigg@cs.waikato.ac.nz)
See Also:
Serialized Form

Field Summary
private  double m_ConstDelta
          The difference between the conditioning value and the conditioning mean
private  Matrix m_CovarianceInverse
          The inverse of the covariance matrix
private  double m_Determinant
          The determinant of the covariance matrix
private  double m_ValueMean
          The mean of the values
private static double TWO_PI
          2 * PI
 
Constructor Summary
MahalanobisEstimator(Matrix covariance, double constDelta, double valueMean)
          Constructor
 
Method Summary
 void addValue(double data, double weight)
          Add a new data value to the current estimator.
 double getProbability(double data)
          Get a probability estimate for a value
static void main(java.lang.String[] argv)
          Main method for testing this class.
private  double normalKernel(double x)
          Returns value for normal kernel
 java.lang.String toString()
          Display a representation of this estimator
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

m_CovarianceInverse

private Matrix m_CovarianceInverse
The inverse of the covariance matrix


m_Determinant

private double m_Determinant
The determinant of the covariance matrix


m_ConstDelta

private double m_ConstDelta
The difference between the conditioning value and the conditioning mean


m_ValueMean

private double m_ValueMean
The mean of the values


TWO_PI

private static double TWO_PI
2 * PI

Constructor Detail

MahalanobisEstimator

public MahalanobisEstimator(Matrix covariance,
                            double constDelta,
                            double valueMean)
Constructor

Method Detail

normalKernel

private double normalKernel(double x)
Returns value for normal kernel

Parameters:
x - the argument to the kernel function
Returns:
the value for a normal kernel

addValue

public void addValue(double data,
                     double weight)
Add a new data value to the current estimator. Does nothing because the data is provided in the constructor.

Specified by:
addValue in interface Estimator
Parameters:
data - the new data value
weight - the weight assigned to the data value

getProbability

public double getProbability(double data)
Get a probability estimate for a value

Specified by:
getProbability in interface Estimator
Parameters:
data - the value to estimate the probability of
Returns:
the estimated probability of the supplied value

toString

public java.lang.String toString()
Display a representation of this estimator


main

public static void main(java.lang.String[] argv)
Main method for testing this class.

Parameters:
argv - should contain a sequence of numeric values