[BioC] vsn2 - update

Wolfgang Huber huber at ebi.ac.uk
Tue Jun 12 22:16:11 CEST 2007

Dear all,

thanks to Hans-Ulrich Klein and Tobias Straub for their feedback on the 
vsn2 function. This was very helpful. I introduced vsn2 for two reasons: 
1. clean up of the code, simplification of the user interface and 
compatibility with the new Expression class, 2. some (as I thought, 
minor but useful) changes to the numeric optimisation.

It seems that in 2. I was overeager in setting the convergence criterion 
of the likelihood optimiser much tighter than previously in vsn version 
1.x. I had found the results better on my test data sets, but it turns 
out that for certain other datasets (such as those with which 
Hans-Ulrich and Tobias work), the likelihood landscape has a long, 
shallow valley (*) and the optimiser runs and runs and runs out into the 
far end of it, producing extreme parameter estimates that lead to bad 
behaviour of the transformation for some data points. Hence also the 
longer running times.

The proposed solution is to either
- keep using the old vsn() function till the next release OR
- upgrade to vsn >= 2.3.5, available here: 
In this version, the default convergence criteria in vsn2() have been 
reverted back to how they are in the old vsn() function, and in 
addition, they can now be set by the user through the argument

For the next release, I have a grand plan for a different 
parameterisation of the model (and the likelihood) that avoids the flat 
valley problem and that is uniformly easier to numerically optimise :)

My apologies to those who have had problems, I hope that overall the 
package still provides a useful tool -

   Best wishes

(*) PS. This happens when the additive error component is negligible 
compared to the multiplicate, and hence when the optimal 
glog-transformation is close to a normal logarithm.

More information about the Bioconductor mailing list