Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add information form filtering. #30

Merged
merged 6 commits into from Jun 21, 2022
Merged

Add information form filtering. #30

merged 6 commits into from Jun 21, 2022

Conversation

gileshd
Copy link
Collaborator

@gileshd gileshd commented Jun 20, 2022

Filtering

ssm_jax/lgssm/info_inference.py contains code for kalman filtering in information form.

The implementation more-or-less mirrors the filtering in lgssm.inference with _predict() and _condition_on() changed to accept and return precision (Lambda) and precision-weighted mean (eta).

Tests

ssm_jax/lgssm_info_inference.py contains tests which compare the output of lgssm.info_inference.lgssm_info_filter to lgssm.inference.lgssm_filter. There are currently two tests:

  • test_info_kalman_filter - simple test with stationary system.
  • test_info_kf_linreg - uses the example in lgssm/demos/kf_linreg.py to test non-stationary parameters.

@murphyk
Copy link
Member

murphyk commented Jun 21, 2022

beautiful :)

@murphyk murphyk merged commit 9e4b083 into main Jun 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants