How does matlab do maximum likelihood on custom functions?

4 Ansichten (letzte 30 Tage)
sepideh
sepideh am 5 Jul. 2012
Kommentiert: Jeff Miller am 20 Okt. 2020
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?

Akzeptierte Antwort

Peter Perkins
Peter Perkins am 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 Kommentare
sepideh
sepideh am 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 am 31 Aug. 2012
Bearbeitet: Peter Perkins am 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.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

gujax
gujax am 20 Okt. 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 Kommentar
Jeff Miller
Jeff Miller am 20 Okt. 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.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by