@yonatank93 @mjwen
I think we can look towards more feature rich bayesian framework for UQ, specially for physics based models and smaller MLIPs. While emcee is good, I had something like Pyro or PyMC3 in mind. I prefer Pyro, as it is already compatible with ML models.
Problem comes with KIM-API models, which does not have gradient facility. For them I suggest wrapping torch.autorad.functional in a numdiff wrapper, I have tried it and it works. This will ensure one MCMC+VI framework for entire KLIFF.
Cons: emcee used Metropolis sampling, while Pyro uses hamiltonian monte carlo. I think it makes no difference as statistically both sample the posterior the same, but not an expert. What do you think yonathan?
Compromise will be to implement own AIES algorithm (emcee) in Pyro, but that would be my last resort.
What do you guys think? Worth the efforts? We will gain the ability to train any model in full bayesian framework.
@yonatank93 @mjwen
I think we can look towards more feature rich bayesian framework for UQ, specially for physics based models and smaller MLIPs. While emcee is good, I had something like Pyro or PyMC3 in mind. I prefer Pyro, as it is already compatible with ML models.
Problem comes with KIM-API models, which does not have gradient facility. For them I suggest wrapping
torch.autorad.functionalin a numdiff wrapper, I have tried it and it works. This will ensure one MCMC+VI framework for entire KLIFF.Cons: emcee used Metropolis sampling, while Pyro uses hamiltonian monte carlo. I think it makes no difference as statistically both sample the posterior the same, but not an expert. What do you think yonathan?
Compromise will be to implement own AIES algorithm (emcee) in Pyro, but that would be my last resort.
What do you guys think? Worth the efforts? We will gain the ability to train any model in full bayesian framework.