[Biojava-dev] In which the Multihead DP traverses MagicalState repeatedly

Matthew Pocock matthew_pocock at yahoo.co.uk
Mon Jan 12 12:50:43 EST 2004


:)

This would have been caught by a source-code level assertion mechanism 
in Java - movement through magic was meant to be excluded by the 
intersection of 2 boundary conditions - I guess one or both of these 
boundaries have been since moved.

Thanks for spotting this.

Matthew

David Huen wrote:

>With some combinations of parameters (rather poor ones for the sequences to 
>aligned by Viterbi), our twohead DP implementation can generate a StatePath 
>that traverses the magicalState on multiple occasions.
>
>After investigating it at length, I think it comes about comes about because 
>the EmissionCache treats the MagicalState as an EmissionState with advance 
>(0, 0) and a finite probability.  However, traversal through the 
>MagicalState should be explicitly forbidden in the Viterbi statepath.
>
>I have implemented fixes in both LightPairDPCursor and EmissionCache to set 
>the probability score of the MagicalState to -infinity at all points in the 
>DP matrix other than at the origin and bottom right corner.  This seems to 
>have fixed this problem within my dataset.
>
>I have also retrofitted an equivalent fix into AbstractMatrixPairDPCursor 
>but I am insufficiently familiar with that code to be certain of it being 
>correct.
>
>I don't know if there are consequences for DPCompiler.
>
>Anyway, I have committed the fixes.
>
>Incidentally, if you have been running 2-head DPs with the current code and 
>do not usually examine the generated StatePaths, you may wish to repeat 
>some of those runs and compare the results.  The ability to traverse the 
>MagicalState does create amazing opportunities for the model to go where no 
>model has ever been before :-)
>
>Regards,
>David Huen
>_______________________________________________
>biojava-dev mailing list
>biojava-dev at biojava.org
>http://biojava.org/mailman/listinfo/biojava-dev
>
>  
>




More information about the biojava-dev mailing list