Note new working path: data_association_3
Fixed corrupt svn working copy.
I realized during implementation that it isn't clear what the predictive covariance, \(K_*\), should be. I know it's the covariance between the true branch point and the observed points in the markov blanket, but the observed points have associated view-indices, while the branch point does not. After some thought, I realized that the covariance arising from view-indices is essentially *likelihood* variance in this context (i.e. imaging noise), and according to Williams and Rasmussen, these parts of the likelihood should be omitted when computing the covariance between data and true unobserved points. (See equation (2.21), notice that off-diagonal elements don't include the noise variance, \(\sigma_n I\)).
To accomodate the use-case where you want to compute the covariance while ignoring view-index, I tweaked `kernel/get_model_kernel`; now, if you pass-in a `model_index` of zero, it returns a two-parameter no-perturb kernel where only spacial-indices are received.
ll_indices_flat
vs. prior_indices
There's some ambiguity in these two fields of a curve-track. The difference is simply that in ll_indices_flat
, indices always start at zero, whereas in prior_indices
the offset start_index
is added to all values. In practice, there are rules for where these two fields should be used:
prior_indices
start_index
ever changes.attachment/att_set_branch_index.m
.curve_ml5.m
for independent curvesmodel_type to params
How are children affected when properties of the parent change?
parent property | self affects | child affects |
---|---|---|
Assoc/Correspondence | start_index (and inherited) | Branch_index (and inherited. easy to re-estimate deterministically), marginal likelihood, (not start index) |
Start index | prior_K, prior_indices, ML | \(\mu_b\)*, \(\Sigma_b\)*, ML* |
Branch index | \(\mu_b\), \(\Sigma_b\), | none. |