quasi maximum likelihood: parameter estimation issue

2 vues (au cours des 30 derniers jours)
bing xu
bing xu le 2 Fév 2018
Commenté : bing xu le 3 Fév 2018
Hi there. thanks for reading first. I got this problem stuck here for few days now, even it seems simple.but.... here is the problem:
I want to use mle function to estimate three parameters(u,phi,syst_sigma) in a customized PDF function. here is the code:
y=[-6.8949 -6.9075 -6.8989 -6.7401 -6.9062];
syms u phi syst_sigma
assume(phi>-1&phi<1);
mi=-1.2704;
measur_sigma=pi^2/2;
h(1)=0;
p(1)=1-phi^2/syst_sigma^2;
t=5;
for t=1:t
h=0.03+phi*h;
v=y(t)-(h+mi);
k=phi.*p/(p+measur_sigma^2);
h=h+k.*v;
p=(phi.*p/(phi-k))+syst_sigma^2;
l=((y(t)-u)^2/p)
P=sum(p)
l=sum((y(t)-u)^2/p)
end
%do the parameter estimation
pdf=@(y,u,phi,syst_sigma) -5/2*log(2*pi)-0.5.*P-0.5.*l;
phat=mle(y(1:end),'pdf',pdf,'start',[0,0.95,0.0]);
t will predefined to a number.I had run the section above '%do the parameter estimation' and it was fine. But after that, it keep come out a lot different error messages. So I come here to see if anyone can help to give some advices. Any comments would be appreciated. Thank you all .
  2 commentaires
Matt J
Matt J le 2 Fév 2018
When I run your code, I get
Undefined function or variable 't'.
bing xu
bing xu le 3 Fév 2018
Thank you Matt. I re-edit my question.I added t value and few y data on it as well.

Connectez-vous pour commenter.

Réponse acceptée

Matt J
Matt J le 3 Fév 2018
Modifié(e) : Matt J le 3 Fév 2018
%do the parameter estimation
nonsym=matlabFunction(-5/2*log(2*pi)-0.5.*P-0.5.*l);
logpdf=@(y,u,phi,syst_sigma) nonsym(phi,syst_sigma,u);
phat=mle(y(1:end),'logpdf',logpdf,'start',[0,0.95,1],'OptimFun','fmincon');
  1 commentaire
bing xu
bing xu le 3 Fév 2018
Matt Thank you so much. This really helps me a lot and your code works very well. I thought my code should modified by varargin and varargout but yours seems smarter.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by