Closed AnasZa closed 6 years ago
Dear Aaz,
Cheers,
J.
On Tue, Jun 12, 2018 at 12:40 PM, Aaz notifications@github.com wrote:
Dear Junior,
I have a question about Bayesian estimation results. Say, I run Results=mh_sampler(objective,lb,ub,mcmc_options,x0,SIG);
Now, I would like to look at the transitional probabilities or historical decompositions using sim-mode, or mean of the posterior distribution. How can I implement it?
Is there a way to create an object like m = ?(model_m, Results.pop), where model_m = estimate( rise(model), 'optimizer','fmincon'), so that I could treat object m as model_m?
And another question : how can I plot transitional probabilities with error bands?
Thank you!
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/jmaih/RISE_toolbox/issues/80, or mute the thread https://github.com/notifications/unsubscribe-auth/ACagz_j1rQqQQ-d_ZFFoW83FwpkJlAcRks5t75qRgaJpZM4UkMK1 .
Dear Junior,
Thanks a lot for your answer. I knew about draw_parameter function and tried to use it. But m1 object (in your notation) is the same as m0 at the end. For example if I run [draw,m1]=draw_parameter(m0,Results.pop) , then the “draw” changes each time you execute that command, but the m1 object is always the same. What I need is [draw,m1]=draw_parameter(m0,Results.best) , but again m1.estimation.posterior_maximazation.mode = m0.estimation.posterior_maximazation.mode and they exactly the same solution. Please tell me what is wrong here.
Kind regards!
Dear Aaz,
m1 is not the same as m0. m1 is parameterized with a new parameter vector drawn from Results.pop. You can check this in two ways. First, check isequal(m0,m1), secondly run the operation m2=set(m0,'parameters',draw) and then check isequal(m1,m2)
In order to push in the parameters of a particular vector from the draws, you need to locate the structure containing the parameter vector. Do the following: f=[Results.pop.f]; best=f==min(f); [~,m1]=draw_parameter(m0,Results.pop(best));
Cheers,
J.
Thank you very much, Junior! And the last thing that bothers me is that filtering structures that contains predicted, updated and smoothed series of the models are the same for m1 and m0. I guess if I run filter(m1), then I will update the smoothed_state_probabilities conditional of the new parameter set (=Results.pop(best)). Right? Are there any options to care about when running this function?
Your intuition is correct: if you want the smoothed series based on the new parameter vector, you need to run m1=filter(m1). You don’t have to do anything else as the original model already contains all the information needed as well as the options used when estimating the model.
In the future this will be clearer as the model object will no longer contain the filtering field.
Keep up the good work,
J.
- jun. 2018 kl. 17:40 skrev Aaz notifications@github.com:
Thank you very much, Junior! And the last thing that bothers me is that filtering structures that contains predicted, updated and smoothed series of the models are the same for m1 and m0. I guess if I run filter(m1), then I will update the smoothed_state_probabilities conditional of the new parameter set (=Results.pop(best)). Right? Are there any options to care about when running this function?
— You are receiving this because you modified the open/close state. Reply to this email directly, view it on GitHub, or mute the thread.
Dear Junior,
I have a question about Bayesian estimation results. Say, I run _Results=mh_sampler(objective,lb,ub,mcmcoptions,x0,SIG);
Now, I would like to look at the transitional probabilities or historical decompositions using sim-mode, or mean of the posterior distribution. How can I implement it?
Is there a way to create an object like _m = ?(modelm, Results.pop), where _modelm = estimate( rise(model), 'optimizer','fmincon'), so that I could treat object m as _modelm?
And another question : how can I plot transitional probabilities with error bands?
Thank you!