Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## de.jstacs.classifier.scoringFunctionBased
Class AbstractOptimizableFunction

    java.lang.Object
      de.jstacs.algorithms.optimization.DifferentiableFunction
          de.jstacs.classifier.scoringFunctionBased.OptimizableFunction
              de.jstacs.classifier.scoringFunctionBased.AbstractOptimizableFunction

All Implemented Interfaces:
  Function

Direct Known Subclasses:
  AbstractMultiThreadedOptimizableFunction

    public abstract class AbstractOptimizableFunction

extends OptimizableFunction

This class extends `OptimizableFunction` and implements some common methods.

Author:
  Jens Keilwagen

Nested Class Summary

Nested classes/interfaces inherited from class de.jstacs.classifier.scoringFunctionBased.OptimizableFunction
`OptimizableFunction.KindOfParameter`

Field Summary
`protected int` | `cl` The number of different classes.
`protected double[]` | `clazz` The class parameters.
`protected Sample[]` | `data` The data that is used to evaluate this function.
`protected boolean` | `freeParams` Indicates whether only the free parameters or all should be used.
`protected double[]` | `logClazz` The logarithm of the class parameters.
`protected boolean` | `norm` Indicates whether a normalization should be done or not.
`protected double[]` | `sum` The sums of the weighted data per class and additional the total weight sum.
`protected double[][]` | `weights` The weights for the data.

Constructor Summary
`protected` | `AbstractOptimizableFunction(Sample[] data, double[][] weights, boolean norm, boolean freeParams)` The constructor creates an instance using the given weighted data.

Method Summary
`Sample[]` | `getData()` Returns the data for each class used in this `OptimizableFunction`.
`double[]` | `getParameters(OptimizableFunction.KindOfParameter kind)` Returns some parameters that can be used for instance as start parameters.
`abstract void` | `getParameters(OptimizableFunction.KindOfParameter kind, double[] erg)` This method enables the user to get the parameters without creating a new array.
`double[][]` | `getSequenceWeights()` Returns the weights for each `Sequence` for each class used in this `OptimizableFunction`.
`void` | `setDataAndWeights(Sample[] data, double[][] weights)` This method sets the data set and the sequence weights to be used.

Methods inherited from class de.jstacs.classifier.scoringFunctionBased.OptimizableFunction
`reset, setParams`

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`

Field Detail

### data

    protected Sample[] data

  The data that is used to evaluate this function.

### weights

    protected double[][] weights

  The weights for the data.

  See Also:
    `data`

### clazz

    protected double[] clazz

  The class parameters.

### logClazz

    protected double[] logClazz

  The logarithm of the class parameters.

  See Also:
    `clazz`

### sum

    protected double[] sum

  The sums of the weighted data per class and additional the total weight sum.

  See Also:
    `data`, `weights`

### cl

    protected int cl

  The number of different classes.

### norm

    protected boolean norm

  Indicates whether a normalization should be done or not.

### freeParams

    protected boolean freeParams

  Indicates whether only the free parameters or all should be used.

Constructor Detail

### AbstractOptimizableFunction

    protected AbstractOptimizableFunction(Sample[] data,
                                          double[][] weights,
                                          boolean norm,
                                          boolean freeParams)
                                   throws IllegalArgumentException

  The constructor creates an instance using the given weighted data.

  Parameters:
    `data` - the data
    `weights` - the weights
    `norm` - the switch for using the normalization (division by the number of sequences)
    `freeParams` - the switch for using only the free parameters
  Throws:
    `IllegalArgumentException` - if the number of classes or the dimension of the weights is not correct

Method Detail

### setDataAndWeights

    public void setDataAndWeights(Sample[] data,
                                  double[][] weights)
                           throws IllegalArgumentException

  Description copied from class: `OptimizableFunction`
  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.

  Specified by:
    `setDataAndWeights` in class `OptimizableFunction`
  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

### getParameters

    public abstract void getParameters(OptimizableFunction.KindOfParameter kind,
                                       double[] erg)
                                throws Exception

  This method enables the user to get the parameters without creating a new array.

  Parameters:
    `kind` - the kind of the class parameters to be returned in `erg`
    `erg` - the array for the start parameters
  Throws:
    `Exception` - if the array is `null` or does not have the correct length
  See Also:
    `OptimizableFunction.getParameters(KindOfParameter)`

### getParameters

    public final double[] getParameters(OptimizableFunction.KindOfParameter kind)
                                 throws Exception

  Description copied from class: `OptimizableFunction`
  Returns some parameters that can be used for instance as start parameters.

  Specified by:
    `getParameters` in class `OptimizableFunction`
  Parameters:
    `kind` - the kind of the class parameters that will be returned
  Returns:
    some start parameters
  Throws:
    `Exception` - if something went wrong

### getData

    public Sample[] getData()

  Description copied from class: `OptimizableFunction`
  Returns the data for each class used in this `OptimizableFunction`.

  Specified by:
    `getData` in class `OptimizableFunction`
  Returns:
    the data for each class
  See Also:
    `OptimizableFunction.getSequenceWeights()`

### getSequenceWeights

    public double[][] getSequenceWeights()

  Description copied from class: `OptimizableFunction`
  Returns the weights for each `Sequence` for each class used in this `OptimizableFunction`.

  Specified by:
    `getSequenceWeights` in class `OptimizableFunction`
  Returns:
    the weights for each `Sequence` and each class
  See Also:
    `OptimizableFunction.getData()`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD