filter.mean vs filter.traj: prediction and smoothing #143
-
Sorry, I have yet again another question. I can't quite understand the difference between the I'm asking because an important part of movement state-space models are the values of the states. I realize that I can get all of the particle states if I set Finally, the Many thanks! Marie |
Beta Was this translation helpful? Give feedback.
Replies: 5 comments
-
Very good question, @MarieAugerMethe! The difference between The smoothing distribution (which, I assume, is more interesting to you) is more difficult to come by. The reason for this is that one must keep track not only of the ensemble of particles "alive" at time t, but of the histories (the pedigrees, so to speak) of the individual particles as well. This involves more work and more storage, so I should point out that, while the above operation accounts for variability in the latent state process and in the measurement process, it ignores parameter uncertainty. One could factor in this uncertainty, for example, by running You go on to ask about the best ways of summarizing the distribution. As you point out, the standard measures of central tendency (mean, median) leave something to be desired. This is, of course, another instance of the average failing to be typical. To be clear, I believe you should be seeing that each individual sample from the smoothing distribution obeys the constraints (i.e., fish staying wet), but that the distribution is multimodal. I won't hazard any general recommendations for summarizing multimodal data, but a variety of relatively straightforward options present themselves. For visual display, for example, would it be enough to simply overlay a reasonably large number of samples on the map (perhaps using semi-transparency to avoid overplotting)? Or one could construct kernel density estimates in space-time.... Or, if it's just a simple case where we have one island and two masses of trajectories (one in which the animals go eastabout, the other in which they go westabout, say), then perhaps it is not too hard to divide each trajectory into one of the categories and summarize each category separately.... Finally, you ask about why the prediction variance is made available (i.e., |
Beta Was this translation helpful? Give feedback.
-
Thank you @kingaa ! Extremely helpful! Ok, I understand generally what you are saying, but I'm still confused by a few details. Using a particle filter approach, if you wanted the:
With
Re bimodality, yes I was already doing the visualissation trick, but the variability in the data was so overwhelming that I was trying to find another solution. I think now that I understand better what the different function returns, it will be easier for me to find a solution. I was under the assumption that Aye aye aye, yes good point regarding the parameter uncertainty. But I think this is something for another day. Suggestion: in the help file of Thank you!!! Marie |
Beta Was this translation helpful? Give feedback.
-
@MarieAugerMethe, you ask:
First, let me clarify one thing about pomp's particle filter, Now, on to your question about why we use just a single draw from each particle filter calculation. On the face of it, this does appear wasteful: Each |
Beta Was this translation helpful? Give feedback.
-
@MarieAugerMethe: In looking over the code to make sure I was giving you the correct answer, I discovered a bug. In particular, Yet another benefit of your excellent questions! |
Beta Was this translation helpful? Give feedback.
-
Thanks @kingaa ! Ok, got it. Now I'll just have to figure out how to deal with the bimodality ;) Thanks! |
Beta Was this translation helpful? Give feedback.
Very good question, @MarieAugerMethe!
The difference between
filter.mean
andfilter.traj
is related to the difference between filtering and smoothing. Recall that the filtering distribution is defined to be the distribution of latent states, Xt, given the data up through time t. That is, Xt | y*1:t, t=1,...,T. By contrast, the smoothing distribution is the distribution of Xt given all the data: Xt | y*1:T, t=1,...,T. The filtering distribution is a natural by-product of the particle filter and pomp summarizes it in the form of the "filter mean" when you setfilter.mean=TRUE
. [Note that, if you setsave.states=TRUE
,pfilter
saves the full filtering distribution for you, as represented by t…