-
Notifications
You must be signed in to change notification settings - Fork 12
Closed
Description
I have an implementation of Annealed Importance Sampling (AIS) at https://github.com/treigerm/AnnealedIS.jl and @ParadaCarleton kindly suggested that I could merge it into an official Turing package and suggested this one. I was wondering what the best process is to merge my package into this one and if this is the best place.
Skimming through this repository it seems to me that the requirement for AIS and SMC are actually fairly different. AIS technically also has a set of particles but crucially there is no resampling step at observe statements. For a given Turing model AIS requires access to the following functions:
- The log joint density function of the parameters
- The log prior density function of the parameters
If one wants to use AIS with an HMC transition kernel then we also requires access to the gradient of these functions. Additionally, ideally we want to be able to evaluate these function in parallel on a set of particles. You can see how I currently extract those functions from a Turing model here.
In summary, I have two questions:
- How should I add my implementation of AIS to this package? I.e. should I add it to the
contrib
folder? - What is the "best practice" to extract the two functions mentioned above? Am I doing it correctly in my implementation?
Metadata
Metadata
Assignees
Labels
No labels