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.trainable.hmm.transitions.elements
Class DistanceBasedScaledTransitionElement

    java.lang.Object
      de.jstacs.sequenceScores.statisticalModels.trainable.hmm.transitions.BasicHigherOrderTransition.AbstractTransitionElement
          de.jstacs.sequenceScores.statisticalModels.trainable.hmm.transitions.elements.BasicTransitionElement
              de.jstacs.sequenceScores.statisticalModels.trainable.hmm.transitions.elements.ReferenceBasedTransitionElement
                  de.jstacs.sequenceScores.statisticalModels.trainable.hmm.transitions.elements.DistanceBasedScaledTransitionElement

All Implemented Interfaces:
  Storable, Cloneable

    public class DistanceBasedScaledTransitionElement

extends ReferenceBasedTransitionElement

Distance-based scaled transition element for an HMM with distance-scaled transition matrices (DSHMM).

Author:
  Michael Seifert

Field Summary
`protected String` | `arrowOptions` The Graphviz options for drawing the arrows.
`protected Hashtable<Sequence,double[]>` | `diagonalWeights` Contains the single epsilons of the diagonal elements required for estimating the self-transition probability.
`protected double` | `scalingFactor` The maximal scaling factor.
`protected double[]` | `statisticsTransitionProb` Represents the summarized epsilons required for estimating the transition probabilities from the `context`.

Fields inherited from class de.jstacs.sequenceScores.statisticalModels.trainable.hmm.transitions.elements.ReferenceBasedTransitionElement
`annotationID, diagElement, ess, probabilities`

Fields inherited from class de.jstacs.sequenceScores.statisticalModels.trainable.hmm.transitions.BasicHigherOrderTransition.AbstractTransitionElement
`context, descendants, hyperParameters, logNorm, parameters, states, statistic`

Constructor Summary
`DistanceBasedScaledTransitionElement(int[] context, int[] states, double[] probabilities, double ess, double scalingFactor, String annotationID)` Creates an object representing the transition probabilities of a Hidden Markov TrainableStatisticalModel with scaled transition matrices (SHMM) for the given context.
`DistanceBasedScaledTransitionElement(int[] context, int[] states, double[] probabilities, double ess, double scalingFactor, String annotationID, double[] weight)` Creates an object representing the transition probabilities of a Hidden Markov TrainableStatisticalModel with scaled transition matrices (SHMM) for the given context.
`DistanceBasedScaledTransitionElement(StringBuffer xml)` Extracts a distance-base scaled transition element from XML.

Method Summary
`void` | `addToStatistic(int childIdx, double weight, Sequence sequence, int sequencePosition)` This method adds a given weight to the sufficient statistic for the parameters.
`protected void` | `appendFurtherInformation(StringBuffer xml)` This method appends further information to the XML representation.
`protected void` | `appendTransitions(StringBuffer res, String contextNodeRepresentation, NumberFormat nf, String arrowOption, boolean graphical)` This method appends all edges of the transition element to a given Graphviz representation.
`DistanceBasedScaledTransitionElement` | `clone()` Clones the object.
`void` | `estimateFromStatistic()` This method estimates the parameters from the sufficient statistic.
`protected void` | `extractFurtherInformation(StringBuffer xml)` This method extracts further information from the XML representation.
`protected double` | `getIndex(int pos, Sequence seq)` Returns the distance integrated into the transition from `pos - 1` to `pos` in sequences `seq`.
`double` | `getLogScoreFor(int state, Sequence sequence, int sequencePosition)` This method returns the score for the transition from the current context to the state with index `index`.
`protected String` | `getXMLTag()` This method returns the xml tag used in `BasicHigherOrderTransition.AbstractTransitionElement.toXML()`.
`protected void` | `init()` Basic initialization.
`void` | `resetStatistic()` This method resets the sufficient statistic for the parameters.
`String` | `toString(String[] stateNames)` This method returns a `String` representation of the transition element using the given names of the states.

Methods inherited from class de.jstacs.sequenceScores.statisticalModels.trainable.hmm.transitions.elements.ReferenceBasedTransitionElement
`determineDiagonalElement, getLogGammaScoreFromStatistic, getLogPriorTerm, initializeRandomly, precompute`

Methods inherited from class de.jstacs.sequenceScores.statisticalModels.trainable.hmm.transitions.BasicHigherOrderTransition.AbstractTransitionElement
`appendGraphvizDescription, drawParametersFromStatistic, getArrowOption, getChild, getContext, getDescendant, getGraphvizEdgeWeight, getLabel, getNextContext, getNumberOfChildren, getNumberOfParameters, joinStatistics, setIndexOfDescendantTransitionElement, setParameters, toString, toXML`

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

Field Detail

### arrowOptions

    protected String arrowOptions

  The Graphviz options for drawing the arrows.

### scalingFactor

    protected double scalingFactor

  The maximal scaling factor.

### statisticsTransitionProb

    protected double[] statisticsTransitionProb

  Represents the summarized epsilons required for estimating the transition probabilities from the `context`.
  - statisticsTransitionProb[j]: epsilon( context, states[j] )
  - No pseudocounts included.

### diagonalWeights

    protected Hashtable<Sequence,double[]> diagonalWeights

  Contains the single epsilons of the diagonal elements required for estimating the self-transition probability.
  - reset should not be necessary after each training step

Constructor Detail

### DistanceBasedScaledTransitionElement

    public DistanceBasedScaledTransitionElement(int[] context,
                                                int[] states,
                                                double[] probabilities,
                                                double ess,
                                                double scalingFactor,
                                                String annotationID)

  Creates an object representing the transition probabilities of a Hidden Markov TrainableStatisticalModel with scaled transition matrices (SHMM) for the given context.

  Parameters:
    `context` - context of states
    `states` - states that can be reached from the context
    `probabilities` - transition probabilities from the context to the states
    `ess` - the equivalent sample size (ess)
    `scalingFactor` - scaling factor
    `annotationID` - identifier for decoding transition classes
  See Also:
    `DistanceBasedScaledTransitionElement(int[], int[], double[], double, double, String, double[])`

### DistanceBasedScaledTransitionElement

    public DistanceBasedScaledTransitionElement(int[] context,
                                                int[] states,
                                                double[] probabilities,
                                                double ess,
                                                double scalingFactor,
                                                String annotationID,
                                                double[] weight)

  Creates an object representing the transition probabilities of a Hidden Markov TrainableStatisticalModel with scaled transition matrices (SHMM) for the given context.

  Parameters:
    `context` - context of states
    `states` - states that can be reached from the context
    `probabilities` - transition probabilities from the context to the states
    `ess` - the equivalent sample size (ess)
    `scalingFactor` - scaling factor
    `annotationID` - identifier for decoding transition classes
    `weight` - the weight for plotting the edge in Graphviz, enables to modify the edge length, larger weights imply shorter edges (default: 1)

### DistanceBasedScaledTransitionElement

    public DistanceBasedScaledTransitionElement(StringBuffer xml)
                                         throws NonParsableException

  Extracts a distance-base scaled transition element from XML.

  Parameters:
    `xml` - the XML-representation
  Throws:
    `NonParsableException` - if the representation could not be parsed

Method Detail

### init

    protected void init()

  Basic initialization.

  Overrides:
    `init` in class `ReferenceBasedTransitionElement`

### clone

    public DistanceBasedScaledTransitionElement clone()
                                               throws CloneNotSupportedException

  Clones the object.

  Overrides:
    `clone` in class `ReferenceBasedTransitionElement`
  Throws:
    `CloneNotSupportedException`

### getIndex

    protected double getIndex(int pos,
                              Sequence seq)

  Returns the distance integrated into the transition from `pos - 1` to `pos` in sequences `seq`.

  Parameters:
    `pos` - position in seq
    `seq` - sequences
  Returns:
    distance

### addToStatistic

    public void addToStatistic(int childIdx,
                               double weight,
                               Sequence sequence,
                               int sequencePosition)

  Description copied from class: `BasicHigherOrderTransition.AbstractTransitionElement`
  This method adds a given weight to the sufficient statistic for the parameters.

  Overrides:
    `addToStatistic` in class `BasicHigherOrderTransition.AbstractTransitionElement`
  Parameters:
    `childIdx` - the index of the descendant state
    `weight` - the weight to be added
    `sequence` - the sequence, which might be used to retrieve `SequenceAnnotation`
    `sequencePosition` - the position within the sequence
  See Also:
    `TransitionWithSufficientStatistic.addToStatistic(int, int, int, double, Sequence, int)`, `BasicHigherOrderTransition.AbstractTransitionElement.statistic`, `BasicHigherOrderTransition.AbstractTransitionElement.resetStatistic()`, `BasicHigherOrderTransition.AbstractTransitionElement.estimateFromStatistic()`, `BasicHigherOrderTransition.AbstractTransitionElement.drawParametersFromStatistic()`

### resetStatistic

    public void resetStatistic()

  Description copied from class: `BasicHigherOrderTransition.AbstractTransitionElement`
  This method resets the sufficient statistic for the parameters.

  Overrides:
    `resetStatistic` in class `BasicHigherOrderTransition.AbstractTransitionElement`
  See Also:
    `BasicHigherOrderTransition.AbstractTransitionElement.statistic`, `BasicHigherOrderTransition.AbstractTransitionElement.estimateFromStatistic()`, `BasicHigherOrderTransition.AbstractTransitionElement.drawParametersFromStatistic()`, `BasicHigherOrderTransition.AbstractTransitionElement.addToStatistic(int, double, Sequence, int)`, `TransitionWithSufficientStatistic.resetStatistic()`

### estimateFromStatistic

    public void estimateFromStatistic()

  Description copied from class: `BasicHigherOrderTransition.AbstractTransitionElement`
  This method estimates the parameters from the sufficient statistic.

  Overrides:
    `estimateFromStatistic` in class `BasicHigherOrderTransition.AbstractTransitionElement`
  See Also:
    `BasicHigherOrderTransition.AbstractTransitionElement.statistic`, `BasicHigherOrderTransition.AbstractTransitionElement.resetStatistic()`, `BasicHigherOrderTransition.AbstractTransitionElement.addToStatistic(int, double, Sequence, int)`, `TrainableTransition.estimateFromStatistic()`

### getLogScoreFor

    public double getLogScoreFor(int state,
                                 Sequence sequence,
                                 int sequencePosition)

  Description copied from class: `BasicHigherOrderTransition.AbstractTransitionElement`
  This method returns the score for the transition from the current context to the state with index `index`.

  Overrides:
    `getLogScoreFor` in class `BasicHigherOrderTransition.AbstractTransitionElement`
  Parameters:
    `state` - the index of the child
    `sequence` - the sequence, which might be used to retrieve `SequenceAnnotation`
    `sequencePosition` - the position within the sequence
  Returns:
    the score for the transition from the current context to the state with index `index`

### appendTransitions

    protected void appendTransitions(StringBuffer res,
                                     String contextNodeRepresentation,
                                     NumberFormat nf,
                                     String arrowOption,
                                     boolean graphical)

  Description copied from class: `BasicHigherOrderTransition.AbstractTransitionElement`
  This method appends all edges of the transition element to a given Graphviz representation.

  Overrides:
    `appendTransitions` in class `BasicHigherOrderTransition.AbstractTransitionElement`
  Parameters:
    `res` - the current Graphviz representation
    `contextNodeRepresentation` - the String representation of the context node(s)
    `nf` - the `NumberFormat` used for the probabilities, if `null` no probabilities will we written
    `arrowOption` - this parameter gives the possibility to set some arrow option
    `graphical` - represent transition probabilities as thickness of edges instead of textual output
  See Also:
    `BasicHigherOrderTransition.AbstractTransitionElement.appendGraphvizDescription(StringBuffer, NumberFormat, String, boolean)`, `BasicHigherOrderTransition.AbstractTransitionElement.getArrowOption(NumberFormat, double, double, String, boolean)`

### appendFurtherInformation

    protected void appendFurtherInformation(StringBuffer xml)

  Description copied from class: `BasicHigherOrderTransition.AbstractTransitionElement`
  This method appends further information to the XML representation. It allows subclasses to save further parameters that are not defined in the superclass.

  Overrides:
    `appendFurtherInformation` in class `ReferenceBasedTransitionElement`
  Parameters:
    `xml` - the XML representation

### extractFurtherInformation

    protected void extractFurtherInformation(StringBuffer xml)
                                      throws NonParsableException

  Description copied from class: `BasicHigherOrderTransition.AbstractTransitionElement`
  This method extracts further information from the XML representation. It allows subclasses to cast further parameters that are not defined in the superclass.

  Overrides:
    `extractFurtherInformation` in class `ReferenceBasedTransitionElement`
  Parameters:
    `xml` - the XML representation
  Throws:
    `NonParsableException` - if the information could not be reconstructed out of the `StringBuffer` `xml`

### getXMLTag

    protected String getXMLTag()

  Description copied from class: `BasicHigherOrderTransition.AbstractTransitionElement`
  This method returns the xml tag used in `BasicHigherOrderTransition.AbstractTransitionElement.toXML()`.

  Overrides:
    `getXMLTag` in class `BasicHigherOrderTransition.AbstractTransitionElement`
  Returns:
    the xml tag used in `BasicHigherOrderTransition.AbstractTransitionElement.toXML()`

### toString

    public String toString(String[] stateNames)

  Description copied from class: `BasicHigherOrderTransition.AbstractTransitionElement`
  This method returns a `String` representation of the transition element using the given names of the states.

  Overrides:
    `toString` in class `BasicHigherOrderTransition.AbstractTransitionElement`
  Parameters:
    `stateNames` - the names of the states, can be `null`
  Returns:
    a `String` representation of the transition element using the given names of the states

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