[BioC] vsn: L-BFGS-B needs finite values of fn (was: help in arrayMagic?)

Wolfgang Huber huber at ebi.ac.uk
Tue Mar 22 22:15:19 CET 2005


Dear Rebecca,

 >  vsn normalisation
 > vsn: 474 x 2 matrix (1 stratum).
 > Error:
 > L-BFGS-B needs finite values of fn

This error can occur when the likelihood has a shallow maximum, and the 
numerical optimizer runs into nirvana. I have recently updated the vsn 
package (version 1.5.5) so that this convergence problem is now avoided 
in some cases, and if not it produces a more meaningful error message 
than the one you got.

Following recommendations to increase the stability of the algorithm and 
get better convergence:
- use a higher value of lts.quantile
- apply it to your whole 474 x 6 matrix at once, rather than three times 
to individual 474 x 2 matrices.

The non-convergence can occur e.g. if the two columns are (nearly) 
identical - then there isn't enough variability to estimate the noise 
parameters of the error model used in vsn.

   Cheers,
   Wolfgang


Andreas Buness wrote:
> Dear Rebecca,
> 
> the error 'L-BFGS-B' is related to the normalisation method 'vsn'
> and your specific data set. So e.g., if using 'loess' instead, the
> error would not occur. Otherwise possibly change the options, e.g.
> skip the argument 'hybridisationGroups' or specify 'pstart' for 'vsn'
> in the function call of 'normalise'. cf. the discussion in
> 
> https://stat.ethz.ch/pipermail/ bioconductor/2004-May/004738.html
> https://stat.ethz.ch/pipermail/ bioconductor/2004-June/005076.html
> 
> Non-unique identifiers cannot be used to label matrix rows without
> ambiguity. But the call of 'qualityParameters' with argument
> 'spotIdentifier="Name"' as specified in the vignette should
> give you results regarding your replicate spots.
> 
> Hope this helps, best regards
> Andreas
> 
> 
> 
> pmt1rew at leeds.ac.uk wrote:
> 
>> Dear all
>>
>> I have a set of raw data values, 2 channels and 3 hybridisations.  I have
>> created an array of dimension 474x2x3 and am now trying to normalise 
>> the data,
>> each hybridistaion separately.  I have installed the arrayMagic 
>> package and
>> used the command
>>
>>
>> eSRG<-normalise(arrayDataobject,method="vsn",hybridisationGroups="slideBySlide",spotIdentifier="Name") 
>>
>>
>> which returns the following error message
>>
>>  begin of normalisation
>>  the following hybridisation index(es) are used in normalisation step 1 :
>> 1
>>  vsn normalisation
>> vsn: 474 x 2 matrix (1 stratum). Please wait for 10 dots: ..........
>>  the following hybridisation index(es) are used in normalisation step 2 :
>> 2
>>  vsn normalisation
>> vsn: 474 x 2 matrix (1 stratum). Please wait for 10 dots: ......Error: 
>> L-BFGS-B
>> needs finite values of fn
>>
>>
>> My data matrix contains no zeros or negative values or Inf and there 
>> are are no
>> coloumns which contain all the same value.  Hope that you can help 
>> with why and
>> how to amend it?
>>
>> Furthermore, I have a column of 474 gene names.  They are non-unique 
>> since I
>> have six replicates per gene.  Thus I have used used spotIdentifier = 
>> "Name"
>> which is one of my column names.  I get the line
>>
>> non-unique identifiers found in getSpotAttr(arrayDataObject)
>> no spot/gene names have been added to the exprSetRG in normalise
>>
>> however when I call qPL anything to do with replicate spot returns a 
>> value of
>> NA?
>>
>> Hope you can help.  Thanks
>>
>> Rebecca
>>
>> _______________________________________________
>> Bioconductor mailing list
>> Bioconductor at stat.math.ethz.ch
>> https://stat.ethz.ch/mailman/listinfo/bioconductor
> 
> 
> 


-- 
Best regards
   Wolfgang

-------------------------------------
Wolfgang Huber
European Bioinformatics Institute
European Molecular Biology Laboratory
Cambridge CB10 1SD
England
Phone: +44 1223 494642
Fax:   +44 1223 494486
Http:  www.ebi.ac.uk/huber



More information about the Bioconductor mailing list