Giter Site home page Giter Site logo

Comments (5)

csala avatar csala commented on May 29, 2024 1

Hi @Baukebrenninkmeijer

Thanks for the suggestion. Indeed, epochs could be moved to the fit method, as you might want to call fit multiple times with different epoch numbers.

However, I would not move the other arguments to the fit method, as they are values inherently related to the model instance, in the sense that you don't want to change them between fit calls.

Can we restrict this issue to epochs only?

Opinions @ManuelAlvarezC @leix28 ?

from tgan.

Baukebrenninkmeijer avatar Baukebrenninkmeijer commented on May 29, 2024

Hi, I opened this from #22, where @ManuelAlvarezC asked me to create a new issue.

I agree that batch_size is not the best example, cause it changes the model. However, I do think there are more parameters than just epochs that are best suited in the fit call, take for example learning rate, batches per epoch, and whether to save and/or restore checkpoints. I think that might also be all of them. Thoughts?

from tgan.

csala avatar csala commented on May 29, 2024

Hi, I opened this from #22, where @ManuelAlvarezC asked me to create a new issue.

Yes, I saw it! It was just to comment a bit and enrich the discussion.

I agree that we could put more things, not only epochs. But the things we put should be only those that you might want to change. Perhaps we can list candidates here?

About the ones you said, the batches per epoch and the and the learning rate are things that might change the overall convergence of the model, so I don't see them as things that you change in the middle of a fitting process. You start with one value and keep it until the end.

Saving and restoring could be there, I see no harm on that, but I do not see why this would be useful either, especially restore. You tell TGAN to either start from scratch or recover from a checkpoint when you create the TGAN instance, and from there, if you call fit multiple times you should always restore and continue from the previous call.
If you want to start from scratch again, you just create a new instance, as you want it to be completely unrelated to the previous one.

from tgan.

ManuelAlvarezC avatar ManuelAlvarezC commented on May 29, 2024

Hi,

Thanks for open the issue @Baukebrenninkmeijer.

About the subject of discussion:

I think that moving max_epochs and steps_per_epoch to the fit method could make sense, however, I have to agree with @csala about restore_session and save_checkpoints that even if it can be done it doesn't seem specially useful.

Any other candidate to be moved to .fit()?

from tgan.

Baukebrenninkmeijer avatar Baukebrenninkmeijer commented on May 29, 2024

Hmm, I would like to add my perspective on not including the restore_checkpoints, lr and save_checkpoints. I see your point on them, which makes sense in classic development methods, but as someone who works almost exclusively in notebooks, having the .fit call have the flexibility to experiment with different settings at run time is very useful. Most notably, the lr parameters is very useful to quickly try out multiple different learning rates.

from tgan.

Related Issues (20)

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.