ilabcode / HierarchicalGaussianFiltering.jl

The Julia implementation of the generalised hierarchical Gaussian filter
https://ilabcode.github.io/HierarchicalGaussianFiltering.jl/
Other
25 stars 10 forks source link

Appreciation and Suggestion for HierarchicalGaussianFiltering.jl #98

Closed albertpod closed 1 year ago

albertpod commented 1 year ago

I recently read the paper "The Generalized Hierarchical Gaussian Filter" and found it an exciting extension of the Hierarchical Gaussian Filtering (HGF) framework. I appreciate your efforts and the paper's potential applications in cognitive neuroscience and computational concepts of mental disorders.

I want to bring to your attention some prior works such as "Online Message Passing-based Inference in the Hierarchical Gaussian Filter" and "The Switching Hierarchical Gaussian Filter," and also "Bayesian joint state and parameter tracking in autoregressive models" by Senoz et al seem to be relevant to this research. It might be helpful to consider these works in the context of HierarchicalGaussianFiltering.jl and include them in the documentation or examples to provide additional user insights.

Most components for implementing the generalized HGF are already available in RxInfer.jl, which treats everything as message-passing algorithms. In the near future, we will probably assign someone from the BIASlab to implement the generalized HGF within RxInfer.jl toolbox. In fact, RxInfer.jlhas already some vanilla implementations of online inference MP in HGF .

Thank you once again for your valuable contributions.

PTWaade commented 1 year ago

Dear Albert,

Apologies for the slightly holiday-delayed response! And thanks for the nice message, and for mentioning the papers, they won't be forgotten.

We'll get in touch personally, but it would be really nice to have a meeting with BIASLab to talk about synergies between our work. RxInfer.jl and HierarchicalGaussianFiltering.jl have things in common and potentially ways of supporting each other, so we should definitely talk. My impression is that RxInfer is less designed to be a model of (human) cognition, and more to be used as a Bayesian inference engine akin to Turing.jl, while HierarchicalGaussianFiltering.jl is designed mainly with the use of cognitive modeling in mind. We have actually discussed whether it would be nice to use RxInfer.jl with ActionModels.jl to do the model fitting, instead of Turing, which also would be nice to discuss. You'll hear from us!