gov.sandia.cognition.learning.function.categorization
Class FisherLinearDiscriminantBinaryCategorizer

java.lang.Object
  extended by gov.sandia.cognition.util.AbstractCloneableSerializable
      extended by gov.sandia.cognition.learning.function.categorization.AbstractBinaryCategorizer<InputType>
          extended by gov.sandia.cognition.learning.function.categorization.AbstractDiscriminantBinaryCategorizer<InputType>
              extended by gov.sandia.cognition.learning.function.categorization.AbstractThresholdBinaryCategorizer<InputType>
                  extended by gov.sandia.cognition.learning.function.categorization.ScalarFunctionToBinaryCategorizerAdapter<Vector>
                      extended by gov.sandia.cognition.learning.function.categorization.FisherLinearDiscriminantBinaryCategorizer
All Implemented Interfaces:
Evaluator<Vector,Boolean>, BinaryCategorizer<Vector>, Categorizer<Vector,Boolean>, DiscriminantBinaryCategorizer<Vector>, DiscriminantCategorizer<Vector,Boolean,Double>, ThresholdBinaryCategorizer<Vector>, CloneableSerializable, Serializable, Cloneable

@PublicationReference(author="Wikipedia",
                      title="Linear discriminant analysis",
                      type=WebPage,
                      year=2009,
                      url="http://en.wikipedia.org/wiki/Linear_discriminant_analysis#Fisher.27s_linear_discriminant")
public class FisherLinearDiscriminantBinaryCategorizer
extends ScalarFunctionToBinaryCategorizerAdapter<Vector>

A Fisher Linear Discriminant classifier, which creates an optimal linear separating plane between two Gaussian classes of different covariances.

Since:
2.0
Author:
Kevin R. Dixon
See Also:
Serialized Form

Nested Class Summary
static class FisherLinearDiscriminantBinaryCategorizer.ClosedFormSolver
          This class implements a closed form solver for the Fisher linear discriminant binary categorizer.
 
Field Summary
 
Fields inherited from class gov.sandia.cognition.learning.function.categorization.ScalarFunctionToBinaryCategorizerAdapter
evaluator
 
Fields inherited from class gov.sandia.cognition.learning.function.categorization.AbstractThresholdBinaryCategorizer
DEFAULT_THRESHOLD
 
Fields inherited from class gov.sandia.cognition.learning.function.categorization.AbstractBinaryCategorizer
BINARY_CATEGORIES
 
Constructor Summary
FisherLinearDiscriminantBinaryCategorizer()
          Default constructor
FisherLinearDiscriminantBinaryCategorizer(LinearDiscriminant discriminant, double threshold)
          Creates a new of FisherLinearDiscriminantBinaryCategorizer.
FisherLinearDiscriminantBinaryCategorizer(Vector weightVector, double threshold)
          Creates a new of FisherLinearDiscriminantBinaryCategorizer.
 
Method Summary
 FisherLinearDiscriminantBinaryCategorizer clone()
          This makes public the clone method on the Object class and removes the exception that it throws.
 
Methods inherited from class gov.sandia.cognition.learning.function.categorization.ScalarFunctionToBinaryCategorizerAdapter
evaluateWithoutThreshold, getEvaluator, setEvaluator
 
Methods inherited from class gov.sandia.cognition.learning.function.categorization.AbstractThresholdBinaryCategorizer
evaluateAsDouble, getThreshold, setThreshold
 
Methods inherited from class gov.sandia.cognition.learning.function.categorization.AbstractDiscriminantBinaryCategorizer
evaluate, evaluateWithDiscriminant
 
Methods inherited from class gov.sandia.cognition.learning.function.categorization.AbstractBinaryCategorizer
getCategories
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface gov.sandia.cognition.learning.function.categorization.DiscriminantCategorizer
evaluateWithDiscriminant
 
Methods inherited from interface gov.sandia.cognition.learning.function.categorization.Categorizer
getCategories
 
Methods inherited from interface gov.sandia.cognition.evaluator.Evaluator
evaluate
 

Constructor Detail

FisherLinearDiscriminantBinaryCategorizer

public FisherLinearDiscriminantBinaryCategorizer()
Default constructor


FisherLinearDiscriminantBinaryCategorizer

public FisherLinearDiscriminantBinaryCategorizer(Vector weightVector,
                                                 double threshold)
Creates a new of FisherLinearDiscriminantBinaryCategorizer.

Parameters:
weightVector - The weight vector.
threshold - The threshold.

FisherLinearDiscriminantBinaryCategorizer

public FisherLinearDiscriminantBinaryCategorizer(LinearDiscriminant discriminant,
                                                 double threshold)
Creates a new of FisherLinearDiscriminantBinaryCategorizer.

Parameters:
discriminant - The linear discriminant to use.
threshold - The threshold.
Method Detail

clone

public FisherLinearDiscriminantBinaryCategorizer clone()
Description copied from class: AbstractCloneableSerializable
This makes public the clone method on the Object class and removes the exception that it throws. Its default behavior is to automatically create a clone of the exact type of object that the clone is called on and to copy all primitives but to keep all references, which means it is a shallow copy. Extensions of this class may want to override this method (but call super.clone() to implement a "smart copy". That is, to target the most common use case for creating a copy of the object. Because of the default behavior being a shallow copy, extending classes only need to handle fields that need to have a deeper copy (or those that need to be reset). Some of the methods in ObjectUtil may be helpful in implementing a custom clone method. Note: The contract of this method is that you must use super.clone() as the basis for your implementation.

Specified by:
clone in interface CloneableSerializable
Overrides:
clone in class ScalarFunctionToBinaryCategorizerAdapter<Vector>
Returns:
A clone of this object.