Giter VIP home page Giter VIP logo

Comments (3)

mwydmuch avatar mwydmuch commented on June 1, 2024 2

Hi @ASharmaML, indeed, there was a typo causing the error. It's fixed now, the new release should work as expected. Thank you very much for spotting and reporting it.

from napkinxc.

mwydmuch avatar mwydmuch commented on June 1, 2024 1

Hi @ASharmaML, sorry for the long response time and thank you for opening the issue.

If by batching you mean training using a small subset of training examples, then this is actually more problematic than loading the whole dataset since storing all weights (for all trees and their nodes) in the memory for training usually requires much more resources than storing the whole dataset in spars format. Internally the model is trained node by node, and once a node is trained its weights are stored in the file, and training of the next node begins. Later it can be loaded in a sparse format for efficient prediction.

The problem with Python bindings at the moment is that the data in the Python format (scipy matrix/numpy array) needs to be copied to the internal format on C++ side, which simply doubles the memory requirement when using Python bindings and can cause OOM error on large datasets. The solution for that at the moment is to save data to the file and use the fit_on_file method.

I will check in the next week if there is some leak. And meanwhile, I'm happy to answer any questions you may have.

from napkinxc.

ASharmaML avatar ASharmaML commented on June 1, 2024

Thanks so much for responding, all of the above makes sense RE batching as the method itself going node by node doesn't allow for it.

Does the fit_on_file method work with the Python binding currently? As when I try and invoke it I get the following error:

AttributeError: 'napkinxc._napkinxc.CPPModel' object has no attribute 'fitOnFile'

I'm going to try and fix it in the mean time.

from napkinxc.

Related Issues (10)

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.