edu.stanford.nlp.classify
Class LogConditionalEqConstraintFunction

java.lang.Object
  extended by edu.stanford.nlp.optimization.AbstractCachingDiffFunction
      extended by edu.stanford.nlp.classify.LogConditionalEqConstraintFunction
All Implemented Interfaces:
DiffFunction, Function, HasInitial

public class LogConditionalEqConstraintFunction
extends AbstractCachingDiffFunction

Maximizes the conditional likelihood with a given prior. Constrains parameters for the same history to sum to 1 Adapted from LogConditionalObjectiveFunction

Author:
Kristina Toutanova

Field Summary
protected  int[][] data
           
static int HUBER_PRIOR
           
protected  int[] labels
           
static int NO_PRIOR
           
protected  int numClasses
           
protected  int numFeatures
           
protected  int[] numValues
           
static int QUADRATIC_PRIOR
           
static int QUARTIC_PRIOR
           
 
Fields inherited from class edu.stanford.nlp.optimization.AbstractCachingDiffFunction
derivative, value
 
Constructor Summary
LogConditionalEqConstraintFunction(int numFeatures, int numClasses, int[][] data, int[] labels)
           
LogConditionalEqConstraintFunction(int numFeatures, int numClasses, int[][] data, int[] labels, double sigma)
           
LogConditionalEqConstraintFunction(int numFeatures, int numClasses, int[][] data, int[] labels, int prior, double sigma, double epsilon)
           
 
Method Summary
protected  void calculate(double[] x1)
          Calculate the value at x and the derivative and save them in the respective fields
protected  Index createIndex()
          create an index for each parameter - the prior probs and the features with all of their values
 int domainDimension()
          Returns the number of dimensions in the function's domain
protected  int indexOf(int c)
           
protected  int indexOf(int f, int c, int val)
           
 double[] initial()
          use a random starting point uniform -1 1
 double[] priors(double[] x1)
           
 double[][][] to3D(double[] x1)
           
 
Methods inherited from class edu.stanford.nlp.optimization.AbstractCachingDiffFunction
clearCache, copy, derivativeAt, lastValue, setValue, valueAt
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NO_PRIOR

public static final int NO_PRIOR
See Also:
Constant Field Values

QUADRATIC_PRIOR

public static final int QUADRATIC_PRIOR
See Also:
Constant Field Values

HUBER_PRIOR

public static final int HUBER_PRIOR
See Also:
Constant Field Values

QUARTIC_PRIOR

public static final int QUARTIC_PRIOR
See Also:
Constant Field Values

numFeatures

protected int numFeatures

numClasses

protected int numClasses

data

protected int[][] data

labels

protected int[] labels

numValues

protected int[] numValues
Constructor Detail

LogConditionalEqConstraintFunction

public LogConditionalEqConstraintFunction(int numFeatures,
                                          int numClasses,
                                          int[][] data,
                                          int[] labels)

LogConditionalEqConstraintFunction

public LogConditionalEqConstraintFunction(int numFeatures,
                                          int numClasses,
                                          int[][] data,
                                          int[] labels,
                                          double sigma)

LogConditionalEqConstraintFunction

public LogConditionalEqConstraintFunction(int numFeatures,
                                          int numClasses,
                                          int[][] data,
                                          int[] labels,
                                          int prior,
                                          double sigma,
                                          double epsilon)
Method Detail

domainDimension

public int domainDimension()
Description copied from interface: Function
Returns the number of dimensions in the function's domain

Specified by:
domainDimension in interface Function
Specified by:
domainDimension in class AbstractCachingDiffFunction
Returns:
the number of domain dimensions

indexOf

protected int indexOf(int c)
Parameters:
c -
Returns:
the index of the prior for class c

indexOf

protected int indexOf(int f,
                      int c,
                      int val)

createIndex

protected Index createIndex()
create an index for each parameter - the prior probs and the features with all of their values

Returns:

to3D

public double[][][] to3D(double[] x1)

priors

public double[] priors(double[] x1)

calculate

protected void calculate(double[] x1)
Description copied from class: AbstractCachingDiffFunction
Calculate the value at x and the derivative and save them in the respective fields

Specified by:
calculate in class AbstractCachingDiffFunction

initial

public double[] initial()
use a random starting point uniform -1 1

Specified by:
initial in interface HasInitial
Overrides:
initial in class AbstractCachingDiffFunction
Returns:


Stanford NLP Group