QInfer / python-qinfer

Library for Bayesian inference via sequential Monte Carlo for quantum parameter estimation.
BSD 3-Clause "New" or "Revised" License
92 stars 31 forks source link

Create new branch for Generalized Outcomes #113

Open taalexander opened 7 years ago

taalexander commented 7 years ago

As most Qinfer developers know, myself and @ihincks have been working on extending the features and ideas of Qinfer to a more general class of probability distributions as discussed in #66. My forks branch is now at what I believe is a reasonable stage to begin the process of code analysis, and review for eventual incorporation into the main branch.

The main core functionality of SMCUpdater's particle filter generalises to arbitrary domain probability distributions quite naively. The difficulty in modifying the QInfer code to these new domains has mostly been in a variety of metrics that involve taking expectation values over outcomes such as smc.SMCUpdater.bayes_risk,smc.SMCUpdater.expected_information_gain, and abstract_model.DifferentiableModel.fisher_information. We have attempted to solve these issues primarily with MCMC integration techniques. I will provide a document outlining these procedures at a later time. All tests are currently passing, is merged and up to date with the master branch,all code is commented, and I am in the process of using this branch in my own work for data analysis.

I believe at this stage it would be good to create a new branch in this repository to pull my fork into in order to commence with review, and implement the necessary changes to bring it into line in a supervised manner.

Ps. @cgranade sorry for taking so long to get around to this. There was always one more thing to do... -Thomas

ihincks commented 7 years ago

Branch created.