Effacer les filtres
Effacer les filtres

Maximum Likelihood Estimation function

1 vue (au cours des 30 derniers jours)
Jane Smith
Jane Smith le 12 Mai 2022
syms a
logL=100.*log(a)+sum(log(exp(a.*c2))+sum(log((1+exp(a.*c2)).^-2)));
j = fplot(logL)
hold on
%%
m=100/a;
o=sum(c);
p=2*exp(a.*c);
q=exp(a.*c)+1;
dlog=m+o-p.*c.*(q.^-1);
k=fplot(dlog);
hline.Color = 'k';
c is a matrix of data
I am trying to find the maximum of the estimator is there another method except plotting the graphs of the log functions?

Réponse acceptée

Torsten
Torsten le 12 Mai 2022
x = your data vector
fun = @(a) n/a + sum(x) - 2*a*sum(exp(a*x)./(exp(a*x)+1);
a = fzero(fun,1)
  3 commentaires
Torsten
Torsten le 12 Mai 2022
Modifié(e) : Torsten le 12 Mai 2022
I think there is an error in your derivative of L with respect to a. In my opinion, the function must be
fun = @(a) n/a + sum(x) - 2*sum(x.*exp(a*x)./(exp(a*x)+1))
Jane Smith
Jane Smith le 13 Mai 2022
Modifié(e) : Jane Smith le 13 Mai 2022
Yes you are correct.

Connectez-vous pour commenter.

Plus de réponses (1)

John D'Errico
John D'Errico le 12 Mai 2022
Is there another way? Why not negate the function, and then use a tool like fminbnd? Or fminsearch. Or fmincon or fminunc, or ...
  2 commentaires
Jane Smith
Jane Smith le 12 Mai 2022
I am getting errors when trying with those functions.
Error using fcnchk
FUN must be a function, a valid character vector expression, or an inline function object.
I have been trying it on various softwares. The function f(x) is made up so i am getting confused were my mistake is in finding the estimate.
David Randolph
David Randolph le 13 Mai 2022
Modifié(e) : David Randolph le 13 Mai 2022
@John D'Errico wrong again!

Connectez-vous pour commenter.

Catégories

En savoir plus sur Line Plots dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by