Skip to main content

Classification tool icon Outil Classification

Utilisez l'outil Classification dans le cadre d'un pipeline de machine learning pour identifier la catégorie à laquelle appartient une cible. L'outil fournit plusieurs algorithmes que vous pouvez utiliser pour entraîner un modèle. L'outil vous permet également de régler un modèle en utilisant de nombreux paramètres.

Alteryx Intelligence Suite requis

Cet outil fait partie de Alteryx Intelligence Suite . Intelligence Suite nécessite une licence séparée et un programme d'installation complémentaire pour Designer. Après avoir installé Designer, installez Intelligence Suite et commencez votre essai gratuit .

Configuration de l'outil

Cette section contient des informations sur comment configurer l'outil Classification.

Sélection d'un algorithme

Sélectionnez l'algorithme que vous souhaitez utiliser. Vous pouvez choisir Régression logistique , Arbre de décision , Forêt aléatoire ou XGBoost .

Configuration des paramètres

Configurez les paramètres. Chaque algorithme a des paramètres différents des autres algorithmes. Chaque algorithme a également des paramètres généraux et avancés. Les paramètres généraux font partie intégrante de la création d'un modèle précis, même pour les débutants. Les paramètres avancés peuvent améliorer la précision, mais nécessitent une compréhension approfondie de ce que chaque paramètre fait.

Référencez-vous à la table de chaque algorithme pour voir ce que les paramètres font :

Nom

Description

Options

Par défaut

class-weight

Le paramètre class_weight attribue des poids aux différentes classes du jeu de données. Certains algorithmes surestiment les classes prédominantes, ce qui entraîne des déséquilibres. Ce paramètre permet d'équilibrer les classes dans le jeu de données en attribuant un poids supplémentaire aux classes minoritaires.

  • none

  • balanced

none

fit_intercept

Décidez si vous souhaitez que l'algorithme calcule l'interception de votre modèle de régression linéaire. Aussi connu sous le nom de « constante », l'interception est la valeur moyenne attendue de y x égale 0.

  • false

  • intercept_scaling

intercept_scaling  : 1,0

max_iter

Le paramètre max_iter spécifie le nombre maximal d'itérations pour permettre aux solvers de converger. Les modèles les plus itératifs capturent plus d'informations sur les données.

Tout nombre entier.

100

multi_class

Le paramètre multi_class spécifie si l'algorithme doit traiter plus de deux classes.

  • L'option auto sélectionne automatiquement soit multinomial ou ovr.

  • L’option multinomiale est capable de gérer la classification multiclasse ou binaire.

  • L’option ovr est capable de gérer la classification binaire.

auto

penalty

Le paramètre penalty , aussi connue sous le nom de « régularisation », fait référence à la pratique consistant à modifier la fonction de perte pour pénaliser certaines valeurs que le modèle surévaluerait autrement. l1 (régression Lasso) et l2 (régression Ridge) sont deux méthodes pour spécifier la durée de la pénalité.

  • L'option l1 aide à trouver les caractéristiques les plus importantes dans les jeux de données avec de nombreuses caractéristiques en définissant certains poids sur 0.

  • L'option l2 aide toutes les caractéristiques à contribuer au modèle en s'assurant que les poids soient différents sur zéro.

l2

dual

Le paramètre dual transforme un problème d’optimisation primaire en un double problème.

  • false

  • true *

Vous ne pouvez utiliser true que si vous sélectionnez l'option l2 pour penalty et liblinear pour solver .

false 

random_state

Le paramètre random_state spécifie le nombre de départ pour générer une séquence pseudo-aléatoire. Si vous sélectionnez none , un générateur de nombre aléatoire choisit un numéro de départ.

  • int

  • none

int  : 10

solver

Le paramètre solver est la méthode utilisée par la régression logistique pour optimiser sa courbe afin de mieux s’ajuster aux données en déterminant les poids sigmoïdes.

  • liblinear  : utilisez cette méthode pour les jeux de données plus petits, auxquels vous souhaitez appliquer une pénalité. La méthode liblinear nécessite une pénalité.

  • sag  : utilisez cette méthode pour des jeux de données plus importants, auxquels vous souhaitez appliquer une pénalité l2 ou aucune pénalité.

  • saga  : utilisez cette méthode pour des jeux de données plus importants, auxquels vous souhaitez appliquer une pénalité l1 ou aucune pénalité.

  • lbfgs  : utilisez cette méthode pour des jeux de données plus petits, auxquels vous souhaitez appliquer une pénalité l2 ou aucune pénalité.

  • newton-cg  : utilisez cette méthode pour des jeux de données plus petits, auxquels vous souhaitez appliquer une pénalité l2 ou aucune pénalité.

liblinear

tol 

Le paramètre tol définit les critères d’arrêt pour le moment où l’algorithme doit détecter que les paramètres sont suffisamment proches de la convergence (en d’autres termes, restent constants).

Tout nombre flottant positif.

.0001

C

Le paramètre C ( Régularisation Tuner ) vous permet d'ajuster le niveau de pénalité (en d'autres termes, la régularisation) que vous appliquez, en limitant efficacement les caractéristiques qui sont fortement pondérées par le modèle. Définissez ce paramètre comme un nombre flottant positif.

Tout nombre flottant positif.

1.0

Nom

Description

Options

Par défaut

class-weight

Le paramètre class_weight attribue des poids aux différentes classes du jeu de données.

  • none

  • balanced

none

criterion

Utilisez le paramètre criterion pour sélectionner une méthode pour mesurer la façon dont l’algorithme Arbre de décision divise les données en différents nœuds.

  • gini

  • entropy

gini

max_depth

Le paramètre max_depth est le chemin le plus long d'une racine à une feuille d'un arbre. Les plus profonds arbres ont plus de fractionnements et capturent plus d'informations sur les données.

  • none  : les nœuds s’étendent jusqu’à ce que tous les nœuds de feuilles soient purs (en d’autres termes, se composent complètement de données appartenant à une seule classe) ou jusqu’à ce que tous les nœuds de feuilles contiennent moins que ce que vous spécifiez dans le paramètre min_samples_split.

  • int  : limite l’expansion par fractionnement.

none

max_features

Le paramètre max_features définit le nombre maximal de caractéristiques que l'arbre de décision prend en compte lors de la recherche du meilleur premier fractionnement.

  • auto  : évalue un nombre de caractéristiques égale au nombre total de caractéristiques dans le jeu de données.

  • none  : évalue un nombre de caractéristiques égale au nombre total de caractéristiques dans le jeu de données.

  • sqrt  : évalue un certain nombre de caractéristiques égales à la racine carrée du nombre total de caractéristiques dans le jeu de données.

  • log2  : évalue un certain nombre de caractéristiques égales au logarithme binaire du nombre total de caractéristiques.

  • int  : évalue un nombre de caractéristiques à chaque fractionnement égal au nombre que vous sélectionnez.

  • float  : évalue un nombre de caractéristiques égale à une fraction sélectionnée par l’utilisateur du nombre total de caractéristiques.

auto

max_leaf_nodes

Le paramètre max_leaf_nodes est la limite supérieure du nombre total de nœuds de feuilles que votre algorithme peut générer. Il développe des nœuds jusqu’au nombre maximum de la manière best-first (le meilleur en premier). L’algorithme détermine quels nœuds sont les meilleurs en fonction de leur capacité de réduction des impuretés. Utilisez le paramètre criterion pour spécifier comment vous voulez mesurer la réduction de l’impureté.

Tout nombre entier (int) ou ( none ).

none

min_impurity_decrease

Le paramètre min_impurity_decrease définit le seuil minimal de réduction des impuretés requis pour que l’arbre de décision se divise en un nouveau nœud. Ainsi, un fractionnement se produit où il diminuerait l’impureté par une quantité égale ou supérieure à min_impurity_decrease. Utilisez le paramètre criterion pour spécifier comment vous voulez mesurer la réduction de l’impureté.

Tout nombre flottant

0.0

min_sample_split

Le paramètre min_samples_split définit le seuil minimal d’échantillons requis pour que l’arbre de décision se divise en un nouveau nœud. L’algorithme peut considérer un seul échantillon ou tous les échantillons.

Tout nombre entier (int) ou fraction (float).

int  : 2

min_weight_fraction_leaf

Le paramètre min_weight_fraction_leaf est le seuil minimum de poids nécessaire pour que l'arbre de décision se fractionne en un nouveau nœud. Ce seuil est égal à la fraction minimale du poids total pour tous les échantillons. L'algorithme Arbre de décision suppose des poids égaux par défaut.

Tout nombre flottant

0.0

presort 

Utilisez ce paramètre pour pré-trier les données, ce qui pourrait aider l’algorithme à trouver les meilleures fractionnements plus rapidement.

  • true

  • false

false

random_state

Le paramètre random_state spécifie le nombre de départ pour générer une séquence pseudo-aléatoire. Si vous sélectionnez none , un générateur de nombre aléatoire choisit un numéro de départ.

  • int  : sélectionnez un nombre entier pour le générateur de nombres aléatoires.

  • none  : pas de répétabilité.

int  : 10

splitter

Le paramètre splitter est la stratégie utilisée pour fractionner un nœud. Il comprend des options pour le meilleur premier fractionnement et le meilleur fractionnement aléatoire. L’algorithme détermine quels nœuds sont les meilleurs en fonction de leur capacité de réduction des impuretés.

  • best  : nécessite plus de puissance de calcul et comporte le risque de surajustement.

  • random  : le mode aléatoire peut trouver des chemins à travers l’arbre si certaines associations ont des signaux faibles.

best

Nom

Description

Options

Par défaut

bootstrap

Le bootstrapping, la base de l’ensachage, est une méthode utilisée pour échantillonner le jeu de données à des fins d'entraînement. Cette méthode consiste à créer des sous-échantillons itératifs de votre jeu de données pour simuler de nouvelles données invisibles, que vous pouvez utiliser pour améliorer la généralisabilité de votre modèle.

  • true

  • false

true

class-weight

Le paramètre class_weight attribue des poids aux différentes classes du jeu de données. Les algorithmes de forêt aléatoire ont tendance à surévaluer les classes dominantes, ce qui entraîne des déséquilibres. Le paramètre class_weight aide à équilibrer les classes du jeu de données en attribuant plus de poids aux classes minoritaires. L’équilibrage des classes peut améliorer les performances du modèle. Par défaut, toutes les classes ont un poids de 1.

  • none  : le poids de la classe est la valeur par défaut (en d’autres termes, 1) pour toutes les classes.

  • balanced  : sélectionnez cette option pour que l’algorithme de forêt aléatoire ajuste automatiquement les poids de classe en fonction du nombre d’échantillons dans chaque classe.

none

criterion

Utilisez le paramètre criterion pour sélectionner une méthode pour mesurer la façon dont l’algorithme de la forêt aléatoire divise les données en différents nœuds.

  • gini

  • entropy

gini

max_depth

Le paramètre max_depth est le chemin le plus long d’une racine à une feuille pour chaque arbre de la forêt. Les plus profonds arbres ont plus de fractionnements et capturent plus d'informations sur les données.

  • none  : les nœuds s’étendent jusqu’à ce que tous les nœuds de feuilles soient purs (en d’autres termes, se composent complètement de données appartenant à une seule classe) ou jusqu’à ce que tous les nœuds de feuilles contiennent moins que ce que vous spécifiez dans le paramètre min_samples_split.

  • int  : limite l’expansion par fractionnement.

int  : 10

max_features

Le paramètre max_features définit le nombre maximal de caractéristiques que chaque arbre de décision dans la forêt prend en compte lors de la recherche du meilleur premier fractionnement.

  • auto  : évalue un nombre de caractéristiques égale au nombre total de caractéristiques dans le jeu de données.

  • none  : évalue un nombre de caractéristiques égale au nombre total de caractéristiques dans le jeu de données.

  • sqrt  : évalue un certain nombre de caractéristiques égales à la racine carrée du nombre total de caractéristiques dans le jeu de données.

  • log2  : évalue un certain nombre de caractéristiques égales au logarithme binaire du nombre total de caractéristiques.

  • int  : évalue un nombre de caractéristiques à chaque fractionnement égal au nombre que vous sélectionnez.

  • float  : évalue un nombre de caractéristiques égale à une fraction sélectionnée par l’utilisateur du nombre total de caractéristiques.

auto

min_impurity_decrease

Le paramètre min_impurity_decrease définit le seuil minimal de réduction des impuretés requis pour que l’arbre de décision se divise en un nouveau nœud. Ainsi, un fractionnement se produit où il diminuerait l’impureté par une quantité égale ou supérieure à min_impurity_decrease. Utilisez le paramètre criterion pour spécifier comment vous voulez mesurer la réduction de l’impureté.

Tout nombre flottant

0.0

min_sample_split

Le paramètre min_samples_split définit le seuil minimal d’échantillons requis pour que l’arbre de décision (dans une forêt aléatoire) se divise en un nouveau nœud. L’algorithme peut considérer un seul échantillon ou tous les échantillons.

Tout nombre entier (int) ou fraction (float).

int  : 2

min_weight_fraction_leaf

Le paramètre min_weight_fraction_leaf est le seuil minimal de poids requis pour que l’arbre de décision se divise en un nouveau nœud. Ce seuil est égal à la fraction minimale du poids total pour tous les échantillons. L’algorithme de forêt aléatoire suppose des poids égaux par défaut.

Tout nombre flottant

0.0

n_estimators

Le paramètre n_estimators est le nombre d’arbres que vous souhaitez créer dans la forêt.

N’importe quel nombre entier.

100

random_state

Le paramètre random_state spécifie le nombre de départ pour générer une séquence pseudo-aléatoire. Si vous sélectionnez none , un générateur de nombre aléatoire choisit un numéro de départ.

  • int  : sélectionnez un nombre entier pour le générateur de nombres aléatoires.

  • none  : pas de répétabilité.

int  : 10

Nom

Description

Options

Par défaut

colsample_bylevel

Le paramètre colsample_bylevel correspond au pourcentage de données pour lesquelles l'algorithme crée un sous-échantillon de façon aléatoire pour chaque niveau de profondeur d'une arborescence.

Tout nombre flottant de 0 à 1.

1

colsample_bynode

Le paramètre colsample_bynode correspond au pourcentage de données pour lesquelles l'algorithme crée un sous-échantillon de façon aléatoire pour chaque nœud d'une arborescence.

Tout nombre flottant de 0 à 1.

1

colsample_bytree

Le paramètre colsample_bytree correspond au pourcentage de données pour lesquelles l'algorithme crée un sous-échantillon de façon aléatoire pour chaque arborescence.

Tout nombre flottant de 0 à 1.

1

gamma

Le paramètre  gamma définit la réduction de perte nécessaire pour qu'un arbre de décision se fractionne en un nouveau nœud.  Un fractionnement se produit donc lorsque la perte est réduite d'un nombre égal ou supérieur à gamma .

Tout nombre entier positif ou 0.

0

learning_rate

Le paramètre  learning_rate est le taux auquel l'algorithme remplace les anciennes informations par de nouvelles. Habituellement, vous définissez le learning_rate par incréments logarithmiques (ex. : 0,003, 0,03, 0,3).

Tout nombre flottant de 0 à 1.

0.05

max_depth

Le paramètre max_depth est le chemin le plus long d’une racine à une feuille pour chaque arbre de la forêt. Les plus profonds arbres ont plus de fractionnements et capturent plus d'informations sur les données.

Tout nombre égal ou supérieur à 1.

3

min_child_weight

Le paramètre min_child_weight définit le seuil de pondération hessienne nécessaire pour qu'un arbre de décision se fractionne en un nouveau nœud. Un fractionnement se produit donc lorsque la pondération hessienne est réduite d'un montant égal ou supérieur à min_child_weight.

Tout nombre entier positif ou 0.

1

n_estimators

Le paramètre n_estimators est le nombre d’arbres que vous souhaitez créer dans la forêt.

Tout nombre égal ou supérieur à 1.

100

random_state

Le paramètre random_state spécifie le nombre de départ pour générer une séquence pseudo-aléatoire.

Tout nombre entier.

10

subsample

Le paramètre subsample correspond au pourcentage de données dont l'algorithme crée un sous-échantillon de façon aléatoire.

Tout nombre de 0 à 1.

1