Comments (13)
@yupbank In fact, the link is quite relevant in that someone already suggested a Javascript backend.
from treelite.
Any progress on the R package yet? @hcho3
from treelite.
No R package planned?
from treelite.
@pommedeterresautee For now I'm pushing its addition to after the public release.
from treelite.
If there is native xgboost support, then likely we only need two functions, compile and predict, righ @hcho3 ?
from treelite.
@tqchen That's correct. The pred_transform
function was referring to an internal interface. On the outside, you'd still have compile
and predict
. The latest commit adds the option to transform margins into probabilities.
I'm very close to finalizing Python interface (probably tonight).
from treelite.
this might be interesting for you ?
i can make the template for xgboost actually
from treelite.
@yupbank This is interesting indeed. Thanks for the link. I really like their use of templates to support multiple back-end languages.
One issue with XGBoost is that XGBoost models don't expose their internal representations on Python side. So you'd need to write C code to interact with XGBoost.
from treelite.
@hcho3: Can you share any sample prediction times for the treelite compiled models vs their reference implementations? I'm very interested in how the XGBoost Boston Housing samples from the documentation performs, for example. I realize this may vary wildly depending on the model, parameters, and architecture, but it would be very interesting to see a few data points. Thanks!
UPDATE: 7d8b88e
from treelite.
Was thinking to it recently too...
On R you can compile C++ on fly with Rcpp, does it make sense with this package?
In that case it would be much more easier to perform than on Python (because everything required is already managed by R devtools)
from treelite.
The big point about reticulate is that you are forcing R users to have a working Python installation. Am I right?
from treelite.
@pommedeterresautee Yea, I think it might not worth using it then given this project is primarily based on C unlike Keras, etc.
from treelite.
I don't have a definite time estimate yet, but an R package is definitely on my to-do list. (In fact, that is why treelite was designed to accommodate random forests.) I've been lately busy writing a workshop paper on treelite. I'm not exactly familiar with R, so it may take some time to add R support.
from treelite.
Related Issues (20)
- [Doc] Document Treelite serialization format. HOT 1
- Add first-class support for multi-output models in Treelite 4.0
- API refactors
- Documentation for library writers HOT 1
- treelite prediction 4x slower than xgboost HOT 3
- Document that Left child is chosen when condition is evaluated True
- Use std::variant to implement type-based dispatching
- Do not call np.squeeze on output of predict_leaf() / predict_per_tree() HOT 1
- treelite::ConcatenateModelObjects() ought to set threshold_type and leaf_output_type fields
- Clean up serialization logic
- Support XGBoost gblinear Booster HOT 1
- Release version 3.3.0
- Release version 3.4.0
- Replace setup.py with pyproject.toml
- Treelite crashes with XGBoost 2.0 dev
- Document Treelite serialization format.
- Adopt Four-Document System to organize docs
- Refactor sklearn loader using mix-in classes
- Implement v4 serialization format
- Revamp JSON importer to make it easy to use
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from treelite.