public class DistanceBasedScaledTransitionElement extends ReferenceBasedTransitionElement
Modifier and Type | Field and Description |
---|---|
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 . |
annotationID, diagElement, ess, probabilities
context, descendants, hyperParameters, logNorm, parameters, states, statistic
Constructor and Description |
---|
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.
|
Modifier and Type | Method and Description |
---|---|
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)
Returns a string representation of the transition probabilities.
|
determineDiagonalElement, getLogGammaScoreFromStatistic, getLogPriorTerm, initializeRandomly, precompute
appendGraphvizDescription, drawParametersFromStatistic, getArrowOption, getChild, getContext, getDescendant, getGraphvizEdgeWeight, getLabel, getLastContextState, getNextContext, getNumberOfChildren, getNumberOfParameters, joinStatistics, setIndexOfDescendantTransitionElement, setParameters, toString, toString, toXML
protected String arrowOptions
protected double scalingFactor
protected double[] statisticsTransitionProb
context
.
public DistanceBasedScaledTransitionElement(int[] context, int[] states, double[] probabilities, double ess, double scalingFactor, String annotationID)
context
- context of statesstates
- states that can be reached from the contextprobabilities
- transition probabilities from the context to the statesess
- the equivalent sample size (ess)scalingFactor
- scaling factorannotationID
- identifier for decoding transition classesDistanceBasedScaledTransitionElement(int[], int[], double[], double, double, String, double[])
public DistanceBasedScaledTransitionElement(int[] context, int[] states, double[] probabilities, double ess, double scalingFactor, String annotationID, double[] weight)
context
- context of statesstates
- states that can be reached from the contextprobabilities
- transition probabilities from the context to the statesess
- the equivalent sample size (ess)scalingFactor
- scaling factorannotationID
- identifier for decoding transition classesweight
- the weight for plotting the edge in Graphviz, enables to modify the edge length, larger weights imply shorter edges (default: 1)public DistanceBasedScaledTransitionElement(StringBuffer xml) throws NonParsableException
xml
- the XML-representationNonParsableException
- if the representation could not be parsedprotected void init()
init
in class ReferenceBasedTransitionElement
public DistanceBasedScaledTransitionElement clone() throws CloneNotSupportedException
clone
in class ReferenceBasedTransitionElement
CloneNotSupportedException
protected double getIndex(int pos, Sequence seq)
pos - 1
to pos
in sequences seq
.pos
- position in seqseq
- sequencespublic void addToStatistic(int childIdx, double weight, Sequence sequence, int sequencePosition)
BasicHigherOrderTransition.AbstractTransitionElement
addToStatistic
in class BasicHigherOrderTransition.AbstractTransitionElement
childIdx
- the index of the descendant stateweight
- the weight to be addedsequence
- the sequence, which might be used to retrieve SequenceAnnotation
sequencePosition
- the position within the sequenceTransitionWithSufficientStatistic.addToStatistic(int, int, int, double, Sequence, int)
,
BasicHigherOrderTransition.AbstractTransitionElement.statistic
,
BasicHigherOrderTransition.AbstractTransitionElement.resetStatistic()
,
BasicHigherOrderTransition.AbstractTransitionElement.estimateFromStatistic()
,
BasicHigherOrderTransition.AbstractTransitionElement.drawParametersFromStatistic()
public void resetStatistic()
BasicHigherOrderTransition.AbstractTransitionElement
resetStatistic
in class BasicHigherOrderTransition.AbstractTransitionElement
BasicHigherOrderTransition.AbstractTransitionElement.statistic
,
BasicHigherOrderTransition.AbstractTransitionElement.estimateFromStatistic()
,
BasicHigherOrderTransition.AbstractTransitionElement.drawParametersFromStatistic()
,
BasicHigherOrderTransition.AbstractTransitionElement.addToStatistic(int, double, Sequence, int)
,
TransitionWithSufficientStatistic.resetStatistic()
public void estimateFromStatistic()
BasicHigherOrderTransition.AbstractTransitionElement
estimateFromStatistic
in class BasicHigherOrderTransition.AbstractTransitionElement
BasicHigherOrderTransition.AbstractTransitionElement.statistic
,
BasicHigherOrderTransition.AbstractTransitionElement.resetStatistic()
,
BasicHigherOrderTransition.AbstractTransitionElement.addToStatistic(int, double, Sequence, int)
,
TrainableTransition.estimateFromStatistic()
public double getLogScoreFor(int state, Sequence sequence, int sequencePosition)
BasicHigherOrderTransition.AbstractTransitionElement
index
.getLogScoreFor
in class BasicHigherOrderTransition.AbstractTransitionElement
state
- the index of the childsequence
- the sequence, which might be used to retrieve SequenceAnnotation
sequencePosition
- the position within the sequenceindex
protected void appendTransitions(StringBuffer res, String contextNodeRepresentation, NumberFormat nf, String arrowOption, boolean graphical)
BasicHigherOrderTransition.AbstractTransitionElement
appendTransitions
in class BasicHigherOrderTransition.AbstractTransitionElement
res
- the current Graphviz representationcontextNodeRepresentation
- the String representation of the context node(s)nf
- the NumberFormat
used for the probabilities, if null
no probabilities will we writtenarrowOption
- this parameter gives the possibility to set some arrow optiongraphical
- represent transition probabilities as thickness of edges instead of textual outputBasicHigherOrderTransition.AbstractTransitionElement.appendGraphvizDescription(StringBuffer, NumberFormat, String, boolean)
,
BasicHigherOrderTransition.AbstractTransitionElement.getArrowOption(NumberFormat, double, double, String, boolean)
protected void appendFurtherInformation(StringBuffer xml)
BasicHigherOrderTransition.AbstractTransitionElement
appendFurtherInformation
in class ReferenceBasedTransitionElement
xml
- the XML representationprotected void extractFurtherInformation(StringBuffer xml) throws NonParsableException
BasicHigherOrderTransition.AbstractTransitionElement
extractFurtherInformation
in class ReferenceBasedTransitionElement
xml
- the XML representationNonParsableException
- if the information could not be reconstructed out of the StringBuffer
xml
protected String getXMLTag()
BasicHigherOrderTransition.AbstractTransitionElement
BasicHigherOrderTransition.AbstractTransitionElement.toXML()
.getXMLTag
in class BasicHigherOrderTransition.AbstractTransitionElement
BasicHigherOrderTransition.AbstractTransitionElement.toXML()