-
Stéphane Adjemian authored
+ Code factorization. + Added an option for using the penalized objective when computing numerically the hessian at the mode. Previous behaviour (introduced with penalty_hessian routine) was to compute the hessian matrix at the mode with the penalized objective function (instead of the original objective function). This behaviour hides problematic situations, where the computed hessian (using the original objective) would not be full rank. For instance, if the estimation ends up with a parameter on (or very close to) the bounds of its possible values (which is often not a desirable outcome), the estimated posterior variance would be zero for this parameter (with the original objective) because the hessian is not finite in this direction, while the posterior variance would be positive if the penalized objective is used instead. But this estimate would not be reliable by construction of the penalty which is quite ad-hoc (more fundamentally I do not think that there exists any rational for approximating the covariance matrix with the inverse of the hessian matrix if the mode is on the border of the set of possible values). This commit restore the behaviour previous to 2446ab02ba4b3ed88c9c5021aced076078d96007. An option is available for computing the hessian with the penalized objective function.
3c79e231