gbnet
gbnet copied to clipboard
Improve CatModule Speed
CatModule (in experimental/catmodule.py), which relies on catboost as its gbdt backend, does not have performant updates and thus, for larger problems, can be computationally infeasible. It is also just generally significantly slower than equivalent catboost functionality. This appears to come down to two things:
- Inability to cache predictions, so forward steps taking increasing time per training round (instead of constant-time updates)
- Inability to efficiently update booster objects, perhaps related to caching as well. Potentially there are ways around this that I am not aware of currently.
Related issues: #11 https://github.com/catboost/catboost/issues/2704