-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Modern library to test & dev ideas on GFlowNets? #330
Comments
IMHO, my (biased as I am a developer for
In the end I think your choice should be guided by the specific kind of project you want to work on. Is the idea to use GFlowNets for a particular purpose, or rather to investigate the properties of GFlowNets on toy environments? |
Hey @josephdviviano , The idea is to eventually in the long run (till October) develop and benchmark GFlowNets in a 3D objectgeneration task/environment (ideally a mesh or a simple manifold). I suppose this will require Continuous GFlowNets (correct me if I'm wrong), which I've seen are still very complicated and buggy to develop under torchgfn. Having said that, I'm still learning the very basics and trying to grasp the differences e.g. between FM, DB, TB, Sub-TB, EB-GFN, and what their appropriate applications are. I'd be glad to contribute whatever's at priority here (feel free to email/PM me), but I'm still lacking deeper knowledge needed for the time being. Thanks again for your tips! |
Yes, you're correct that it's complicated to develop these under You might actually want to read this paper before committing to your approach: https://arxiv.org/abs/2402.06121 You should see if this repo could be adapted to your purposes. It surely has handled the largest scale continuous GFN applications to date. I would not recommend the recursion repo for this purpose. Best of luck! |
Hi @pieris98 thanks for your interest in this repo and for getting in touch! @josephdviviano has summarised the stronger points of I would say that at this point, it is very straightforward for us developers to implement new environments (unless they are overly complicated) by inheriting the existing environments and/or taking the existing code as a template. It will surely not be so straightforward for someone who does not know the code so well, which is why we are currently writing tutorials and documentation. However, it should not be too hard either. For example, if the problem at hand is an N-dimensional continuous manifold, then as a starting point you could simply create a new class off the
You can replace If you want to change things of the Cube environment to fit your needs, then I would recommend implementing a new class, as in the I mentioned the proxy too. That is something you will have to implement to fit your needs. It should be super easy. You have to do two things:
I hope this helps! |
Hey Alex and others,
First of all thank you for your generous work in the field and for spreading the ideas with open source code for the rest of us!
I want to experiment with GFlowNets and potentially develop stuff for my Master's thesis.
I've stumbled upon this repo, as well as recursion's repo (also seems modern) and the torchgfn repo in GFNOrg (has useful tutorials for the basics and the first handful of loss objectives e.g. FM, DB, TB, SubTB).
I've seen most recent commits here in your repo, and the README mentions development and experimentation as its purpose.
Which one would you suggest is better to use?
Thanks for the help!
The text was updated successfully, but these errors were encountered: