How does model 0 work?

55 views
Skip to first unread message

Joel Sharbrough

unread,
Dec 20, 2022, 2:38:02 PM12/20/22
to PAML discussion group
Hello,

I am trying to better understand how model 0 (i.e., one-ratio model) works in the branch models. 

Namely, when I run identical replicates of the same alignment and same input parameters, I get identical ML estimates of omega, and identical log-likelihood values, but only when I use model 0. 

When I perform identical replicate runes using model 1 (free-ratio model) or model 2 (>1 ratio model), I get slightly different estimates of omega, and slightly different log-likelihood values. 

This latter scenario is what I expected. That is, sampling different parts of the ML plane should yield slight variations depending on the starting location (i.e., random seed). So the lack of variation in MLEs and lnLs in model 0 is a bit concerning to me. 

Is this because model 0 is a simple calculation, rather than true ML search? Or perhaps because there is only a single free parameter, it is not possible to search the ML space at all?

I've tested this on many thousands of gene alignments (including single-gene and concatenated alignments), >3 different machines, all with different architectures/operating systems, and with three different paml versions (v4.8, v4.9, and v4.9j) all with identical results.

Thanks!

Joel

Ziheng

unread,
Feb 19, 2023, 11:14:25 AM2/19/23
to PAML discussion group

When I perform identical replicate runes using model 1 (free-ratio model) or model 2 (>1 ratio model), I get slightly different estimates of omega, and slightly different log-likelihood values. 

This latter scenario is what I expected. That is, sampling different parts of the ML plane should yield slight variations depending on the starting location (i.e., random seed). So the lack of variation in MLEs and lnLs in model 0 is a bit concerning to me. 



in theory multiple runs of the same analysis should produce identical results, corresponding to the MLE.  however, there may be rounding errors, numerical inaccuracies and other difficulties in nonlinear programming / numerical optimisation.  if the differences are small, you should just ignore them.
if you want to understand likelihood calculation under those models etc., you need to read a book.
best, 
ziheng
Reply all
Reply to author
Forward
0 new messages