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.sequenceScores.statisticalModels.differentiable.mixture.motif
Class UniformDurationDiffSM

    java.lang.Object
      de.jstacs.sequenceScores.differentiable.AbstractDifferentiableSequenceScore
          de.jstacs.sequenceScores.statisticalModels.differentiable.AbstractDifferentiableStatisticalModel
              de.jstacs.sequenceScores.statisticalModels.differentiable.mixture.motif.PositionDiffSM
                  de.jstacs.sequenceScores.statisticalModels.differentiable.mixture.motif.DurationDiffSM
                      de.jstacs.sequenceScores.statisticalModels.differentiable.mixture.motif.UniformDurationDiffSM

All Implemented Interfaces:
  DifferentiableSequenceScore, SequenceScore, DifferentiableStatisticalModel, StatisticalModel, Storable, Cloneable

    public final class UniformDurationDiffSM

extends DurationDiffSM

This scoring function implements a uniform distribution for positions. The class has no parameters, so the distribution does not change and it is possible to save parameters in an optimization.

Field Summary

Fields inherited from class de.jstacs.sequenceScores.statisticalModels.differentiable.mixture.motif.DurationDiffSM
`delta, ess, max, min`

Fields inherited from class de.jstacs.sequenceScores.statisticalModels.differentiable.mixture.motif.PositionDiffSM
`internal`

Fields inherited from class de.jstacs.sequenceScores.differentiable.AbstractDifferentiableSequenceScore
`alphabets, length, r`

Fields inherited from interface de.jstacs.sequenceScores.differentiable.DifferentiableSequenceScore
`UNKNOWN`

Constructor Summary
`UniformDurationDiffSM(int min, int max)` This is the main constructor that creates an instance for the given interval.
`UniformDurationDiffSM(int min, int max, double ess)` This is the main constructor that creates an instance for the given interval and given ESS.
`UniformDurationDiffSM(StringBuffer b)` This is the constructor for `Storable`.

Method Summary
`void` | `addGradientOfLogPriorTerm(double[] grad, int start)` This method computes the gradient of `DifferentiableStatisticalModel.getLogPriorTerm()` for each parameter of this model.
`void` | `adjust(int[] length, double[] weight)` This method adjust the parameter based on the given statistic.
`void` | `drawPosition(int[] positions)` This method draws from the distribution and returns the result in the given array.
`double[]` | `getCurrentParameterValues()` Returns a `double` array of dimension `DifferentiableSequenceScore.getNumberOfParameters()` containing the current parameter values.
`String` | `getInstanceName()` Should return a short instance name such as iMM(0), BN(2), ...
`double` | `getLogPriorTerm()` This method computes a value that is proportional to ``DifferentiableStatisticalModel.getESS()` * `DifferentiableStatisticalModel.getLogNormalizationConstant()` + Math.log( prior )` where `prior` is the prior for the parameters of this model.
`double` | `getLogScore(int... values)` This method enables the user to get the log-score without using a sequence object.
`double` | `getLogScoreAndPartialDerivation(IntList indices, DoubleList partialDer, int... values)` This method enables the user to get the log-score and the partial derivations without using a sequence object.
`int` | `getNumberOfParameters()` Returns the number of parameters in this `DifferentiableSequenceScore`.
`protected String` | `getRNotation(String distributionName)` This method returns the distribution in R notation.
`void` | `initializeFunction(int index, boolean meila, DataSet[] data, double[][] weights)` This method creates the underlying structure of the `DifferentiableSequenceScore`.
`void` | `initializeFunctionRandomly(boolean freeParams)` This method initializes the `DifferentiableSequenceScore` randomly.
`void` | `initializeUniformly()` This method set special parameters that lead to an uniform distribution.
`boolean` | `isInitialized()` This method can be used to determine whether the instance is initialized.
`boolean` | `isNormalized()` This method indicates whether the implemented score is already normalized to 1 or not.
`void` | `setParameters(double[] params, int start)` This method sets the internal parameters to the values of `params` between `start` and `start + `DifferentiableSequenceScore.getNumberOfParameters()` - 1`

Methods inherited from class de.jstacs.sequenceScores.statisticalModels.differentiable.mixture.motif.DurationDiffSM
`fromXML, getESS, getLogNormalizationConstant, getLogPartialNormalizationConstant, getMax, getMin, getNumberOfPossibilities, getSizeOfEventSpaceForRandomVariablesOfParameter, isPossible, modify, next, reset, toString, toXML`

Methods inherited from class de.jstacs.sequenceScores.statisticalModels.differentiable.mixture.motif.PositionDiffSM
`clone, getInternalPosition, getLogScoreAndPartialDerivation, getLogScoreAndPartialDerivationForInternal, getLogScoreFor, getLogScoreForInternal, getValuesFromSequence`

Methods inherited from class de.jstacs.sequenceScores.statisticalModels.differentiable.AbstractDifferentiableStatisticalModel
`emitDataSet, getInitialClassParam, getLogProbFor, getLogProbFor, getLogProbFor, getLogScoreFor, getLogScoreFor, getMaximalMarkovOrder, isNormalized`

Methods inherited from class de.jstacs.sequenceScores.differentiable.AbstractDifferentiableSequenceScore
`getAlphabetContainer, getCharacteristics, getLength, getLogScoreAndPartialDerivation, getLogScoreAndPartialDerivation, getLogScoreFor, getLogScoreFor, getNumberOfRecommendedStarts, getNumberOfStarts, getNumericalCharacteristics`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface de.jstacs.sequenceScores.differentiable.DifferentiableSequenceScore
`getLogScoreAndPartialDerivation, getLogScoreAndPartialDerivation, getNumberOfRecommendedStarts`

Methods inherited from interface de.jstacs.sequenceScores.SequenceScore
`getAlphabetContainer, getCharacteristics, getLength, getLogScoreFor, getLogScoreFor, getNumericalCharacteristics`

Constructor Detail

### UniformDurationDiffSM

    public UniformDurationDiffSM(int min,
                                 int max)

  This is the main constructor that creates an instance for the given interval.

  Parameters:
    `min` - the minimal value
    `max` - the maximal value

### UniformDurationDiffSM

    public UniformDurationDiffSM(int min,
                                 int max,
                                 double ess)

  This is the main constructor that creates an instance for the given interval and given ESS.

  Parameters:
    `min` - the minimal value
    `max` - the maximal value
    `ess` - the equivalent sample size (used for the class probability)

### UniformDurationDiffSM

    public UniformDurationDiffSM(StringBuffer b)
                          throws NonParsableException

  This is the constructor for `Storable`. Creates a new `UniformDurationDiffSM` out of a `StringBuffer`.

  Parameters:
    `b` - the XML representation as `StringBuffer`
  Throws:
    `NonParsableException` - if the XML representation could not be parsed

Method Detail

### getInstanceName

    public String getInstanceName()

  Description copied from interface: `SequenceScore`
  Should return a short instance name such as iMM(0), BN(2), ...

  Returns:
    a short instance name

### getNumberOfParameters

    public int getNumberOfParameters()

  Description copied from interface: `DifferentiableSequenceScore`
  Returns the number of parameters in this `DifferentiableSequenceScore`. If the number of parameters is not known yet, the method returns `DifferentiableSequenceScore.UNKNOWN`.

  Returns:
    the number of parameters in this `DifferentiableSequenceScore`
  See Also:
    `DifferentiableSequenceScore.UNKNOWN`

### setParameters

    public void setParameters(double[] params,
                              int start)

  Description copied from interface: `DifferentiableSequenceScore`
  This method sets the internal parameters to the values of `params` between `start` and `start + `DifferentiableSequenceScore.getNumberOfParameters()` - 1`

  Parameters:
    `params` - the new parameters
    `start` - the start index in `params`

### initializeFunction

    public void initializeFunction(int index,
                                   boolean meila,
                                   DataSet[] data,
                                   double[][] weights)

  Description copied from interface: `DifferentiableSequenceScore`
  This method creates the underlying structure of the `DifferentiableSequenceScore`.

  Parameters:
    `index` - the index of the class the `DifferentiableSequenceScore` models
    `meila` - indicates whether the (reduced) parameterization is used
    `data` - the samples
    `weights` - the weights of the sequences in the samples

### getRNotation

    protected String getRNotation(String distributionName)

  Description copied from class: `DurationDiffSM`
  This method returns the distribution in R notation.

  Specified by:
    `getRNotation` in class `DurationDiffSM`
  Parameters:
    `distributionName` - the name of the distribution, e.g., "p"
  Returns:
    the distribution in R notation
  See Also:
    `REnvironment`

### getLogPriorTerm

    public double getLogPriorTerm()

  Description copied from interface: `DifferentiableStatisticalModel`
  This method computes a value that is proportional to

  ``DifferentiableStatisticalModel.getESS()` * `DifferentiableStatisticalModel.getLogNormalizationConstant()` + Math.log( prior )`

  where `prior` is the prior for the parameters of this model.

  Returns:
    a value that is proportional to ``DifferentiableStatisticalModel.getESS()` * `DifferentiableStatisticalModel.getLogNormalizationConstant()` + Math.log( prior ).`
  See Also:
    `DifferentiableStatisticalModel.getESS()`, `DifferentiableStatisticalModel.getLogNormalizationConstant()`

### addGradientOfLogPriorTerm

    public void addGradientOfLogPriorTerm(double[] grad,
                                          int start)

  Description copied from interface: `DifferentiableStatisticalModel`
  This method computes the gradient of `DifferentiableStatisticalModel.getLogPriorTerm()` for each parameter of this model. The results are added to the array `grad` beginning at index `start`.

  Parameters:
    `grad` - the array of gradients
    `start` - the start index in the `grad` array, where the partial derivations for the parameters of this models shall be entered
  See Also:
    `DifferentiableStatisticalModel.getLogPriorTerm()`

### getLogScore

    public double getLogScore(int... values)

  Description copied from class: `PositionDiffSM`
  This method enables the user to get the log-score without using a sequence object.

  Specified by:
    `getLogScore` in class `PositionDiffSM`
  Parameters:
    `values` - the values
  Returns:
    the score

### getLogScoreAndPartialDerivation

    public double getLogScoreAndPartialDerivation(IntList indices,
                                                  DoubleList partialDer,
                                                  int... values)

  Description copied from class: `PositionDiffSM`
  This method enables the user to get the log-score and the partial derivations without using a sequence object.

  Specified by:
    `getLogScoreAndPartialDerivation` in class `PositionDiffSM`
  Parameters:
    `indices` - a list for the indices of the parameters
    `partialDer` - a list of the partial derivations
    `values` - the values
  Returns:
    the score

### drawPosition

    public void drawPosition(int[] positions)

  This method draws from the distribution and returns the result in the given array.

  Parameters:
    `positions` - an array for the result.

### getCurrentParameterValues

    public double[] getCurrentParameterValues()
                                       throws Exception

  Description copied from interface: `DifferentiableSequenceScore`
  Returns a `double` array of dimension `DifferentiableSequenceScore.getNumberOfParameters()` containing the current parameter values. If one likes to use these parameters to start an optimization it is highly recommended to invoke `DifferentiableSequenceScore.initializeFunction(int, boolean, DataSet[], double[][])` before. After an optimization this method can be used to get the current parameter values.

  Returns:
    the current parameter values
  Throws:
    `Exception` - if no parameters exist (yet)

### isInitialized

    public boolean isInitialized()

  Description copied from interface: `SequenceScore`
  This method can be used to determine whether the instance is initialized. If the instance is initialized you should be able to invoke `SequenceScore.getLogScoreFor(Sequence)`.

  Returns:
    `true` if the instance is initialized, `false` otherwise

### isNormalized

    public boolean isNormalized()

  Description copied from interface: `DifferentiableStatisticalModel`
  This method indicates whether the implemented score is already normalized to 1 or not. The standard implementation returns `false`.

  Specified by:
    `isNormalized` in interface `DifferentiableStatisticalModel`
  Overrides:
    `isNormalized` in class `AbstractDifferentiableStatisticalModel`
  Returns:
    `true` if the implemented score is already normalized to 1, `false` otherwise

### initializeFunctionRandomly

    public void initializeFunctionRandomly(boolean freeParams)
                                    throws Exception

  Description copied from interface: `DifferentiableSequenceScore`
  This method initializes the `DifferentiableSequenceScore` randomly. It has to create the underlying structure of the `DifferentiableSequenceScore`.

  Parameters:
    `freeParams` - indicates whether the (reduced) parameterization is used
  Throws:
    `Exception` - if something went wrong

### initializeUniformly

    public void initializeUniformly()

  Description copied from class: `DurationDiffSM`
  This method set special parameters that lead to an uniform distribution.

  Specified by:
    `initializeUniformly` in class `DurationDiffSM`

### adjust

    public void adjust(int[] length,
                       double[] weight)

  Description copied from class: `DurationDiffSM`
  This method adjust the parameter based on the given statistic.

  Specified by:
    `adjust` in class `DurationDiffSM`
  Parameters:
    `length` - an array containing length values
    `weight` - an array containing corresponding weight values

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