Tous les produits
Search
Centre de documentation

Platform For AI:XGBoost train

Dernière mise à jour :Aug 09, 2026

Entraînez des modèles de gradient boosting pour les tâches de classification et de régression à l'aide de l'algorithme XGBoost.

PAI étend la bibliothèque open source XGBoost en ajoutant la prise en charge du calcul distribué et l'intégration à la plateforme.

Ressources de calcul

Ressources de calcul prises en charge :

  • MaxCompute

  • Flink

  • Deep Learning Containers (DLC)

Formats de données

Formats d'entrée acceptés : Table ou LibSVM. Spécifiez-les via l'onglet Field Setting : utilisez featureCols pour le format Table, ou vectorCol pour le format LibSVM (ces options s'excluent mutuellement).

Format Table

Chaque ligne représente une instance d'entraînement. Les colonnes stockent les valeurs des caractéristiques et l'étiquette.

f0 f1 label
0.1 1 0
0.9 2 1

Format LibSVM

Chaque ligne contient des paires caractéristique-valeur clairsemées au format index:value. Exemple :

2:1 9:1 10:1 20:1 29:1 33:1 35:1 39:1 40:1 52:1 57:1 64:1 68:1 76:1 85:1 87:1 91:1 94:1 101:1 104:1 116:1 123:1
0:1 9:1 18:1 20:1 23:1 33:1 35:1 38:1 41:1 52:1 55:1 64:1 68:1 76:1 85:1 87:1 91:1 94:1 101:1 105:1 115:1 121:1
2:1 8:1 18:1 20:1 29:1 33:1 35:1 39:1 41:1 52:1 57:1 64:1 68:1 76:1 85:1 87:1 91:1 94:1 101:1 104:1 116:1 123:1
2:1 9:1 13:1 21:1 28:1 33:1 36:1 38:1 40:1 53:1 57:1 64:1 68:1 76:1 85:1 87:1 91:1 94:1 97:1 105:1 113:1 119:1
0:1 9:1 18:1 20:1 22:1 33:1 35:1 38:1 44:1 52:1 55:1 64:1 68:1 76:1 85:1 87:1 91:1 94:1 101:1 104:1 115:1 121:1
0:1 8:1 18:1 20:1 23:1 33:1 35:1 38:1 41:1 52:1 55:1 64:1 68:1 76:1 85:1 87:1 91:1 94:1 101:1 105:1 116:1 121:1

Configuration

Configurez le composant à l'aide de trois onglets :

  • Field Setting : structure des données d'entrée et emplacement de stockage du modèle

  • Parameter Setting : hyperparamètres de l'algorithme d'entraînement XGBoost

  • Execution Tuning : ressources d'entraînement distribué

Field Setting

Parameter Type Description
labelCol String Nom de la colonne d'étiquette.
featureCols String array Colonnes de caractéristiques au format Table. S'exclut mutuellement avec vectorCol. Nécessite des données d'entrée au format Table.
vectorCol String Nom de la colonne vectorielle au format LibSVM. S'exclut mutuellement avec featureCols. Nécessite des données d'entrée au format LibSVM.
weightCol String Nom de la colonne de pondération.
set the model file path String Chemin du bucket OSS pour stocker le modèle entraîné.

Parameter Setting

Hyperparamètres XGBoost standard.

Training objective

Parameter Type Default Description
The number of rounds for boosting Integer -- Nombre d'itérations de boosting.
objective String binary:logistic Tâche d'apprentissage et objectif d'apprentissage correspondant.
Base score Floating-point number 0.5 Biais global utilisé comme score de prédiction initial pour toutes les instances.
The number of classes Integer -- Nombre de classes. Requis pour la classification multiclasse.

Tree construction

Parameter Type Default Description
Tree Method String auto Algorithme de construction d'arbres. Valeurs valides : auto, exact, approx, hist.
Maximum depth of a tree Integer 6 Profondeur maximale de l'arbre. Des valeurs plus élevées augmentent la complexité du modèle et le risque de surapprentissage.
Max leaves Integer 0 Nombre maximal de nœuds feuilles. 0 signifie aucune limite.
Grow Policy String depthwise Stratégie d'ajout de nœuds. Valeurs valides : depthwise, lossguide.
Maximum number of discrete bins to bucket continuous features Integer 256 Nombre maximal de bacs discrets pour les caractéristiques continues. S'applique uniquement lorsque Tree Method est défini sur hist.
sketch_eps Floating-point number 0.03 Précision du binning dans l'algorithme de sketching. S'applique uniquement lorsque Tree Method est défini sur approx.

Regularization

Parameter Type Default Description
L1 regularization term on weights Floating-point number 0.0 Régularisation L1 sur les poids. Des valeurs plus élevées produisent des modèles plus conservateurs.
L2 regularization term on weights Floating-point number 1.0 Régularisation L2 sur les poids. Des valeurs plus élevées produisent des modèles plus conservateurs.
gamma Floating-point number 0.0 Réduction minimale de la perte requise pour une partition supplémentaire des nœuds feuilles.
Min child weight Floating-point number 1.0 Somme minimale des poids d'instance requise dans un nœud enfant.
Max delta step Floating-point number 0.0 Pas delta maximal par nœud feuille. Contrôle la granularité de la mise à jour du modèle.

Learning rate and sampling

Parameter Type Default Description
eta Floating-point number 0.3 Taux d'apprentissage. Des valeurs plus faibles améliorent la robustesse mais nécessitent davantage d'itérations de boosting.
scale_pos_weight Floating-point number 1.0 Ratio de pondération pour équilibrer les classes positives et négatives. Utile pour les jeux de données déséquilibrés.
Subsample ratio of the training instances Floating-point number 1 Fraction des instances d'entraînement échantillonnées avant chaque itération de boosting.
Sampling method String GRADIENT_BASED Méthode d'échantillonnage pour les instances d'entraînement. Valeurs valides : GRADIENT_BASED, UNIFORM.
Subsample ratio of columns for each level Floating-point number 1.0 Fraction de colonnes échantillonnées par niveau d'arbre.
Subsample ratio of columns for each node (split) Floating-point number 1.0 Fraction de colonnes échantillonnées par division de nœud.
Subsample ratio of columns when constructing each tree Floating-point number 1.0 Fraction de colonnes échantillonnées par arbre.

Constraints and distribution

Parameter Type Default Description
Interaction constraints String -- Groupes de caractéristiques autorisés à interagir.
Monotone constraints String -- Contraintes de monotonie par caractéristique.
Tweedie variance power Floating-point number 1.5 Puissance de variance de la distribution Tweedie. S'applique uniquement lorsque l'objectif utilise la distribution Tweedie.

Execution Tuning

Parameter Type Valid values Description
Number of Workers Positive integer [1, 9999] Nombre de nœuds workers. À configurer avec Memory per worker, unit MB.
Memory per worker, unit MB Positive integer [1024, 64 x 1024] Mémoire allouée par nœud worker, en Mo.

Exemple d'utilisation

Cet exemple illustre la classification XGBoost sur des données d'événements de boson de Higgs à l'aide d'un modèle prédéfini. Pour créer ce pipeline à partir du modèle Use XGBoost algorithm to identify the Higgs boson, consultez la rubrique Créer un pipeline à partir d'un modèle prédéfini.

Convertir le format de sortie pour l'évaluation

Le composant produit des chaînes JSON sérialisées issues de la bibliothèque open source XGBoost. Convertissez cette sortie pour permettre aux composants d'évaluation de traiter les prédictions.

Ajoutez un composant SQL Script en aval de XGboost Predict. Le script SQL convertit les prédictions au format requis par Binary classification Evaluation V2. Utilisez le code suivant :

set odps.sql.udf.getjsonobj.new=true;

select *, CONCAT("{\"0\":", 1.0-prob, ",\"1\":", prob, "}") as detail
FROM (
select *, cast(get_json_object(pred, '$[0]') as double) as prob FROM ${t1})

Références