DMLC/XGBoost
An optimized general purpose gradient boosting library. The library is parallelized, and also provides an optimized distributed version. It implements machine learning algorithms under the Gradient Boosting framework, including Generalized Linear Model (GLM) and Gradient Boosted Decision Trees (GBDT). XGBoost can also be distributed and scale to Terascale data
Contributors: https://github.com/dmlc/xgboost/graphs/contributors
Documentations: Documentation of dmlc/xgboost
Issues Tracker: https://github.com/dmlc/xgboost/issues
Please join XGBoost User Group to ask questions and share your experience on xgboost.
- Use issue tracker for bug reports, feature requests etc.
- Use the user group to post your experience, ask questions about general usages.
Distributed Version: Distributed XGBoost
Highlights of Usecases: Highlight Links
XGBoost is part of Distributed Machine Learning Common projects
What's New
- XGBoost-0.4 release, see CHANGES.md
- XGBoost wins WWW2015 Microsoft Malware Classification Challenge (BIG 2015)
- Checkout the winning solution at Highlight links
- External Memory Version
Contributing to XGBoost
XGBoost has been developed and used by a group of active community. Everyone is more than welcomed to is a great way to make the project better and more accessible to more users.
- Checkout Feature Wish List to see what can be improved, or open an issue if you want something.
- Contribute to the documents and examples to share your experience with other users.
Features
- Easily accessible in python, R, Julia, CLI
- Fast speed and memory efficient
- Can be more than 10 times faster than GBM in sklearn and R
- Handles sparse matrices, support external memory
- Accurate prediction, and used extensively by data scientists and kagglers
- See highlight links
- Distributed and Portable
- The distributed version runs on Hadoop (YARN), MPI, SGE etc.
- Scales to billions of examples and beyond
Build
- Run
bash build.sh
(you can also type make)- Normally it gives what you want
- See Build Instruction for more information
Version
- Current version xgboost-0.4, a lot improvment has been made since 0.3
- Change log in CHANGES.md
- This version is compatible with 0.3x versions
XGBoost in Graphlab Create
- XGBoost is adopted as part of boosted tree toolkit in Graphlab Create (GLC). Graphlab Create is a powerful python toolkit that allows you to data manipulation, graph processing, hyper-parameter search, and visualization of TeraBytes scale data in one framework. Try the Graphlab Create in http://graphlab.com/products/create/quick-start-guide.html
- Nice blogpost by Jay Gu using GLC boosted tree to solve kaggle bike sharing challenge: http://blog.graphlab.com/using-gradient-boosted-trees-to-predict-bike-sharing-demand