Code Monkey home page Code Monkey logo

Comments (8)

gautambak avatar gautambak commented on May 17, 2024 1

I'm learning also so I can't be too much help but I think you can experiment with different settings and datasets then see if they make sense to you?

As for memory, try google colab you can add the line !pip install ctgan - you can get more memory + a gpu for free.

from ctgan.

apavlo89 avatar apavlo89 commented on May 17, 2024 1

I'm learning also so I can't be too much help but I think you can experiment with different settings and datasets then see if they make sense to you?

As for memory, try google colab you can add the line !pip install ctgan - you can get more memory + a gpu for free.

Wow, that is totally amazing! THANKS!

from ctgan.

csala avatar csala commented on May 17, 2024

Hello @apavlo89

The default number of epochs is 300.

If you want to know the default values for this and other arguments you can have a look at the API Reference section in our documentation: https://sdv-dev.github.io/CTGAN/api/ctgan.synthesizer.html#ctgan.synthesizer.CTGANSynthesizer

from ctgan.

apavlo89 avatar apavlo89 commented on May 17, 2024

Thank you very much! Is there a specific reason for choosing 300 epochs as the default? Is there some kind of optimum metric for the number of epochs based on the database?

from ctgan.

gautambak avatar gautambak commented on May 17, 2024

Thank you very much! Is there a specific reason for choosing 300 epochs as the default? Is there some kind of optimum metric for the number of epochs based on the database?

I assumed it was just a default number.

Not sure if this helps but in the demo in the readme you can set the epochs by ctgan.fit(data, discrete_columns, epochs=5)
or in the CTGANSynthesizer class you can adjust it within the fit function. Maybe play with the epochs to see what works best for your data?

from ctgan.

apavlo89 avatar apavlo89 commented on May 17, 2024

I'm quite new to machine learning especially in network techniques so would you say there's a pattern to look for in each/after a few epochs? What am I aiming for? I'd say after epoch 150 my Loss D and Loss G values were hovering around a specific range of values.

My computer then ran out of RAM at 215 epochs. In Epoch 215 the Generator Loss and Discriminator Loss was: G: 1.6974, Loss D: -77.0800.

It gave me the error DefaultCPUAllocator: not enough memory: you tried to allocate 2709625764 bytes. Buy new RAM! :(

from ctgan.

csala avatar csala commented on May 17, 2024

Thank you very much! Is there a specific reason for choosing 300 epochs as the default? Is there some kind of optimum metric for the number of epochs based on the database?

The default values for the model hyperparameters are, in most cases, the ones that were used to generate the results on the paper.

Regarding the value 300 in particular, the number was decided based on the performance obtained on the different datasets that were used for benchmarking, but different datasets might require different settings. In most cases, a lower number of epochs, of just a few dozens, can be more than enough to explore a particular problem a bit faster and get an idea of what the model can do on your data. However, if you want to get the most out of the model, you will probably need to tweak it a little bit and find the optimal value for each dataset you work on.

It gave me the error DefaultCPUAllocator: not enough memory: you tried to allocate 2709625764 bytes. Buy new RAM! :(

Yeah, that's indeed quite an annoying error message to get, but it comes directly from PyTorch. There isn't much that we can do about it!

from ctgan.

csala avatar csala commented on May 17, 2024

Closing this, as the question has already been responded.

from ctgan.

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.