Hello, I'm trying to implement some acquisition functions for BO, starting with the tradition non-parallel version. UCB and POI are straightforward, while I am not sure I should use torch.distribution.cdf for expected improvement as I don't see one in pyro doc.
Thank you.
@tobyclh In the dev branch, pyro's distribution is nearly identical to pytorch's version (indeed, one of the main work of Pyro's devs in the last few months is to help moving part of pyro's distributions to pytorch upstream). So you can call .cdf() for most of Pyro's distribution (using dev branch) if they are available in Pytorch.
Btw, have you thought of implementing BO with Gaussian Process? We already made some work on GP in pyro.contrib.gp, so it might be helpful to you. Right now, I don't have much knowledge about BO but making some work on BO with GP is in my plan for April. It would be very helpful to me if we can start some discussions here (I will try my best to accumulate the knowledge along the way). :)
i agree! it's a great time to start thinking about BO in pyro. i opened #836 to track this.
@tobyclh if you feel like making any of your work so far (eg the acquisition functions) open source, it would be very helpful!
Actually I am using your Gaussian Process module for the BO :+1:
No problem I will clean up and make a PR later