GBMHyperparamètres de la lumière - Amazon SageMaker

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

GBMHyperparamètres de la lumière

Le tableau suivant contient le sous-ensemble des hyperparamètres requis ou les plus couramment utilisés pour l'algorithme Amazon SageMaker LightGBM. Les utilisateurs définissent ces paramètres pour faciliter l'estimation des paramètres du modèle à partir des données. L'GBMalgorithme SageMaker Light est une implémentation du GBM package open source Light.

Note

Les hyperparamètres par défaut sont basés sur des exemples de jeux de données dans le Carnets GBM d'échantillons légers.

Par défaut, l'GBMalgorithme SageMaker Light choisit automatiquement une métrique d'évaluation et une fonction objective en fonction du type de problème de classification. L'GBMalgorithme Light détecte le type de problème de classification en fonction du nombre d'étiquettes présentes dans vos données. Pour les problèmes de régression, la métrique d'évaluation correspond à la racine carrée de l'erreur quadratique moyenne et la fonction objective correspond à la perte L2. Pour les problèmes de classification binaire, la métrique d'évaluation et la fonction objective correspondent toutes deux à l'entropie croisée binaire. Pour les problèmes de classification multi-classes, la métrique d'évaluation correspond à l'entropie croisée multi-classes et la fonction objective à softmax. Vous pouvez utiliser l'hyperparamètre metric pour modifier la métrique d'évaluation par défaut. Reportez-vous au tableau suivant pour plus d'informations sur les GBM hyperparamètres Light, notamment les descriptions, les valeurs valides et les valeurs par défaut.

Nom du paramètre Description
num_boost_round

Nombre maximal d'itérations de renforcement. Remarque : En interne, Light GBM construit des num_class * num_boost_round arbres pour les problèmes de classification multiclasses.

Valeurs valides : nombre entier, plage : nombre entier positif.

Valeur par défaut : 100.

early_stopping_rounds

L'entraînement s'arrête si une métrique d'un point de données de validation ne s'améliore pas au cours du dernier cycle early_stopping_rounds. Si early_stopping_rounds est inférieur ou égal à zéro, cet hyperparamètre est ignoré.

Valeurs valides : entier

Valeur par défaut : 10.

metric

Métrique d'évaluation des données de validation. Si metric est défini sur la valeur "auto" par défaut, l'algorithme choisit automatiquement une métrique d'évaluation en fonction du type de problème de classification :

  • rmse pour une régression

  • binary_logloss pour une classification binaire

  • multi_logloss pour une classification multiclasse

Valeurs valides : chaîne, l'une des valeurs suivantes : ("auto", "rmse", "l1", "l2", "huber", "fair", "binary_logloss", "binary_error", "auc", "average_precision", "multi_logloss", "multi_error", "auc_mu" ou "cross_entropy").

Valeur par défaut : "auto".

learning_rate

Taux auquel les pondérations du modèle sont mises à jour après que chaque lot d'exemples d'entraînement a été parcouru.

Valeurs valides : float, plage : (0.0, 1.0).

Valeur par défaut : 0.1.

num_leaves

Nombre maximal de feuilles dans un arbre.

Valeurs valides : entier, plage : (1, 131072).

Valeur par défaut : 64.

feature_fraction

Sous-ensemble de caractéristiques à sélectionner à chaque itération (arbre). Il doit être inférieur à 1,0.

Valeurs valides : float, plage : (0.0, 1.0).

Valeur par défaut : 0.9.

bagging_fraction

Sous-ensemble de caractéristiques similaires à feature_fraction, mais bagging_fraction sélectionne de façon aléatoire une partie des données sans rééchantillonnage.

Valeurs valides : valeur à virgule flottante, plage : (0.0, 1.0).

Valeur par défaut : 0.9.

bagging_freq

Fréquence de bagging. À chaque bagging_freq itération, Light sélectionne GBM aléatoirement un pourcentage des données à utiliser pour l'bagging_freqitération suivante. Ce pourcentage est déterminé par l'hyperparamètre bagging_fraction. Si bagging_freq est zéro, le bagging est désactivé.

Valeurs valides : nombre, plage : nombre entier non négatif.

Valeur par défaut : 1.

max_depth

Profondeur maximale pour un modèle d'arbre. Elle est utilisée pour traiter le surajustement lorsque la quantité de données est faible. Si max_depth est inférieure ou égale à zéro, cela signifie qu'il n'y a pas de limite pour la profondeur maximale.

Valeurs valides : entier

Valeur par défaut : 6.

min_data_in_leaf

Quantité minimale de données dans une feuille. Peut être utilisée pour traiter le surajustement.

Valeurs valides : nombre, plage : nombre entier non négatif.

Valeur par défaut : 3.

max_delta_step

Utilisé pour limiter le nombre maximal de feuilles d'arborescence obtenues en sortie. Si max_delta_step est inférieur ou égal à 0, il n'y a pas de contrainte. Le nombre maximal de feuilles obtenues en sortie est learning_rate * max_delta_step.

Valeurs valides : valeur flottante.

Valeur par défaut : 0.0.

lambda_l1

Régularisation L1.

Valeurs valides : valeur à virgule flottante, plage : valeur à virgule flottante non négative.

Valeur par défaut : 0.0.

lambda_l2

Régularisation L2.

Valeurs valides : valeur à virgule flottante, plage : valeur à virgule flottante non négative.

Valeur par défaut : 0.0.

boosting

Type de renforcement

Valeurs valides : chaîne, l'une des valeurs suivantes : ("gbdt", "rf", "dart" ou "goss").

Valeur par défaut : "gbdt".

min_gain_to_split

Gain minimal pour effectuer une division. Peut être utilisé pour accélérer l'entraînement.

Valeurs valides : entier, valeur à virgule flottante : valeur à virgule flottante non négative.

Valeur par défaut : 0.0.

scale_pos_weight

Pondération des étiquettes avec une classe positive. Utilisé uniquement pour les tâches de classification binaire. scale_pos_weight ne peut pas être utilisé si is_unbalance a pour valeur "True".

Valeurs valides : valeur à virgule flottante, plage : valeur à virgule flottante positive.

Valeur par défaut : 1.0.

tree_learner

Type d'apprenant d'arborescence.

Valeurs valides : chaîne, l'une des valeurs suivantes : ("serial", "feature", "data" ou "voting").

Valeur par défaut : "serial".

feature_fraction_bynode

Sélectionne un sous-ensemble de caractéristiques aléatoires sur chaque nœud de l'arborescence. Par exemple, si feature_fraction_bynode est 0.8, 80 % des caractéristiques sont sélectionnées. Peut être utilisée pour traiter le surajustement.

Valeurs valides : entier, plage : (0.0, 1.0].

Valeur par défaut : 1.0.

is_unbalance

Définissez sur "True" si les données d'entraînement ne sont pas équilibrées. Utilisé uniquement pour les tâches de classification binaire. is_unbalance ne peut pas être utilisé avec scale_pos_weight.

Valeurs valides : chaîne, valeur : ("True" ou "False").

Valeur par défaut : "False".

max_bin

Nombre maximal de casiers utilisés pour regrouper les valeurs des caractéristiques. Un petit nombre de casiers peut réduire la précision de l'entraînement, mais peut améliorer les performances générales. Peut être utilisée pour traiter le surajustement.

Valeurs valides : entier, plage : (1, ∞).

Valeur par défaut : 255.

tweedie_variance_power

Contrôle la variance de la distribution Tweedie. Définissez-le plus près de 2.0 pour passer à une distribution Gamma. Définissez-le plus près de 1.0 pour passer à une distribution de Poisson. Utilisé uniquement pour les tâches de régression.

Valeurs valides : valeur à virgule flottante, plage : [1.0, 2.0).

Valeur par défaut : 1.5.

num_threads

Nombre de threads parallèles utilisés pour exécuter LightGBM. La valeur 0 signifie le nombre de threads par défaut dans OpenMP.

Valeurs valides : nombre, plage : nombre entier non négatif.

Valeur par défaut : 0.

verbosity

Niveau de détail des messages d'impression. Si verbosity est inférieur à 0, les messages d'impression montrent uniquement les erreurs fatales. Si verbosity a pour valeur 0, les messages d'impression incluent les erreurs et les avertissements. Si verbosity a pour valeur 1, les messages d'impression affichent plus d'informations. Si verbosity est supérieur à 1, les messages d'impression affichent le plus d'informations et peuvent être utilisés pour le débogage.

Valeurs valides : entier

Valeur par défaut : 1.