Didn't converge error with binary model

92 views
Skip to first unread message

Joanna R.

unread,
Dec 13, 2019, 3:03:40 PM12/13/19
to R/qtl2 discussion
Hi Karl,

I'm get an error message running a binary scan in QTL2, and the output looks a little odd.
2: In scan_binary_onechr(genoprobs, pheno, addcovar, maxit, tol, qr_tol,  :
  binreg didn't converge
If I use the default model (obviously inappropriately, because it's a binary trait), I don't get quite such dramatic pits or the "didn't converge" error message (see below). Changing maxit doesn't seem to help.


For a little more context: this is a map from a non-model system (Rumex) with very unevenly distributed recombination (mostly at the tips of chromosomes). This is simply a scan to confirm the identity of the sex chromosome by localizing sex as a phenotype; multiple other sources of data (e.g. GWAS from a population, distribution of XY polymorphisms in a pedigree cross, etc.) localize the sex-linked region to the same part of the chromosome. There are almost certainly errors in our assembly (the genome is highly repetitive) and in our map (because there is very, very low recombination across most of the chromosome - about 3/4 of the physical map is actually localized at above 60cm).

Do you have any thoughts about what those dips are? I'm assuming they're picking up on errors in our assembly or map. And should we worry too much about the converging? This is mostly just another way to localize something we already know.

Thanks!

Joanna

Karl Broman

unread,
Dec 14, 2019, 11:10:46 AM12/14/19
to rqtl2...@googlegroups.com
It's a warning not an error. The binary scan fits a logistic regression at each locus, which uses an iterative algorithm which is apparently not converging in the chosen number of iterations. You can also try playing with the arguments 'bintol' (the tolerance for convergence, default 1e-6) and 'eta_max' (maximum value of linear predictor, default ~28).

The dips in the LOD score likely correspond to positions where the algorithm is not converging.

karl
--
You received this message because you are subscribed to the Google Groups "R/qtl2 discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rqtl2-disc+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rqtl2-disc/d618da6a-b3e4-466b-afae-c3e5f3e4b8c8%40googlegroups.com.

Joanna R.

unread,
Dec 16, 2019, 12:06:13 PM12/16/19
to rqtl2...@googlegroups.com
Great! Thanks for the help - adjusting the eta_max helps it converge better. 



--
Joanna Rifkin PhD

Department of Ecology and Evolutionary Biology
The University of Toronto
25 Willcocks St.
Toronto, ON M5S 3B2 

Mark Sfeir

unread,
Jan 4, 2023, 1:28:42 PM1/4/23
to R/qtl2 discussion
I recently got the same warning when using scan1 with model="binary". Setting maxit as high as 10^7 didn't resolve the warning about convergence (and took a while), whereas decreasing the eta_max by trial and error to a value of 15 did.

When limiting the max value of the linear predictor eta_max in this way without a great understanding of the functional significance of that linear predictor in the calculations, I fear I may be producing low quality results. It would help me to get a pointer to some reference or otherwise have explained how adjusting the eta_max value affects scan1's calculations, and how dangerous it is to adjust eta_max too low in terms of quality of results. 

Separately, adjusting the bintol as high as 10^-4 resolved at least one convergence warning in my case, but I'm not sure whether the bintol is more important than eta_max for the results. 

I'd appreciate any input here,
Mark Sfeir
Research tech at UNC
Reply all
Reply to author
Forward
0 new messages