de.jstacs.classifiers.differentiableSequenceScoreBased
Class OptimizableFunction

java.lang.Object
  extended by de.jstacs.algorithms.optimization.DifferentiableFunction
      extended by de.jstacs.classifiers.differentiableSequenceScoreBased.OptimizableFunction
All Implemented Interfaces:
Function
Direct Known Subclasses:
AbstractOptimizableFunction

public abstract class OptimizableFunction
extends DifferentiableFunction

This is the main function for the ScoreClassifier.

Author:
Jens Keilwagen
See Also:
Optimizer

Nested Class Summary
static class OptimizableFunction.KindOfParameter
          This enum defines the kinds of parameters that can be returned by the method getParameters(KindOfParameter).
 
Constructor Summary
OptimizableFunction()
           
 
Method Summary
abstract  DataSet[] getData()
          Returns the data for each class used in this OptimizableFunction.
abstract  double[] getParameters(OptimizableFunction.KindOfParameter kind)
          Returns some parameters that can be used for instance as start parameters.
abstract  double[][] getSequenceWeights()
          Returns the weights for each Sequence for each class used in this OptimizableFunction.
abstract  void reset()
          Resets the all objects and pre-computed values.
abstract  void setDataAndWeights(DataSet[] data, double[][] weights)
          This method sets the data set and the sequence weights to be used.
abstract  void setParams(double[] current)
          Sets the current values as parameters.
 
Methods inherited from class de.jstacs.algorithms.optimization.DifferentiableFunction
evaluateGradientOfFunction, findOneDimensionalMin
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.jstacs.algorithms.optimization.Function
evaluateFunction, getDimensionOfScope
 

Constructor Detail

OptimizableFunction

public OptimizableFunction()
Method Detail

getParameters

public abstract double[] getParameters(OptimizableFunction.KindOfParameter kind)
                                throws Exception
Returns some parameters that can be used for instance as start parameters.

Parameters:
kind - the kind of the class parameters that will be returned
Returns:
some start parameters
Throws:
Exception - if something went wrong

setParams

public abstract void setParams(double[] current)
                        throws DimensionException
Sets the current values as parameters.

Parameters:
current - the current values
Throws:
DimensionException - if the dimension of the current values does not match with the dimension of the internal parameters

reset

public abstract void reset()
                    throws Exception
Resets the all objects and pre-computed values.

Throws:
Exception - if something went wrong

getData

public abstract DataSet[] getData()
Returns the data for each class used in this OptimizableFunction.

Returns:
the data for each class
See Also:
getSequenceWeights()

getSequenceWeights

public abstract double[][] getSequenceWeights()
Returns the weights for each Sequence for each class used in this OptimizableFunction.

Returns:
the weights for each Sequence and each class
See Also:
getData()

setDataAndWeights

public abstract void setDataAndWeights(DataSet[] data,
                                       double[][] weights)
                                throws IllegalArgumentException
This method sets the data set and the sequence weights to be used. It also allows to do further preparation for the computation on this data.

Parameters:
data - the data sets
weights - the sequence weights for each sequence in each data set
Throws:
IllegalArgumentException - if the data or the weights can not be used