Overview
XGBoost is a high-performance machine-learning library implementing gradient-boosted decision trees for classification and regression. It emphasizes efficient parallel execution and memory use, exposes APIs for Python, R, Java, and other languages, and can scale from one machine to distributed environments such as Spark and Dask.
Features and best fit
Based on official documentation; not hands-on tested · Content checked:
Train gradient-boosted trees efficiently
XGBoost adds decision trees sequentially to correct earlier errors, providing an optimized implementation of gradient boosting for common tabular classification and regression tasks.
Scale from one machine to distributed environments
The README documents operation across single-machine and distributed environments including Kubernetes, Hadoop, Spark, Dask, and others.
Sources: [2]
For strong tree-based baselines on tabular data
XGBoost is useful when comparing linear models, random forests, and boosted trees for structured numerical or encoded categorical features.
Control overfitting through tuning and cross-validation
Tree depth, learning rate, number of estimators, subsampling, and regularization can materially change both accuracy and overfitting. Use proper validation rather than training scores alone.
Sources: [4]
Official sources
- [1]dmlc/xgboost repository(2026-09-20)
- [2]XGBoost README(2026-09-20)
- [3]XGBoost Apache-2.0 license(2026-09-20)
- [4]XGBoost documentation(2026-09-20)
Supplemental curator note
XGBoost is often a strong baseline for classification and regression on tabular data, with efficient tree-based learning and distributed options. Performance and overfitting are sensitive to depth, learning rate, number of trees, and regularization, so tuning should be paired with cross-validation.
Try it in 3 steps
- 1
Install XGBoost
Install the released XGBoost package for its Python API.
python -m pip install xgboost - 2
Create a small classifier
Start with an explicit number of trees, depth, and learning rate, then verify the normal fit/predict workflow.
from xgboost import XGBClassifier; model=XGBClassifier(n_estimators=50, max_depth=3, learning_rate=0.1) - 3
Check generalization with cross-validation
Evaluate across folds before tuning further instead of relying on training scores alone.
Use StratifiedKFold + cross_val_score
Growth
Growth trends · Last 30 days
28,778 Stars
Trend data is still being collected.
Development activity
Last 90 days · weekly
- Commits (last 30 days)
- 43
- Open PRs
- 38
- Issues opened
- 55
- Issues closed
- 49
- PRs opened
- 261
- PRs merged
- 187
Issues
55 / 49
Pull requests
261 / 187
Maintenance
- Median first response
- 5.1 hr
- Issue response rate
- 54.5% (18/33)
Based on up to the 100 newest issues opened by external users in the last 90 days. A first comment from an OWNER, MEMBER, or COLLABORATOR counts as a response; issues whose full comment history cannot be checked are excluded. The median and response rate update weekly.
Built with
Categories and tags
Categories
GitHub data
GitHub dataView detailed GitHub data
GitHub Topics
- gbdt
- gbrt
- gbm
- distributed-systems
- xgboost
- machine-learning
- Stars
- 28,778
- Forks
- 8,901
- Watchers
- 886
- Open issues
- 404
- Contributors
- 398
- Primary language
- C++
- License
- Apache-2.0
- Repository last updated
- Sep 18, 2026
Related information
Write a related articleShare a guide or use case for this OSS in Markdown. Articles are published after administrator approval.
Explore next
- Apache Superset74,847 Stars
An open-source BI platform with no-code charts, SQL Lab, a semantic layer, and broad SQL data-source connectivity.
Python - OpenBB73,262 Stars
An open financial data platform that exposes multiple providers to Python, REST APIs, MCP, analysts, quants, and AI agents.
Python - scikit-learn67,305 Stars
A Python ML library unifying preprocessing, classification, regression, clustering, model selection, and evaluation.
Python - pandas49,751 Stars
A Python DataFrame library for missing values, joins, aggregation, reshaping, time series, and tabular I/O.
Python - Apache Spark44,014 Stars
A large-scale data-processing engine unifying SQL, DataFrames, batch, streaming, and machine learning.
Scala
Report incorrect information
Tell us if any listing information is incorrect or outdated.