cc.mallet.classify
Class MaxEntGETrainer

java.lang.Object
  extended by cc.mallet.classify.ClassifierTrainer<MaxEnt>
      extended by cc.mallet.classify.MaxEntGETrainer
All Implemented Interfaces:
Boostable, ClassifierTrainer.ByOptimization<MaxEnt>, java.io.Serializable

public class MaxEntGETrainer
extends ClassifierTrainer<MaxEnt>
implements ClassifierTrainer.ByOptimization<MaxEnt>, Boostable, java.io.Serializable

Training of MaxEnt models with labeled features using Generalized Expectation Criteria. Based on: "Learning from Labeled Features using Generalized Expectation Criteria" Gregory Druck, Gideon Mann, Andrew McCallum SIGIR 2008

Author:
Gregory Druck gdruck@cs.umass.edu Better explanations of parameters is given in MaxEntOptimizableByGE
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class cc.mallet.classify.ClassifierTrainer
ClassifierTrainer.ByActiveLearning<C extends Classifier>, ClassifierTrainer.ByIncrements<C extends Classifier>, ClassifierTrainer.ByInstanceIncrements<C extends Classifier>, ClassifierTrainer.ByOptimization<C extends Classifier>, ClassifierTrainer.Factory<CT extends ClassifierTrainer<? extends Classifier>>
 
Field Summary
 
Fields inherited from class cc.mallet.classify.ClassifierTrainer
finishedTraining, validationSet
 
Constructor Summary
MaxEntGETrainer()
           
MaxEntGETrainer(java.util.HashMap<java.lang.Integer,double[]> constraints)
           
MaxEntGETrainer(java.util.HashMap<java.lang.Integer,double[]> constraints, MaxEnt classifier)
           
 
Method Summary
 MaxEnt getClassifier()
           
 int getIteration()
           
 Optimizable getOptimizable()
           
 Optimizer getOptimizer()
           
 void setConstraintsFile(java.lang.String filename)
           
 void setGaussianPriorVariance(double variance)
           
 void setNumIterations(int i)
          Specifies the maximum number of iterations to run during a single call to train or trainWithFeatureInduction.
 void setTemperature(double temp)
           
 MaxEnt train(InstanceList trainingList)
           
 MaxEnt train(InstanceList train, int numIterations)
           
 
Methods inherited from class cc.mallet.classify.ClassifierTrainer
getValidationInstances, isFinishedTraining, setValidationInstances
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MaxEntGETrainer

public MaxEntGETrainer()

MaxEntGETrainer

public MaxEntGETrainer(java.util.HashMap<java.lang.Integer,double[]> constraints)

MaxEntGETrainer

public MaxEntGETrainer(java.util.HashMap<java.lang.Integer,double[]> constraints,
                       MaxEnt classifier)
Method Detail

setConstraintsFile

public void setConstraintsFile(java.lang.String filename)

setTemperature

public void setTemperature(double temp)

setGaussianPriorVariance

public void setGaussianPriorVariance(double variance)

getClassifier

public MaxEnt getClassifier()
Specified by:
getClassifier in class ClassifierTrainer<MaxEnt>

getOptimizable

public Optimizable getOptimizable()

getOptimizer

public Optimizer getOptimizer()
Specified by:
getOptimizer in interface ClassifierTrainer.ByOptimization<MaxEnt>

setNumIterations

public void setNumIterations(int i)
Specifies the maximum number of iterations to run during a single call to train or trainWithFeatureInduction.


getIteration

public int getIteration()
Specified by:
getIteration in interface ClassifierTrainer.ByOptimization<MaxEnt>

train

public MaxEnt train(InstanceList trainingList)
Specified by:
train in class ClassifierTrainer<MaxEnt>

train

public MaxEnt train(InstanceList train,
                    int numIterations)
Specified by:
train in interface ClassifierTrainer.ByOptimization<MaxEnt>