-
Notifications
You must be signed in to change notification settings - Fork 34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Jacobian term shouldn't be included when transforming loglikelihoods #1705
Comments
I think this means we need to update the See #457 The use case for this is performing MLP using the Transform class and an optimiser: at the moment that uses the transform_logpdf method even if you pass it a likelihood |
Thoughts @ben18785 , @martinjrobins , @chonlei ? |
is this just for MLP? How about if the likelihood is part of a log posterior, do you transform its output then? |
No but you'd have |
so the likelihood is multiplied by a factor (lets say A where A = dp(sigma)/dsigma is the jacobian of the pdf) due to the change of variables, but MLE is unaffected by this since A is constant wrt the parameters sigma. The prior has an A that might be dependent on the parameters, so this needs to be transformed. More broadly, any logpdf that has a jacobian that is constant wrt the parameters sigma does not need to be transformed. So perhaps a pints logpdf can have a function that returns a bool indicating if its jacobian is constant wrt the parameters? Then the Transformation class can just check this? |
When working in a transformed parameter space to perform maximum likelihood estimation, we don't need to include the Jacobian term provided we are not also transforming the data.
This follows from the "invariance property of the ML estimator": https://en.wikipedia.org/wiki/Maximum_likelihood_estimation
The text was updated successfully, but these errors were encountered: