gov.sandia.cognition.learning.algorithm.confidence
Class ConfidenceWeightedDiagonalDeviationProject

java.lang.Object
  extended by gov.sandia.cognition.util.AbstractCloneableSerializable
      extended by gov.sandia.cognition.learning.algorithm.AbstractBatchAndIncrementalLearner<InputOutputPair<? extends InputType,OutputType>,ResultType>
          extended by gov.sandia.cognition.learning.algorithm.AbstractSupervisedBatchAndIncrementalLearner<Vectorizable,Boolean,DiagonalConfidenceWeightedBinaryCategorizer>
              extended by gov.sandia.cognition.learning.algorithm.confidence.ConfidenceWeightedDiagonalDeviation
                  extended by gov.sandia.cognition.learning.algorithm.confidence.ConfidenceWeightedDiagonalDeviationProject
All Implemented Interfaces:
BatchAndIncrementalLearner<InputOutputPair<? extends Vectorizable,Boolean>,DiagonalConfidenceWeightedBinaryCategorizer>, BatchLearner<Collection<? extends InputOutputPair<? extends Vectorizable,Boolean>>,DiagonalConfidenceWeightedBinaryCategorizer>, IncrementalLearner<InputOutputPair<? extends Vectorizable,Boolean>,DiagonalConfidenceWeightedBinaryCategorizer>, SupervisedBatchAndIncrementalLearner<Vectorizable,Boolean,DiagonalConfidenceWeightedBinaryCategorizer>, SupervisedBatchLearner<Vectorizable,Boolean,DiagonalConfidenceWeightedBinaryCategorizer>, SupervisedIncrementalLearner<Vectorizable,Boolean,DiagonalConfidenceWeightedBinaryCategorizer>, CloneableSerializable, Serializable, Cloneable

@PublicationReference(author={"Koby Crammer","Mark Dredze","Fernando Pereira"},
                      title="Exact Convex Confidence-Weighted Learning",
                      year=2008,
                      type=Conference,
                      publication="Advances in Neural Information Processing Systems",
                      url="http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.169.3364")
public class ConfidenceWeightedDiagonalDeviationProject
extends ConfidenceWeightedDiagonalDeviation

An implementation of the Standard Deviation (Stdev) algorithm for learning a confidence-weighted categorizer. It updates only the diagonal of the covariance matrix, thus computing the variance for each dimension. This corresponds to the "Stdev-project" version.

Since:
3.3.0
Author:
Justin Basilico
See Also:
Serialized Form

Field Summary
 
Fields inherited from class gov.sandia.cognition.learning.algorithm.confidence.ConfidenceWeightedDiagonalDeviation
confidence, DEFAULT_CONFIDENCE, DEFAULT_DEFAULT_VARIANCE, defaultVariance, epsilon, phi, psi
 
Constructor Summary
ConfidenceWeightedDiagonalDeviationProject()
          Creates a new ConfidenceWeightedDiagonalDeviationProject with default parameters.
ConfidenceWeightedDiagonalDeviationProject(double confidence, double defaultVariance)
          Creates a new ConfidenceWeightedDiagonalDeviationProject with the given parameters.
 
Method Summary
 void update(DiagonalConfidenceWeightedBinaryCategorizer target, Vector input, boolean label)
          Updates the target using the given input and associated label.
 
Methods inherited from class gov.sandia.cognition.learning.algorithm.confidence.ConfidenceWeightedDiagonalDeviation
createInitialLearnedObject, getConfidence, getDefaultVariance, setConfidence, setDefaultVariance, update
 
Methods inherited from class gov.sandia.cognition.learning.algorithm.AbstractSupervisedBatchAndIncrementalLearner
update
 
Methods inherited from class gov.sandia.cognition.learning.algorithm.AbstractBatchAndIncrementalLearner
clone, learn, learn, update
 
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.algorithm.BatchAndIncrementalLearner
learn
 
Methods inherited from interface gov.sandia.cognition.learning.algorithm.BatchLearner
learn
 
Methods inherited from interface gov.sandia.cognition.learning.algorithm.IncrementalLearner
update
 
Methods inherited from interface gov.sandia.cognition.util.CloneableSerializable
clone
 

Constructor Detail

ConfidenceWeightedDiagonalDeviationProject

public ConfidenceWeightedDiagonalDeviationProject()
Creates a new ConfidenceWeightedDiagonalDeviationProject with default parameters.


ConfidenceWeightedDiagonalDeviationProject

public ConfidenceWeightedDiagonalDeviationProject(double confidence,
                                                  double defaultVariance)
Creates a new ConfidenceWeightedDiagonalDeviationProject with the given parameters.

Parameters:
confidence - The confidence to use. Must be in [0, 1].
defaultVariance - The default value to initialize the covariance matrix to.
Method Detail

update

public void update(DiagonalConfidenceWeightedBinaryCategorizer target,
                   Vector input,
                   boolean label)
Description copied from class: ConfidenceWeightedDiagonalDeviation
Updates the target using the given input and associated label.

Overrides:
update in class ConfidenceWeightedDiagonalDeviation
Parameters:
target - The target to update.
input - The supervised input value.
label - The output label associated with the input.