New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OOM/SegFault issues? #25
Comments
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 I will check in the next week if there is some leak. And meanwhile, I'm happy to answer any questions you may have. |
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
I'm going to try and fix it in the mean time. |
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. |
PLTs train extremely quickly using this implementation which is fantastic to see. However, I have run into a few issues when training on larger datasets:
The text was updated successfully, but these errors were encountered: