Open mathause opened 1 year ago
Regarding dist_cov, the initial code i'm using is based on a former that @mathause provided me ~2 years ago. Since then, I added more distributions, expressions (polynom n, sigmoids), possibility to fit the logit instead and especially, improved the stability of the first guess. Thus, same core, but more complexity and i expect somewhat slower.
Regarding pykelihood, I had checked with dummy data in different situations, and my take is that:
pykelihood is faster by a factor ~2 on usual distributions than my approach
but fails to returns the expected parameters in many situations, basically either when the first guess leads to points of the sample out of the support of the distribution or when the fit is too complex.
the additional steps that i developed to define a proper first guess may explain the difference in speed. They include successive regressions on residuals with tests on the support of the distribution.
still, pylikelihood provides a good basis for conditional distributions with the usual expressions & distributions. It is something that I had on my mind but never had the time to write in such a clean way. Thus, integrating the steps for the first guess may help us in having enough robustness for the fits in many situations (ESM, variable, grid point, distribution, expression).
I will try to take the time to refactor a bit the MESMER-X code before putting the branch on the github, so that we can compare :)
@yquilcaille found "OpheliaMiralles/pykelihood: package useful for likelihood-based inference". Which can "add trends of different forms in the parameters of any distribution". This could be very interesting to base Yann's approach on. It is also similar to my "distributions with covariates" package (dist_cov).