be.ac.ulb.mlg.utils.measure.entropy
Class DirichletEntropy

java.lang.Object
  extended by be.ac.ulb.mlg.utils.measure.Entropy
      extended by be.ac.ulb.mlg.utils.measure.entropy.DirichletEntropy
All Implemented Interfaces:
Measure
Direct Known Subclasses:
SchurmannGrassbergerEntropy

public abstract class DirichletEntropy
extends Entropy

Abstract Dirichlet probability distribution for entropy estimator.


Field Summary
static double EULER_MASCHERONI
          The Euler-Mascheroni constant
 
Fields inherited from interface be.ac.ulb.mlg.utils.Measure
ERROR_VALUE
 
Constructor Summary
DirichletEntropy()
           
 
Method Summary
 double entropy(double[] frequencies, int distinctValues, int numberOfValues)
          Compute the entropy of a vector of values (non missing values (NaN))
 boolean hasNativeImplementation()
          Know if the measure owns a native implementation
 boolean requireDataTransformation()
          Know if the measure need to transform input data (input data are copied to be preserved)
 void transform(double[][] data)
          The transformation method called before measurement
 
Methods inherited from class be.ac.ulb.mlg.utils.measure.Entropy
entropy, jointEntropy, measure
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EULER_MASCHERONI

public static final double EULER_MASCHERONI
The Euler-Mascheroni constant

See Also:
Constant Field Values
Constructor Detail

DirichletEntropy

public DirichletEntropy()
Method Detail

entropy

public double entropy(double[] frequencies,
                      int distinctValues,
                      int numberOfValues)
Description copied from class: Entropy
Compute the entropy of a vector of values (non missing values (NaN))

Specified by:
entropy in class Entropy
Parameters:
frequencies - The occurrences array (of values)
distinctValues - The number of distinct values
numberOfValues - The number of values
Returns:
The pseudo count

hasNativeImplementation

public boolean hasNativeImplementation()
Description copied from interface: Measure
Know if the measure owns a native implementation

Specified by:
hasNativeImplementation in interface Measure
Overrides:
hasNativeImplementation in class Entropy
Returns:
True if the measure is also natively implemented

requireDataTransformation

public boolean requireDataTransformation()
Description copied from interface: Measure
Know if the measure need to transform input data (input data are copied to be preserved)

Specified by:
requireDataTransformation in interface Measure
Overrides:
requireDataTransformation in class Entropy
Returns:
True if the input data require some transformation

transform

public void transform(double[][] data)
Description copied from interface: Measure
The transformation method called before measurement

Specified by:
transform in interface Measure
Overrides:
transform in class Entropy
Parameters:
data - An input data vector to be measured