Git Product home page Git Product logo

torchtraining's Introduction

๐Ÿ‘‹ Hi there!

Hey, I'm Simon, from time to time I create open source projects (mostly Machine Learning) and try to help on StackOverflow.

full mail github stackoverflow linkedin scholar kaggle

Contact

Please do not hesitate to contact me via:

torchtraining's People

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

klaudiapalasz

torchtraining's Issues

[DISCUSSION] callbacks integration

Currently two tools (comet-ml and neptune.ai) are integrated as third party experiment savers/loggers.

Other tools we would like to integrate with:

You can see current work in callbacks module

TO-DO BEFORE 0.1.0 RELEASE:

  • Integration tests before 0.1.0 release
  • Implementation of the above two integrations

Other suggestions for similar integrations are more than welcome. Also if you have an idea for other non-experiment logging callbacks worth checking out (and possibly integrating), list those below as well, thanks.

[DISCUSSION] accelerators.py module

What and why

pytorch-lightning has separate module responsible for accelerating PyTorch's training (multi-GPU, distributed across multiple nodes etc.).

Obviously users would benefit from similar functionality.

API

Currently torchtrain.steps, torchtrain.iterations, torchtrain.epochs cannot have anything piped into it, e.g. this is not allowed:

class TrainStep(tt.steps.Train):
    def forward(self, module, sample):
        ...
        return loss, predictions, labels

# This would make no sense
tt.metrics.regression.SquaredError() > TrainStep(criterion, device)

On the other hand accelerators would fit quite nicely here (I think):

class TrainStep(tt.steps.Train):
    def forward(self, module, sample):
        ...
        return loss, predictions, labels

# This way
tt.accelerators.PyTorch(...) > TrainStep(criterion, device)
# or this way
TrainStep(criterion, device) < tt.accelerators.PyTorch(...)

Current stage

TO-DO BEFORE 0.1.0:

Discussion

  • What other accelerators would be reasonable?
  • How other accelerators fit in this library? Are custom steps, iterations needed? How (un)flexible those are?
  • What should the API for them be? Currently tt.accelerators.Horovod just has to be created, no need to pipe it into anything (though it's left like that for clarity).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.