How does matlab do maximum likelihood on custom functions?

6 views (last 30 days)
I am trying to fit a custom function ( generalized Normal distribution type II http://en.wikipedia.org/wiki/Generalized_normal_distribution)to my data and i am using mle function. I wonder what is the method that Matlab uses, is it a search method?

Accepted Answer

Peter Perkins
Peter Perkins on 6 Jul 2012
Ordinarily, the mle function minimizes the negative log-likelihood that you have defined (either as a PDF, or a log PDF, or as the LL) using fminsearch. If you have the Optimization Toolbox, you can tell mle to use fmincon. This is the 'OptimFun' parameter, explained in the help for the mle function.
  2 Comments
sepideh
sepideh on 31 Aug 2012
Thanks, using mle i find this warning :Warning: Maximum likelihood estimation did not converge. Iteration limit exceeded. How much i can trust the answers and how can i change the number of iterations?
Peter Perkins
Peter Perkins on 31 Aug 2012
Edited: Peter Perkins on 31 Aug 2012
Not at all if it didn't converge, and
>> help mle
mle Maximum likelihood estimation.
[snip]
'options' A structure created by a call to STATSET, containing
numerical options for the fitting algorithm. Not
applicable to all distributions.

Sign in to comment.

More Answers (1)

gujax
gujax on 20 Oct 2020
Hi,
I would like to explore the above question further...
If I use a standard distribution listed in Matlab document and not my custom, how is mle evaluated? For example if the distribution is Poisson, does mle evaluate minimum of log pdf i.e. does it convert to log pdf? So If i provide a pdf, do I have to state that its a log pdf?
Thanks
  1 Comment
Jeff Miller
Jeff Miller on 20 Oct 2020
1) Just guessing here, but matlab probably obtains the mle's differently for different distributions, because: for some distributions the mle's are simple functions of the data values, and for other distributions you have to use numerical search.
2) When doing numerical search, matlab probably converts to log pdf to minimize numerical problems.
3) If you provide your own pdf, you definitely would have to provide the pdf or indicate that it is the log pdf (if the mle function has an option for that). The parameters that maximize the product of the pdf values are not necessarily the same as those that maximize the product of the log pdf values.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!