Git Product home page Git Product logo

Comments (5)

partiallycomplex avatar partiallycomplex commented on May 27, 2024 1

Hi @ThomasBury,
I agree with leaving default parameters, except what you mentioned. Actually class_weight could be skipped by setting is_unbalance=True in the LGBMClassifier

from arfs.

ThomasBury avatar ThomasBury commented on May 27, 2024

Hi @partiallycomplex

Thank you for your kind words.

It is indeed a good idea to limit the depth, to avoid using "specific" models in the selection process. The idea is to avoid overfitting and keep the default parameters of lightGBM as is. The authors said that the default values guarantee sane but good behaviour in most cases.

For instance, the depth is not restricted (-1) but the max number of leaves is set to 31. In most cases, it avoids overfitting. The number of estimators is by default set to 100. You could decrease it a bit if you think it leads to overfitting.

The only parameters I'd change are:

  • the loss (according to the task)
  • the sample_weight (if any)
  • the class_weight if dealing with unbalance classification.

You can also compare the results to GrootCV which is more robust (cross-validated).
I'll try to add this in the doc, which is now live on ReadTheDocs btw ^^

from arfs.

ThomasBury avatar ThomasBury commented on May 27, 2024

Hi @ThomasBury,
I agree with leaving default parameters, except what you mentioned. Actually class_weight could be skipped by setting is_unbalance=True in the LGBMClassifier

Yes, both can be used for unbalanced classification. Whatever works best for your project 🙂

from arfs.

notuntoward avatar notuntoward commented on May 27, 2024

Hi @ThomasBury, class_weight is needed for multi-class classification, though.

from arfs.

ThomasBury avatar ThomasBury commented on May 27, 2024

Hi @ThomasBury, class_weight is needed for multi-class classification, though.

it is, you can use it without any problem for multi-class (Even for binary + imbalance, I'd personally use class_weight, it often leads to better results with a custom weighting vs the class proportional weighting of is_unbalanced)

from arfs.

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.