Code Monkey home page Code Monkey logo

Comments (5)

Jimmy-Lin avatar Jimmy-Lin commented on September 6, 2024 1

Hi @mnaylor5! Sorry for the late response to this issue.

It appears this is a bug caused by the polling frequency of the optimizer, this is controlled by a configuration in src/optimizer.hpp:88
The tick-duration member controls how many iterations the optimizer goes through before checking the time.
Since iterations were very fast for our experiments, 10000 iterations per check was a suitable balance between not spending too much time checking the clock and still stopping reasonably close to the desired time limit.

For the dataset you provided, it appears the iterations can be much slower which is likely due to the large branching factor. So checking every 10000 iterations wouldn't work very well. As an immediate solution I was able to get a more reasonable stopping precision with a tick-duration of 10 iterations. (Simply change the 1000 to 10 src/optimizer.hpp:88) and recompile the program.

This should fix things for your specific case. I'll try to think about what might be a more general solution.

from generalizedoptimalsparsedecisiontrees.

abhishek-ghose avatar abhishek-ghose commented on September 6, 2024

Hi @mnaylor5,

Did you manage a way to fix or workaround this issue? I am also trying out the library and noticing that the time limit setting is ignored. I am running Ubuntu 10.04.

from generalizedoptimalsparsedecisiontrees.

mnaylor5 avatar mnaylor5 commented on September 6, 2024

Hi @abhishek-ghose, sorry for the slow response. I have not figured out a workaround - I've been using other optimal tree libraries instead.

from generalizedoptimalsparsedecisiontrees.

abhishek-ghose avatar abhishek-ghose commented on September 6, 2024

Thank you @mnaylor5!

from generalizedoptimalsparsedecisiontrees.

mnaylor5 avatar mnaylor5 commented on September 6, 2024

Hey @Jimmy-Lin - thanks for the response! I made the change you suggested, and it seems to successfully enforce the time limit.

This seems to lead to a couple of other issues. First, there seems to be a memory leak or something causing excessive RAM usage. This dataset is pretty small (614 observations in the training set, 8 continuous features, and a binary classification target), but a training run with a 1hr time limit uses ~190GB of RAM. The second is that I'm still getting the exact same basic tree as the output of that 1hr run on a larger machine (32 cores and 208GB RAM) - is this expected? I would think that it should have improved from the initial tree within an hour of searching, but this doesn't seem to be the case.

Any advice would be greatly appreciated! Thanks again!

from generalizedoptimalsparsedecisiontrees.

Related Issues (12)

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.