Découvrez XGBoost, l'algorithme de machine learning puissant, rapide et polyvalent pour des prédictions précises dans les tâches de classification et de régression.
XGBoost, ou Extreme Gradient Boosting, est une bibliothèque logicielle hautement optimisée et flexible qui met en œuvre le cadre de l'augmentation du gradient. gradient boosting. Elle est largement reconnue dans le domaine de l 'apprentissage automatique (ML) pour sa vitesse et ses et ses performances exceptionnelles, en particulier avec des données structurées ou tabulaires. Initialement développé dans le cadre d'un projet de recherche à l l 'Université de Washington, XGBoost est devenu un élément essentiel de la science des données en raison de sa capacité à traiter des données à grande échelle. données en raison de sa capacité à traiter des ensembles de données à grande échelle et à obtenir des résultats de pointe dans les concours de science des données, tels que ceux organisés par le KOFF. compétitions de science des données telles que celles organisées sur Kaggle. Il fonctionne comme une méthode d'ensemble, combinant les prédictions de plusieurs modèles faibles pour créer un modèle fort et robuste. plusieurs modèles faibles pour créer un apprenant fort et robuste.
Le principe de base de XGBoost est le renforcement du gradient, une technique dans laquelle de nouveaux modèles sont ajoutés séquentiellement pour corriger les erreurs commises par les modèles existants. Plus précisément, il utilise des arbres de décision comme apprenants de base. Contrairement à l'algorithme standard, XGBoost optimise le processus d'apprentissage à l'aide d'une fonction objective spécifique qui combine une fonction de perte convexe (mesurant la différence entre le nombre d'arbres de décision et le nombre d'arbres de décision). convexe (mesurant la différence entre les valeurs les valeurs prédites et les valeurs réelles) et un terme de régularisation (pénalisant la complexité du modèle). terme de régularisation (pénalisant la complexité du modèle).
XGBoost améliore la méthode traditionnelle de renforcement du gradient grâce à plusieurs optimisations du système :
En raison de son évolutivité et de son efficacité, XGBoost est déployé dans diverses industries pour des tâches de prise de décision critiques. de prise de décision.
Pour comprendre la place de XGBoost dans le paysage de la ML, il faut le distinguer des autres algorithmes populaires.
L'exemple Python suivant montre comment former un classificateur simple à l'aide de la fonction xgboost sur un jeu de données
données synthétiques. Ceci illustre la facilité d'intégration de XGBoost dans une bibliothèque standard de
science des données flux de travail.
import xgboost as xgb
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split
# Create a synthetic dataset for binary classification
X, y = make_classification(n_samples=1000, n_features=20, random_state=42)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
# Initialize and train the XGBoost classifier
model = xgb.XGBClassifier(n_estimators=100, learning_rate=0.1, max_depth=3)
model.fit(X_train, y_train)
# Display the accuracy on the test set
print(f"Model Accuracy: {model.score(X_test, y_test):.4f}")
Pour en savoir plus sur les fondements mathématiques, le document de recherche le document de recherche original XGBoost fournit une explication approfondie de la conception du système . conception du système. En outre, les utilisateurs intéressés par les applications de les applications de vision artificielle (CV) devraient explorer comment les modèlesYOLO d 'Ultralytics complètent les modèles tabulaires en gérant données visuelles.