Skip to content
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

Feature Request: Add support for pytorch #5

Open
27 of 38 tasks
ludwigbald opened this issue Sep 6, 2019 · 8 comments
Open
27 of 38 tasks

Feature Request: Add support for pytorch #5

ludwigbald opened this issue Sep 6, 2019 · 8 comments
Labels
👷 Status: In Progress Issue is being worked on ✨ Type: Feature Request New feature or request

Comments

@ludwigbald
Copy link

ludwigbald commented Sep 6, 2019

(This is a test issue. As mentioned in the responses to #3 and #4 , there is a development branch that supports pytorch. find it here: https://github.com/abahde/DeepOBS)

Expected behavior

I would appreciate if DeepOBS had built-in support for my pytorch optimizers.

This is relevant because a lot of optimizer research happens on pytorch.

Proposed approach:

Maybe @abahde could send a pull request when he's finished implementing it. Then @fsschneider can accept the pull request, handle the merging and we have success!


To Do

We will do the following steps for version 1.2.0:

  • Add full support for PyTorch
    • Implement all Test Problems:
      • 2-D (data loading):
        • Beale
        • Branin
        • Rosenbrock
      • Quadratic (data loading):
        • Deep
      • MNIST (data loading):
        • Log. Regr.
        • MLP
        • 2c2d
        • VAE
      • Fashion-MNIST (data loading):
        • Log. Regr.
        • MLP
        • 2c2d
        • VAE
      • CIFAR-10 (data loading):
        • 3c3d
        • VGG16
        • VGG19
      • CIFAR-100 (data loading):
        • 3c3d
        • VGG16
        • VGG19
        • All-CNN-C
        • Wide ResNet-16-4
        • Wide ResNet-40-4
      • SVHN (data loading):
        • 3c3d
        • Wide ResNet-16-4
      • ImageNet (data loading):
        • VGG16
        • VGG19
        • Inception-v3
      • Tolstoi (data loading):
        • CharRNN
@fsschneider fsschneider added this to the 📦 Version 1.2.0 milestone Sep 17, 2019
@fsschneider fsschneider added ✨ Type: Feature Request New feature or request 👷 Status: In Progress Issue is being worked on labels Sep 17, 2019
@fsschneider
Copy link
Owner

We will do the following steps for version 1.2.0:

  • Add full support for PyTorch

Added to the first post.

@abahde
Copy link

abahde commented Sep 26, 2019

@fsschneider this list is correct at the time of merging my pull request. All ticks are correct.

@khizirsiddiqui
Copy link

Hey, is this still not resolved? and open for contributions?

@fsschneider
Copy link
Owner

Hey,
it is indeed only partially solved on the development branch or the pre-release 1.2.0-beta.
Most of the test problems are translated to PyTorch and are fully functioning (including the runner and all other necessities). But not all.

We are definitely open for contributions if you want to help us solve this issue.

@tvogels
Copy link

tvogels commented Oct 27, 2021

Hi! I'm looking forward to using this suite in PyTorch, and I'm happy to help a bit with the porting.

What's holding back the Tolstoi RNN task? I see there is both net_char_rnn and also a Tolstoi dataset, but no corresponding task.

Is there any particular challenge I am missing?

What is your procedure to test for equivalence between the TensorFlow and PyTorch implementations?

@fsschneider
Copy link
Owner

fsschneider commented Oct 27, 2021

Hi @tvogels,

great to here it!

There is actually a PR that introduces the Tolstoi RNN task to PyTorch: #40.

I am currently working on a refactoring of DeepOBS for a new release. This will then include the open PRs, and a full PyTorch implementation.
Unfortunately, my own dissertation has gotten in between my schedule. I don't have time to work on it in the next few weeks and can't offer a time estimation at the moment.

If you want to use DeepOBS for PyTorch, I would advise using the pre-release (or directly installing from the development branch). You can of course fork the entire repo to already use the Tolstoi PR if you wish.

@pratt3000
Copy link

Any updates? Will we have pytorch support anytime soon or has this become stale?

@fsschneider
Copy link
Owner

Hi @pratt3000,

the DeepOBS package is no longer maintained. I highly recommend using the AlgoPerf benchmark suite instead (I helped develop it). In my opinion, it is better in pretty much every aspect.

You can keep using DeepOBS, as is (we are also doing it for first prototypes). If you want to use PyTorch, I advise using the pre-release or directly installing it from the development branch. Although it doesn't support all aspects of the TensorFlow version of DeepOBS, it is usable. In our research, we use this version for initial experiments and use the AlgoPerf suite for more extensive experiments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
👷 Status: In Progress Issue is being worked on ✨ Type: Feature Request New feature or request
Projects
None yet
Development

No branches or pull requests

6 participants