Partager via


AutoMLConfig Classe

Représente la configuration de l’envoi d’une expérience de Machine Learning automatisé dans Azure Machine Learning.

Cet objet de configuration contient et conserve les paramètres de configuration de l’exécution de l’expérience, ainsi que les données de formation à utiliser au moment de l’exécution. Pour obtenir des conseils sur la sélection de vos paramètres, consultez https://aka.ms/AutoMLConfig.

Créez un autoMLConfig.

Héritage
builtins.object
AutoMLConfig

Constructeur

AutoMLConfig(task: str, path: str | None = None, iterations: int | None = None, primary_metric: str | None = None, positive_label: Any | None = None, compute_target: Any | None = None, spark_context: Any | None = None, X: Any | None = None, y: Any | None = None, sample_weight: Any | None = None, X_valid: Any | None = None, y_valid: Any | None = None, sample_weight_valid: Any | None = None, cv_splits_indices: List[List[Any]] | None = None, validation_size: float | None = None, n_cross_validations: int | str | None = None, y_min: float | None = None, y_max: float | None = None, num_classes: int | None = None, featurization: str | FeaturizationConfig = 'auto', max_cores_per_iteration: int = 1, max_concurrent_iterations: int = 1, iteration_timeout_minutes: int | None = None, mem_in_mb: int | None = None, enforce_time_on_windows: bool = True, experiment_timeout_hours: float | None = None, experiment_exit_score: float | None = None, enable_early_stopping: bool = True, blocked_models: List[str] | None = None, blacklist_models: List[str] | None = None, exclude_nan_labels: bool = True, verbosity: int = 20, enable_tf: bool = False, model_explainability: bool = True, allowed_models: List[str] | None = None, whitelist_models: List[str] | None = None, enable_onnx_compatible_models: bool = False, enable_voting_ensemble: bool = True, enable_stack_ensemble: bool | None = None, debug_log: str = 'automl.log', training_data: Any | None = None, validation_data: Any | None = None, test_data: Any | None = None, test_size: float | None = None, label_column_name: str | None = None, weight_column_name: str | None = None, cv_split_column_names: List[str] | None = None, enable_local_managed: bool = False, enable_dnn: bool | None = None, forecasting_parameters: ForecastingParameters | None = None, **kwargs: Any)

Paramètres

Nom Description
task
Obligatoire
str ou Tasks

Type de tâche à exécuter. Les valeurs peuvent être « classification », « regression » ou « forecasting » selon le type de problème de ML automatisé à résoudre.

path
Obligatoire
str

Chemin complet du dossier de projet Azure Machine Learning. Si non spécifié, le répertoire actuel ou « . » est utilisé par défaut.

iterations
Obligatoire
int

Nombre total de combinaisons différentes d’algorithmes et de paramètres à tester pendant une expérience de ML automatisé. Si non spécifié, la valeur par défaut est 1000 itérations.

primary_metric
Obligatoire
str ou Metric

Métrique optimisée par le Machine Learning automatisé pour la sélection du modèle. Le Machine Learning automatisé collecte plus de métriques qu’il ne peut en optimiser. Vous pouvez utiliser get_primary_metrics afin d’obtenir la liste des métriques valides pour votre tâche. Pour plus d’informations sur le calcul des métriques, consultez https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#primary-metric.

Si non spécifié, l’exactitude est utilisée pour les tâches de classification, la moyenne quadratique normalisée est utilisée pour les tâches de prévision et de régression, l’exactitude est utilisée pour la classification des images et la classification multi-étiquette des images, et la précision moyenne est utilisée pour la détection d’objet image.

positive_label
Obligatoire
Any

Étiquette de classe positive utilisée par le Machine Learning automatisé pour calculer les métriques binaires. Les métriques binaires sont calculées dans deux conditions pour les tâches de classification :

  1. la colonne d’étiquette se compose de deux classes indiquant que la tâche de classification binaire AutoML utilise la classe positive spécifiée lorsque positive_label est transmis, sinon AutoML choisit une classe positive en fonction de la valeur encodée de l’étiquette.
  2. tâche de classification à plusieurs classes avec positive_label spécifié

Pour plus d’informations sur la classification, consultez les métriques pour les scénarios de classification.

compute_target
Obligatoire

Cible de calcul Azure Machine Learning sur laquelle exécuter l’expérience de Machine Learning automatisé. Pour plus d’informations sur les cibles de calcul, consultez https://docs.microsoft.com/en-us/azure/machine-learning/concept-automated-ml#local-remote.

spark_context
Obligatoire
<xref:SparkContext>

Contexte Spark. Applicable uniquement quand il est utilisé dans un environnement Azure Databricks/Spark.

X
Obligatoire

Caractéristiques d’entraînement à utiliser pour l’ajustement des pipelines pendant une expérience. Ce paramètre est déprécié. Utilisez plutôt training_data et label_column_name.

y
Obligatoire

Étiquettes d’entraînement à utiliser pour l’ajustement des pipelines pendant une expérience. Il s’agit de la valeur prédite par votre modèle. Ce paramètre est déprécié. Utilisez plutôt training_data et label_column_name.

sample_weight
Obligatoire

Pondération à attribuer à chaque échantillon d’entraînement pendant l’exécution de pipelines d’ajustement. Chaque ligne doit correspondre à une ligne dans les données X et y.

Spécifiez ce paramètre lorsque vous spécifiez X. Ce paramètre est déprécié. Utilisez plutôt training_data et weight_column_name.

X_valid
Obligatoire

Fonctionnalités de validation à utiliser pour l’ajustement des pipelines lors d’une expérience.

S’il est spécifié, y_valid et sample_weight_valid doivent également être spécifiés. Ce paramètre est déprécié. Utilisez plutôt validation_data et label_column_name.

y_valid
Obligatoire

Étiquettes de validation à utiliser pour l’ajustement des pipelines lors d’une expérience.

X_valid et y_valid doivent être spécifiés simultanément. Ce paramètre est déprécié. Utilisez plutôt validation_data et label_column_name.

sample_weight_valid
Obligatoire

Poids à attribuer à chaque exemple de validation lors de l’exécution de pipelines de scoring. Chaque ligne doit correspondre à une ligne dans les données X et y.

Spécifiez ce paramètre lorsque vous spécifiez X_valid. Ce paramètre est déprécié. Utilisez plutôt validation_data et weight_column_name.

cv_splits_indices
Obligatoire

Index où fractionner les données de formation pour la validation croisée. Chaque ligne est un pli croisé distinct et, dans chaque pli croisé, 2 tableaux numpy sont fournis, le premier avec les index des échantillons à utiliser pour les données d’entraînement et le deuxième avec les index à utiliser pour les données de validation. Par ex., [[t1, v1], [t2, v2], ...] où t1 représente les index d’entraînement pour le premier pli croisé et v1 représente les index de validation pour le premier pli croisé.

Pour spécifier des données existantes sous forme de données de validation, utilisez validation_data. Pour laisser AutoML extraire les données de validation des données d’entraînement, spécifiez n_cross_validations ou validation_size. Utilisez cv_split_column_names si vous avez une ou plusieurs colonnes de validation croisée dans training_data.

validation_size
Obligatoire

Fraction des données à conserver pour la validation quand les données de validation de l’utilisateur ne sont pas spécifiées. Doit être comprise entre 0,0 et 1,0 non inclus.

Spécifiez validation_data pour fournir des données de validation, sinon définissez n_cross_validations ou validation_size pour extraire les données de validation des données d’entraînement spécifiées. Pour le pli de validation croisée personnalisée, utilisez cv_split_column_names.

Pour plus d’informations, consultez Configurer des fractionnements de données et la validation croisée dans le Machine Learning automatisé.

n_cross_validations
Obligatoire
int

Nombre de validations croisées à effectuer quand les données de validation de l’utilisateur ne sont pas spécifiées.

Spécifiez validation_data pour fournir des données de validation, sinon définissez n_cross_validations ou validation_size pour extraire les données de validation des données d’entraînement spécifiées. Pour le pli de validation croisée personnalisée, utilisez cv_split_column_names.

Pour plus d’informations, consultez Configurer des fractionnements de données et la validation croisée dans le Machine Learning automatisé.

y_min
Obligatoire

Valeur minimale de y pour une expérience de régression. La combinaison de y_min et y_max est utilisée pour normaliser les métriques de jeu de test en fonction de la plage de données d’entrée. Ce paramètre est déprécié. Cette valeur sera plutôt calculée à partir des données.

y_max
Obligatoire

Valeur maximale de y pour une expérience de régression. La combinaison de y_min et y_max est utilisée pour normaliser les métriques de jeu de test en fonction de la plage de données d’entrée. Ce paramètre est déprécié. Cette valeur sera plutôt calculée à partir des données.

num_classes
Obligatoire
int

Nombre de classes des données d’étiquette pour une expérience de classification. Ce paramètre est déprécié. Cette valeur sera plutôt calculée à partir des données.

featurization
Obligatoire

Indicateur « auto »/« OFF »/FeaturizationConfig indique si l’étape de caractérisation doit être effectuée automatiquement ou non, ou si une caractérisation personnalisée doit être utilisée. Remarque : Si les données d’entrée sont éparses, la caractérisation ne peut pas être activée.

Le type de colonne est automatiquement détecté. En fonction du type de colonne détecté, le prétraitement/la caractérisation s’effectue de la façon suivante :

  • Catégorique : encodage cible, encodage one-hot, supprimer les catégories à cardinalité élevée, imputer des valeurs manquantes.

  • Numérique : imputer des valeurs manquantes, distance de cluster, pondération de la preuve.

  • DateTime : plusieurs caractéristiques, comme le jour, les secondes, les minutes, les heures, etc.

  • Texte : conteneur de mots, incorporation de mot pré-entraîné, encodage cible du texte.

Pour plus d’informations, consultez l’article Configurer des expériences de ML automatisée dans Python.

Pour personnaliser l’étape de caractérisation, fournissez un objet FeaturizationConfig. La caractérisation personnalisée prend actuellement en charge le blocage d’un ensemble de transformateurs, la mise à jour de l’objectif des colonnes, la modification des paramètres de transformateur et la suppression de colonnes. Pour plus d’informations, consultez Personnaliser l’ingénierie de caractéristiques.

Remarque : Les caractéristiques de série chronologique sont traitées séparément quand le type de tâche est défini sur une prévision indépendante de ce paramètre.

max_cores_per_iteration
Obligatoire
int

Nombre maximal de threads à utiliser pour une itération d’entraînement donnée. Valeurs acceptables :

  • Supérieur à 1 et inférieur ou égal au nombre maximal de cœurs sur la cible de calcul.

  • Égal à -1, ce qui signifie qu’il faut utiliser tous les cœurs possibles par itération et par exécution enfant.

  • Égal à 1, valeur par défaut.

max_concurrent_iterations
Obligatoire
int

Représente le nombre maximal d’itérations exécutées en parallèle. La valeur par défaut est 1.

  • Les clusters AmlCompute prennent en charge une exécution d’itération par nœud. Quand plusieurs exécutions parentes d’expérience AutoML sont effectuées en parallèle sur un seul cluster AmlCompute, la somme des valeurs max_concurrent_iterations de toutes les expériences doit être inférieure ou égale au nombre maximal de nœuds. Sinon, les exécutions sont mises en file d’attente jusqu’à ce que les nœuds soient disponibles.

  • DSVM prend en charge plusieurs itérations par nœud. max_concurrent_iterations doit être inférieur ou égal au nombre de cœurs sur la DSVM. Quand plusieurs exécutions d’expérience sont effectuées en parallèle sur une seule DSVM, la somme des valeurs max_concurrent_iterations de toutes les expériences doit être inférieure ou égale au nombre maximal de nœuds.

  • Databricks : max_concurrent_iterations doit être inférieur ou égal au nombre de nœuds worker sur Databricks.

max_concurrent_iterations ne s’applique pas aux exécutions locales. Auparavant, ce paramètre était appelé concurrent_iterations.

iteration_timeout_minutes
Obligatoire
int

Durée d’exécution maximale (en minutes) de chaque itération avant de s’arrêter. Si non spécifiée, une valeur de 1 mois ou de 43 200 minutes est utilisée.

mem_in_mb
Obligatoire
int

Utilisation maximale de la mémoire que chaque itération peut exécuter avant de s’arrêter. Si non spécifiée, une valeur de 1 Po ou 1 073 741 824 Mo est utilisée.

enforce_time_on_windows
Obligatoire

Indique s’il faut appliquer une limite de temps pour l’entraînement du modèle à chaque itération sur Windows. La valeur par défaut est True. En cas d’exécution à partir d’un fichier de script Python (.py), consultez la documentation sur l’autorisation des limites de ressources sur Windows.

experiment_timeout_hours
Obligatoire

Durée maximale en heures pendant laquelle toutes les itérations combinées peuvent être effectuées avant que l’expérience ne se termine. Peut être une valeur décimale comme 0,25 représentant 15 minutes. Si la valeur n’est pas spécifiée, le délai d’expiration de l’expérience par défaut est de 6 jours. Pour spécifier un délai d’expiration inférieur ou égal à 1 heure, vérifiez que la taille de votre jeu de données n’est pas supérieure à 10 millions (lignes X colonne) ou une erreur se produit.

experiment_exit_score
Obligatoire

Score cible de l’expérience. L’expérimentation se termine une fois ce score atteint. S’il n’est pas spécifié (aucun critère), l’expérimentation s’exécute jusqu’à ce que la métrique principale n’affiche plus de progression. Pour plus d’informations sur les critères de sortie, consultez cet article.

enable_early_stopping
Obligatoire

Indique s’il faut activer une fin anticipée si le score ne s’améliore pas à court terme. La valeur par défaut est True.

Logique d’arrêt anticipé :

  • Aucun arrêt anticipé pour les 20 premières itérations (repères).

  • La fenêtre d’arrêt anticipé commence à la 21ème itération et recherche les early_stopping_n_iters itérations

    (actuellement défini sur 10). Cela signifie que la première itération où l’arrêt peut se produire est la 31ème.

  • AutoML planifie toujours 2 itérations d’ensemble APRÈS l’arrêt anticipé, ce qui peut entraîner

    des scores plus élevés.

  • L’arrêt anticipé est déclenché si la valeur absolue du meilleur score calculé est la même pour les dernières

    early_stopping_n_iters itérations, autrement dit, s’il n’y a pas d’amélioration du score pour early_stopping_n_iters itérations.

blocked_models
Obligatoire
list(str) ou list(Classification) <xref:for classification task> ou list(Regression) <xref:for regression task> ou list(Forecasting) <xref:for forecasting task>

Liste d’algorithmes à ignorer pour une expérience. Si enable_tf est défini sur False, les modèles TensorFlow sont ajoutés dans blocked_models.

blacklist_models
Obligatoire
list(str) ou list(Classification) <xref:for classification task> ou list(Regression) <xref:for regression task> ou list(Forecasting) <xref:for forecasting task>

Paramètre déprécié, utilisez plutôt blocked_models.

exclude_nan_labels
Obligatoire

Indique s’il faut exclure les lignes avec des valeurs NaN dans l’étiquette. La valeur par défaut est True.

verbosity
Obligatoire
int

Niveau de verbosité de l’écriture dans le fichier journal. La valeur par défaut est INFO ou 20. Les valeurs acceptables sont définies dans la bibliothèque de journalisation Python.

enable_tf
Obligatoire

Paramètre déprécié pour activer/désactiver les algorithmes Tensorflow. La valeur par défaut est False.

model_explainability
Obligatoire

Indique s’il faut activer l’explication du meilleur modèle AutoML à la fin de toutes les itérations d’entraînement AutoML. La valeur par défaut est True. Pour plus d’informations, consultez Interprétabilité : explications des modèles dans le Machine Learning automatisé.

allowed_models
Obligatoire
list(str) ou list(Classification) <xref:for classification task> ou list(Regression) <xref:for regression task> ou list(Forecasting) <xref:for forecasting task>

Liste des noms de modèle à rechercher pour une expérience. Si non spécifiée, tous les modèles pris en charge pour la tâche sont utilisés, à l’exception des modèles spécifiés dans blocked_models ou des modèles TensorFlow dépréciés. Les modèles pris en charge pour chaque type de tâche sont décrits dans la classe SupportedModels.

whitelist_models
Obligatoire
list(str) ou list(Classification) <xref:for classification task> ou list(Regression) <xref:for regression task> ou list(Forecasting) <xref:for forecasting task>

Paramètre déprécié, utilisez plutôt allowed_models.

enable_onnx_compatible_models
Obligatoire

Indique s’il faut activer ou désactiver l’application des modèles compatibles ONNX. La valeur par défaut est False. Pour plus d’informations sur Open Neural Network Exchange (ONNX) et Azure Machine Learning, consultez cet article.

forecasting_parameters
Obligatoire

Objet ForecastingParameters pour contenir tous les paramètres spécifiques de la prévision.

time_column_name
Obligatoire
str

Nom de la colonne de temps. Ce paramètre est obligatoire pendant la prévision pour spécifier la colonne datetime dans les données d’entrée utilisées afin de générer la série chronologique et de déduire sa fréquence. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

max_horizon
Obligatoire
int

Horizon maximal de prévision souhaité en unités de fréquence de série chronologique. La valeur par défaut est 1.

Les unités sont basées sur l’intervalle de temps de vos données d’entraînement (par ex., mensuelles, hebdomadaires) que l’analyste doit prévoir. Quand la tâche est de type prévision, ce paramètre est obligatoire. Pour plus d’informations sur la définition des paramètres de prévision, consultez Entraîner automatiquement un modèle de prévision de série chronologique. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

grain_column_names
Obligatoire
str ou list(str)

Noms des colonnes utilisées pour regrouper une série chronologique. Permet de créer plusieurs séries. Si le grain n’est pas défini, le jeu de données est considéré être une série chronologique. Ce paramètre est utilisé avec les tâches de type prévision. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

target_lags
Obligatoire
int ou list(int)

Nombre de périodes passées à décaler par rapport à la colonne cible. La valeur par défaut est 1. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

Pendant la prévision, ce paramètre correspond au nombre de lignes dont les valeurs cibles doivent être décalées en fonction de la fréquence des données. Ce paramètre est représenté sous la forme d’une liste ou d’un entier unique. Un décalage est nécessaire en l’absence de correspondance ou de corrélation par défaut des relations entre les variables indépendantes et la variable dépendante. Par exemple, quand vous essayez de prévoir la demande d’un produit, la demande mensuelle peut dépendre du prix de certaines matières premières trois mois auparavant. Dans ce cas, vous pouvez appliquer un décalage négatif de trois mois à la cible (la demande) afin que le modèle soit entraîné sur la relation appropriée. Pour plus d’informations, consultez Entraîner automatiquement un modèle de prévision de série chronologique.

feature_lags
Obligatoire
str

Indicateur de génération de décalages pour les caractéristiques numériques. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

target_rolling_window_size
Obligatoire
int

Nombre de périodes passées utilisées pour créer une moyenne de fenêtres dynamiques de la colonne cible. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

Pendant la prévision, ce paramètre correspond à n périodes historiques à utiliser pour générer les valeurs prévues, < = taille du jeu d’entraînement. En cas d’omission, n est la taille du jeu d’apprentissage complet. Spécifiez ce paramètre si vous souhaitez prendre en compte seulement une partie des données historiques pour l’entraînement du modèle.

country_or_region
Obligatoire
str

Pays/région utilisé pour générer les caractéristiques de congés. Il doit s’agir d’un code de pays/région à deux lettres au format ISO 3166, par exemple, « US » ou « GB ». Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

use_stl
Obligatoire
str

Configurez la décomposition STL de la colonne cible de série chronologique. use_stl peut prendre trois valeurs : None (valeur par défaut) : aucune décomposition STL, season : génère uniquement le composant de saison, et season_trend : génère des composants de saison et de tendance. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

seasonality
Obligatoire
int ou str

Définissez la saisonnalité des séries chronologiques. Si la saisonnalité est définie sur « auto », elle est déduite. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

short_series_handling_configuration
Obligatoire
str

Paramètre définissant la manière dont AutoML doit gérer les séries chronologiques courtes.

Valeurs possibles : « auto » (par défaut), « Remplir », « Annuler » et Aucune.

  • auto les séries courtes sont remplies en l’absence de séries longues. Sinon, les séries courtes sont annulées.
  • remplir toutes les séries courtes sont remplies.
  • annuler toutes les séries courtes sont annulées.
  • Aucune les séries courtes ne sont pas modifiées. Si la valeur est « remplir », la table est remplie avec les zéros et les valeurs vides pour les régresseurs et les valeurs aléatoires pour la cible avec la moyenne égale à la valeur médiane cible pour l’ID de série chronologique donné. Si la valeur médiane est supérieure ou égale à zéro, la valeur remplie minimale est découpée par zéro : Entrée :

Date

numeric_value

string

cible

2020-01-01

23

green

55

Sortie en supposant que le nombre minimal de valeurs est de quatre :

Date

numeric_value

string

cible

2019-12-29

0

N/D

55.1

2019-12-30

0

N/D

55.6

2019-12-31

0

N/D

54.5

2020-01-01

23

green

55

Remarque : Nous avons deux paramètres short_series_handling_configuration et legacy short_series_handling. Lorsque les deux paramètres sont définis, nous les synchronisons comme indiqué dans le tableau ci-dessous (short_series_handling_configuration et short_series_handling par souci de concision sont marqués respectivement comme handling_configuration et handling).

Manipulation

handling_configuration

gestion résultante

handling_configuration résultant

True

auto

True

auto

True

Pad

True

auto

True

drop

True

auto

True

None

False

None

False

auto

False

None

False

Pad

False

None

False

drop

False

None

False

None

False

None

freq
Obligatoire
str ou None

Fréquence de prévision.

Lors d'une prévision, ce paramètre représente la période pour laquelle la prévision est souhaitée, par exemple tous les jours, toutes les semaines, tous les ans, etc. La fréquence de prévision correspond à la fréquence du jeu de données par défaut. Vous pouvez la définir sur une valeur supérieure (mais pas inférieure) à la fréquence du jeu de données. Nous allons agréger les données et générer les résultats à la fréquence prévue. Par exemple, pour les données quotidiennes, vous pouvez définir une fréquence quotidienne, hebdomadaire ou mensuelle, mais pas toutes les heures. La fréquence doit correspondre à un alias de décalage Pandas. Pour plus d’informations, consultez la documentation Pandas : https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects

target_aggregation_function
Obligatoire
str ou None

Fonction à utiliser pour agréger la colonne cible de la série chronologique de façon à ce qu’elle soit conforme à une fréquence spécifiée par l’utilisateur. Si target_aggregation_function est défini, mais que le paramètre freq ne l’est pas, une erreur est générée. Les fonctions d’agrégation cibles possibles sont les suivantes : « sum », « max », « min » et « mean ».

Freq

target_aggregation_function

Mécanisme de correction de la régularité des données

Aucun (par défaut)

Aucun (par défaut)

L’agrégation n’est pas appliquée. Si la fréquence valide ne peut pas être déterminée, l’erreur est déclenchée.

Une valeur

Aucun (par défaut)

L’agrégation n’est pas appliquée. Si le nombre de points de données conformes à la grille de fréquence donnée est inférieur à 90 %, ces points seront supprimés, sinon, l’erreur est déclenchée.

Aucun (par défaut)

Fonction d’agrégation

L’erreur concernant les paramètres de fréquence manquants est générée.

Une valeur

Fonction d’agrégation

Agréger à la fréquence à l’aide de la fonction providedaggregation.

enable_voting_ensemble
Obligatoire

Indique s’il faut activer ou désactiver l’itération VotingEnsemble. La valeur par défaut est True. Pour plus d’informations sur les ensembles, consultez Configuration des ensembles.

enable_stack_ensemble
Obligatoire

Indique s’il faut activer ou désactiver l’itération StackEnsemble. La valeur par défaut est Aucun. Si l’indicateur enable_onnx_compatible_models est défini, l’itération StackEnsemble est désactivée. De même, pour les tâches de série chronologique, l’itération StackEnsemble est désactivée par défaut, afin d’éviter les risques de sur-ajustement en raison de l’utilisation d’un petit jeu d’entraînement dans l’ajustement du méta-apprenant. Pour plus d’informations sur les ensembles, consultez Configuration des ensembles.

debug_log
Obligatoire
str

Fichier journal où écrire les informations de débogage. Si non spécifié, « automl.log » est utilisé.

training_data
Obligatoire

Données de formation à utiliser dans l’expérience. Doivent contenir des caractéristiques d’entraînement et une colonne d’étiquette (éventuellement une colonne de pondération d’échantillons). Si training_data est spécifié, le paramètre label_column_name doit également l’être.

training_data a fait son apparition dans la version 1.0.81.

validation_data
Obligatoire

Données de validation à utiliser dans l’expérience. Doivent contenir des caractéristiques d’entraînement et une colonne d’étiquette (éventuellement une colonne de pondération d’échantillons). Si validation_data est spécifié, les paramètres training_data et label_column_name doivent également l’être.

validation_data a fait son apparition dans la version 1.0.81. Pour plus d’informations, consultez Configurer des fractionnements de données et la validation croisée dans le Machine Learning automatisé.

test_data
Obligatoire

La fonctionnalité de test de modèle utilisant les jeux de données de test ou les fractionnements de données de test est une fonctionnalité en préversion et peut changer à tout moment. Données de test à utiliser pour une série de tests et démarrées automatiquement une fois l’apprentissage du modèle terminé. La série de tests obtient les prédictions à l’aide du meilleur modèle et calcule des métriques en fonction de ces prédictions.

Si ce paramètre ou le test_size paramètre n’est pas spécifié, aucune série de tests n’est automatiquement exécutée au terme de l’apprentissage du modèle. Les données de test doivent contenir les fonctionnalités et la colonne d’étiquette. Si test_data est spécifié, le paramètre label_column_name doit l’être.

test_size
Obligatoire

La fonctionnalité de test de modèle utilisant les jeux de données de test ou les fractionnements de données de test est une fonctionnalité en préversion et peut changer à tout moment. Fraction des données d’apprentissage à conserver pour les données de test d’une série de tests et automatiquement démarrées au terme de l’apprentissage du modèle. La série de tests obtient les prédictions à l’aide du meilleur modèle et calcule des métriques en fonction de ces prédictions.

Doit être comprise entre 0,0 et 1,0 non inclus. Si test_size est spécifié en même temps que validation_size, les données de test sont fractionnées à partir de training_data avant le fractionnement des données de validation. Par exemple, si validation_size=0.1, test_size=0.1 et les données de formation d’origine ont 1 000 lignes, alors les données de test ont 100 lignes, les données de validation contiennent 90 lignes et les données de formation comportent 810 lignes.

Pour les tâches basées sur la régression, l’échantillonnage aléatoire est utilisé. Pour les tâches de classification, l’échantillonnage stratifié est utilisé. Les prévisions ne prennent pas actuellement en charge la spécification d’un jeu de données de test à l’aide d’un fractionnement formation/test.

Si ce paramètre ou le test_data paramètre n’est pas spécifié, aucune série de tests n’est automatiquement exécutée au terme de l’apprentissage du modèle.

label_column_name
Obligatoire

Nom de la colonne d’étiquette. Si les données d'entrée proviennent d'un pandas.DataFrame qui ne possède pas de noms de colonnes, les index de colonnes peuvent être utilisés, exprimés sous forme d'entiers.

Ce paramètre s’applique aux paramètres training_data, validation_data et test_data. label_column_name a fait son apparition dans la version 1.0.81.

weight_column_name
Obligatoire

Nom de la colonne de pondération d’échantillons. Le ML automatisé prend en charge une colonne pondérée en entrée. Les lignes des données sont alors pondérées en conséquence. Si les données d'entrée proviennent d'un pandas.DataFrame qui ne possède pas de noms de colonnes, les index de colonnes peuvent être utilisés, exprimés sous forme d'entiers.

Ce paramètre s’applique aux paramètres training_data et validation_data. weight_column_names a été introduit dans la version 1.0.81.

cv_split_column_names
Obligatoire

Liste des noms des colonnes contenant un fractionnement de validation croisée personnalisée. Chaque colonne de fractionnement de validation croisée représente un fractionnement de validation croisée où chaque ligne indique 1 pour l’entraînement ou 0 pour la validation.

Ce paramètre s’applique au paramètre training_data à des fins de validation croisée personnalisée. cv_split_column_names a été introduit dans la version 1.6.0

Utilisez cv_split_column_names ou cv_splits_indices.

Pour plus d’informations, consultez Configurer des fractionnements de données et la validation croisée dans le Machine Learning automatisé.

enable_local_managed
Obligatoire

Paramètre désactivé. Les exécutions gérées localement ne peuvent pas être activées pour l’instant.

enable_dnn
Obligatoire

Indique s’il faut inclure des modèles basés sur DNN lors de la sélection du modèle. La valeur par défaut de l’init est Aucun. Toutefois, la valeur par défaut est True pour les tâches DNN NLP et False pour toutes les autres tâches AutoML.

task
Obligatoire
str ou Tasks

Type de tâche à exécuter. Les valeurs peuvent être « classification », « regression » ou « forecasting » selon le type de problème de ML automatisé à résoudre.

path
Obligatoire
str

Chemin complet du dossier de projet Azure Machine Learning. Si non spécifié, le répertoire actuel ou « . » est utilisé par défaut.

iterations
Obligatoire
int

Nombre total de combinaisons différentes d’algorithmes et de paramètres à tester pendant une expérience de ML automatisé. Si non spécifié, la valeur par défaut est 1000 itérations.

primary_metric
Obligatoire
str ou Metric

Métrique optimisée par le Machine Learning automatisé pour la sélection du modèle. Le Machine Learning automatisé collecte plus de métriques qu’il ne peut en optimiser. Vous pouvez utiliser get_primary_metrics afin d’obtenir la liste des métriques valides pour votre tâche. Pour plus d’informations sur le calcul des métriques, consultez https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#primary-metric.

Si non spécifié, l’exactitude est utilisée pour les tâches de classification, la moyenne quadratique normalisée est utilisée pour les tâches de prévision et de régression, l’exactitude est utilisée pour la classification des images et la classification multi-étiquette des images, et la précision moyenne est utilisée pour la détection d’objet image.

positive_label
Obligatoire
Any

Étiquette de classe positive utilisée par le Machine Learning automatisé pour calculer les métriques binaires. Les métriques binaires sont calculées dans deux conditions pour les tâches de classification :

  1. la colonne d’étiquette se compose de deux classes indiquant que la tâche de classification binaire AutoML utilise la classe positive spécifiée lorsque positive_label est transmis, sinon AutoML choisit une classe positive en fonction de la valeur encodée de l’étiquette.
  2. tâche de classification à plusieurs classes avec positive_label spécifié

Pour plus d’informations sur la classification, consultez les métriques pour les scénarios de classification.

compute_target
Obligatoire

Cible de calcul Azure Machine Learning sur laquelle exécuter l’expérience de Machine Learning automatisé. Pour plus d’informations sur les cibles de calcul, consultez https://docs.microsoft.com/azure/machine-learning/how-to-auto-train-remote.

spark_context
Obligatoire
<xref:SparkContext>

Contexte Spark. Applicable uniquement quand il est utilisé dans un environnement Azure Databricks/Spark.

X
Obligatoire

Caractéristiques d’entraînement à utiliser pour l’ajustement des pipelines pendant une expérience. Ce paramètre est déprécié. Utilisez plutôt training_data et label_column_name.

y
Obligatoire

Étiquettes d’entraînement à utiliser pour l’ajustement des pipelines pendant une expérience. Il s’agit de la valeur prédite par votre modèle. Ce paramètre est déprécié. Utilisez plutôt training_data et label_column_name.

sample_weight
Obligatoire

Pondération à attribuer à chaque échantillon d’entraînement pendant l’exécution de pipelines d’ajustement. Chaque ligne doit correspondre à une ligne dans les données X et y.

Spécifiez ce paramètre lorsque vous spécifiez X. Ce paramètre est déprécié. Utilisez plutôt training_data et weight_column_name.

X_valid
Obligatoire

Fonctionnalités de validation à utiliser pour l’ajustement des pipelines lors d’une expérience.

S’il est spécifié, y_valid et sample_weight_valid doivent également être spécifiés. Ce paramètre est déprécié. Utilisez plutôt validation_data et label_column_name.

y_valid
Obligatoire

Étiquettes de validation à utiliser pour l’ajustement des pipelines lors d’une expérience.

X_valid et y_valid doivent être spécifiés simultanément. Ce paramètre est déprécié. Utilisez plutôt validation_data et label_column_name.

sample_weight_valid
Obligatoire

Poids à attribuer à chaque exemple de validation lors de l’exécution de pipelines de scoring. Chaque ligne doit correspondre à une ligne dans les données X et y.

Spécifiez ce paramètre lorsque vous spécifiez X_valid. Ce paramètre est déprécié. Utilisez plutôt validation_data et weight_column_name.

cv_splits_indices
Obligatoire

Index où fractionner les données de formation pour la validation croisée. Chaque ligne est un pli croisé distinct et, dans chaque pli croisé, 2 tableaux numpy sont fournis, le premier avec les index des échantillons à utiliser pour les données d’entraînement et le deuxième avec les index à utiliser pour les données de validation. Par ex., [[t1, v1], [t2, v2], ...] où t1 représente les index d’entraînement pour le premier pli croisé et v1 représente les index de validation pour le premier pli croisé. Cette option est prise en charge lorsque les données sont transmises en tant que jeu de données de fonctionnalités et colonne Étiquette distincts.

Pour spécifier des données existantes sous forme de données de validation, utilisez validation_data. Pour laisser AutoML extraire les données de validation des données d’entraînement, spécifiez n_cross_validations ou validation_size. Utilisez cv_split_column_names si vous avez une ou plusieurs colonnes de validation croisée dans training_data.

validation_size
Obligatoire

Fraction des données à conserver pour la validation quand les données de validation de l’utilisateur ne sont pas spécifiées. Doit être comprise entre 0,0 et 1,0 non inclus.

Spécifiez validation_data pour fournir des données de validation, sinon définissez n_cross_validations ou validation_size pour extraire les données de validation des données d’entraînement spécifiées. Pour le pli de validation croisée personnalisée, utilisez cv_split_column_names.

Pour plus d’informations, consultez Configurer des fractionnements de données et la validation croisée dans le Machine Learning automatisé.

n_cross_validations
Obligatoire
int ou str

Nombre de validations croisées à effectuer quand les données de validation de l’utilisateur ne sont pas spécifiées.

Spécifiez validation_data pour fournir des données de validation, sinon définissez n_cross_validations ou validation_size pour extraire les données de validation des données d’entraînement spécifiées. Pour le pli de validation croisée personnalisée, utilisez cv_split_column_names.

Pour plus d’informations, consultez Configurer des fractionnements de données et la validation croisée dans le Machine Learning automatisé.

y_min
Obligatoire

Valeur minimale de y pour une expérience de régression. La combinaison de y_min et y_max est utilisée pour normaliser les métriques de jeu de test en fonction de la plage de données d’entrée. Ce paramètre est déprécié. Cette valeur sera plutôt calculée à partir des données.

y_max
Obligatoire

Valeur maximale de y pour une expérience de régression. La combinaison de y_min et y_max est utilisée pour normaliser les métriques de jeu de test en fonction de la plage de données d’entrée. Ce paramètre est déprécié. Cette valeur sera plutôt calculée à partir des données.

num_classes
Obligatoire
int

Nombre de classes des données d’étiquette pour une expérience de classification. Ce paramètre est déprécié. Cette valeur sera plutôt calculée à partir des données.

featurization
Obligatoire

Indicateur « auto »/« OFF »/FeaturizationConfig indique si l’étape de caractérisation doit être effectuée automatiquement ou non, ou si une caractérisation personnalisée doit être utilisée. Remarque : Si les données d’entrée sont éparses, la caractérisation ne peut pas être activée.

Le type de colonne est automatiquement détecté. En fonction du type de colonne détecté, le prétraitement/la caractérisation s’effectue de la façon suivante :

  • Catégorique : encodage cible, encodage one-hot, supprimer les catégories à cardinalité élevée, imputer des valeurs manquantes.

  • Numérique : imputer des valeurs manquantes, distance de cluster, pondération de la preuve.

  • DateTime : plusieurs caractéristiques, comme le jour, les secondes, les minutes, les heures, etc.

  • Texte : conteneur de mots, incorporation de mot pré-entraîné, encodage cible du texte.

Pour plus d’informations, consultez l’article Configurer des expériences de ML automatisée dans Python.

Pour personnaliser l’étape de caractérisation, fournissez un objet FeaturizationConfig. La caractérisation personnalisée prend actuellement en charge le blocage d’un ensemble de transformateurs, la mise à jour de l’objectif des colonnes, la modification des paramètres de transformateur et la suppression de colonnes. Pour plus d’informations, consultez Personnaliser l’ingénierie de caractéristiques.

Remarque : Les caractéristiques de série chronologique sont traitées séparément quand le type de tâche est défini sur une prévision indépendante de ce paramètre.

max_cores_per_iteration
Obligatoire
int

Nombre maximal de threads à utiliser pour une itération d’entraînement donnée. Valeurs acceptables :

  • Supérieur à 1 et inférieur ou égal au nombre maximal de cœurs sur la cible de calcul.

  • Égal à -1, ce qui signifie qu’il faut utiliser tous les cœurs possibles par itération et par exécution enfant.

  • Égale à 1, valeur par défaut.

max_concurrent_iterations
Obligatoire
int

Représente le nombre maximal d’itérations exécutées en parallèle. La valeur par défaut est 1.

  • Les clusters AmlCompute prennent en charge une exécution d’itération par nœud. Pour plusieurs expériences exécutées en parallèle sur un seul cluster AmlCompute, la somme des valeurs de max_concurrent_iterations toutes les expériences doit être inférieure ou égale au nombre maximal de nœuds.

  • DSVM prend en charge plusieurs itérations par nœud. max_concurrent_iterations doit être inférieur ou égal au nombre de cœurs sur la DSVM. Quand plusieurs exécutions d’expérience sont effectuées en parallèle sur une seule DSVM, la somme des valeurs max_concurrent_iterations de toutes les expériences doit être inférieure ou égale au nombre maximal de nœuds.

  • Databricks : max_concurrent_iterations doit être inférieur ou égal au nombre de nœuds worker sur Databricks.

max_concurrent_iterations ne s’applique pas aux exécutions locales. Auparavant, ce paramètre était appelé concurrent_iterations.

iteration_timeout_minutes
Obligatoire
int

Durée d’exécution maximale (en minutes) de chaque itération avant de s’arrêter. Si non spécifiée, une valeur de 1 mois ou de 43 200 minutes est utilisée.

mem_in_mb
Obligatoire
int

Utilisation maximale de la mémoire que chaque itération peut exécuter avant de s’arrêter. Si non spécifiée, une valeur de 1 Po ou 1 073 741 824 Mo est utilisée.

enforce_time_on_windows
Obligatoire

Indique s’il faut appliquer une limite de temps pour l’entraînement du modèle à chaque itération sur Windows. La valeur par défaut est True. En cas d’exécution à partir d’un fichier de script Python (.py), consultez la documentation sur l’autorisation des limites de ressources sur Windows.

experiment_timeout_hours
Obligatoire

Durée maximale en heures pendant laquelle toutes les itérations combinées peuvent être effectuées avant que l’expérience ne se termine. Peut être une valeur décimale comme 0,25 représentant 15 minutes. Si la valeur n’est pas spécifiée, le délai d’expiration de l’expérience par défaut est de 6 jours. Pour spécifier un délai d’expiration inférieur ou égal à 1 heure, vérifiez que la taille de votre jeu de données n’est pas supérieure à 10 millions (lignes X colonne) ou une erreur se produit.

experiment_exit_score
Obligatoire

Score cible de l’expérience. L’expérimentation se termine une fois ce score atteint. S’il n’est pas spécifié (aucun critère), l’expérimentation s’exécute jusqu’à ce que la métrique principale n’affiche plus de progression. Pour plus d’informations sur les critères de sortie, consultez ce >>article https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#exit-criteria'_.<<

enable_early_stopping
Obligatoire

Indique s’il faut activer une fin anticipée si le score ne s’améliore pas à court terme. La valeur par défaut est True.

Logique d’arrêt anticipé :

  • Aucun arrêt anticipé pour les 20 premières itérations (repères).

  • La fenêtre d’arrêt précoce démarre à la 21e itération et recherche early_stopping_n_iters itérations (actuellement définie sur 10). Cela signifie que la première itération où l’arrêt peut se produire est la 31ème.

  • AutoML planifie toujours 2 itérations d’ensemble APRÈS l’arrêt précoce, ce qui peut entraîner des scores plus élevés.

  • L’arrêt précoce est déclenché si la valeur absolue du meilleur score calculé est la même pour les itérations early_stopping_n_iters passées, c’est-à-dire si le score n’est pas amélioré pour les itérations early_stopping_n_iters.

blocked_models
Obligatoire
list(str) ou list(Classification) <xref:for classification task> ou list(Regression) <xref:for regression task> ou list(Forecasting) <xref:for forecasting task>

Liste d’algorithmes à ignorer pour une expérience. Si enable_tf est défini sur False, les modèles TensorFlow sont ajoutés dans blocked_models.

blacklist_models
Obligatoire
list(str) ou list(Classification) <xref:for classification task> ou list(Regression) <xref:for regression task> ou list(Forecasting) <xref:for forecasting task>

Paramètre déprécié, utilisez plutôt blocked_models.

exclude_nan_labels
Obligatoire

Indique s’il faut exclure les lignes avec des valeurs NaN dans l’étiquette. La valeur par défaut est True.

verbosity
Obligatoire
int

Niveau de verbosité de l’écriture dans le fichier journal. La valeur par défaut est INFO ou 20. Les valeurs acceptables sont définies dans la bibliothèque de journalisation Python.

enable_tf
Obligatoire

Indique s’il faut activer/désactiver les algorithmes TensorFlow. La valeur par défaut est False.

model_explainability
Obligatoire

Indique s’il faut activer l’explication du meilleur modèle AutoML à la fin de toutes les itérations d’entraînement AutoML. La valeur par défaut est True. Pour plus d’informations, consultez Interprétabilité : explications des modèles dans le Machine Learning automatisé.

allowed_models
Obligatoire
list(str) ou list(Classification) <xref:for classification task> ou list(Regression) <xref:for regression task> ou list(Forecasting) <xref:for forecasting task>

Liste des noms de modèle à rechercher pour une expérience. Si non spécifiée, tous les modèles pris en charge pour la tâche sont utilisés, à l’exception des modèles spécifiés dans blocked_models ou des modèles TensorFlow dépréciés. Les modèles pris en charge pour chaque type de tâche sont décrits dans la classe SupportedModels.

allowed_models
Obligatoire

Liste des noms de modèle à rechercher pour une expérience. Si non spécifiée, tous les modèles pris en charge pour la tâche sont utilisés, à l’exception des modèles spécifiés dans blocked_models ou des modèles TensorFlow dépréciés. Les modèles pris en charge pour chaque type de tâche sont décrits dans la classe SupportedModels.

whitelist_models
Obligatoire

Paramètre déprécié, utilisez plutôt allowed_models.

enable_onnx_compatible_models
Obligatoire

Indique s’il faut activer ou désactiver l’application des modèles compatibles ONNX. La valeur par défaut est False. Pour plus d’informations sur Open Neural Network Exchange (ONNX) et Azure Machine Learning, consultez cet article.

forecasting_parameters
Obligatoire

Objet pour contenir tous les paramètres spécifiques de prévision.

time_column_name
Obligatoire
str

Nom de la colonne de temps. Ce paramètre est obligatoire pendant la prévision pour spécifier la colonne datetime dans les données d’entrée utilisées afin de générer la série chronologique et de déduire sa fréquence. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

max_horizon
Obligatoire
int

Horizon maximal de prévision souhaité en unités de fréquence de série chronologique. La valeur par défaut est 1. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

Les unités sont basées sur l’intervalle de temps de vos données d’entraînement (par ex., mensuelles, hebdomadaires) que l’analyste doit prévoir. Quand la tâche est de type prévision, ce paramètre est obligatoire. Pour plus d’informations sur la définition des paramètres de prévision, consultez Entraîner automatiquement un modèle de prévision de série chronologique.

grain_column_names
Obligatoire
str ou list(str)

Noms des colonnes utilisées pour regrouper une série chronologique. Permet de créer plusieurs séries. Si le grain n’est pas défini, le jeu de données est considéré être une série chronologique. Ce paramètre est utilisé avec les tâches de type prévision. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

target_lags
Obligatoire
int ou list(int)

Nombre de périodes passées à décaler par rapport à la colonne cible. La valeur par défaut est 1. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

Pendant la prévision, ce paramètre correspond au nombre de lignes dont les valeurs cibles doivent être décalées en fonction de la fréquence des données. Ce paramètre est représenté sous la forme d’une liste ou d’un entier unique. Un décalage est nécessaire en l’absence de correspondance ou de corrélation par défaut des relations entre les variables indépendantes et la variable dépendante. Par exemple, quand vous essayez de prévoir la demande d’un produit, la demande mensuelle peut dépendre du prix de certaines matières premières trois mois auparavant. Dans ce cas, vous pouvez appliquer un décalage négatif de trois mois à la cible (la demande) afin que le modèle soit entraîné sur la relation appropriée. Pour plus d’informations, consultez Entraîner automatiquement un modèle de prévision de série chronologique.

feature_lags
Obligatoire
str

Indicateur de génération de décalages pour les caractéristiques numériques. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

target_rolling_window_size
Obligatoire
int

Nombre de périodes passées utilisées pour créer une moyenne de fenêtres dynamiques de la colonne cible. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

Pendant la prévision, ce paramètre correspond à n périodes historiques à utiliser pour générer les valeurs prévues, < = taille du jeu d’entraînement. En cas d’omission, n est la taille du jeu d’apprentissage complet. Spécifiez ce paramètre si vous souhaitez prendre en compte seulement une partie des données historiques pour l’entraînement du modèle.

country_or_region
Obligatoire
str

Pays/région utilisé pour générer les caractéristiques de congés. Il doit s’agir des codes de pays/région à deux lettres au format ISO 3166, par exemple, « US » ou « GB ». Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

use_stl
Obligatoire
str

Configurez la décomposition STL de la colonne cible de série chronologique. use_stl peut prendre trois valeurs : None (valeur par défaut) : aucune décomposition STL, season : génère uniquement le composant de saison, et season_trend : génère des composants de saison et de tendance. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

seasonality
Obligatoire
int

Définissez la saisonnalité des séries chronologiques. Si la saisonnalité est définie sur -1, elle est déduite. Si use_stl n’est pas défini, ce paramètre n’est pas utilisé. Ce paramètre est déprécié. Utilisez plutôt forecasting_parameters.

short_series_handling_configuration
Obligatoire
str

Paramètre définissant la manière dont AutoML doit gérer les séries chronologiques courtes.

Valeurs possibles : « auto » (par défaut), « Remplir », « Annuler » et Aucune.

  • auto les séries courtes sont remplies en l’absence de séries longues. Sinon, les séries courtes sont annulées.
  • remplir toutes les séries courtes sont remplies.
  • annuler toutes les séries courtes sont annulées.
  • Aucune les séries courtes ne sont pas modifiées. Si la valeur est « remplir », la table est remplie avec les zéros et les valeurs vides pour les régresseurs et les valeurs aléatoires pour la cible avec la moyenne égale à la valeur médiane cible pour l’ID de série chronologique donné. Si la valeur médiane est supérieure ou égale à zéro, la valeur remplie minimale est découpée par zéro : Entrée :

Date

numeric_value

string

cible

2020-01-01

23

green

55

Sortie en supposant que le nombre minimal de valeurs est de quatre : +————+—————+———-+—–+ | Date | numeric_value | string | cible | +============+===============+==========+========+ | 29/12/2019 | 0 | NA | 55.1 | +————+—————+———-+——–+ | 30/12/2019 | 0 | NA | 55.6 | +————+—————+———-+——–+ | 31/12/2019 | 0 | NA | 54.5 | +————+—————+———-+——–+ | 2020-01-01 | 23 | vert | 55 | +————+—————+———-+——–+

Remarque : Nous avons deux paramètres short_series_handling_configuration et legacy short_series_handling. Lorsque les deux paramètres sont définis, nous les synchronisons comme indiqué dans le tableau ci-dessous (short_series_handling_configuration et short_series_handling par souci de concision sont marqués respectivement comme handling_configuration et handling).

Manipulation

handling_configuration

gestion résultante

handling_configuration résultant

True

auto

True

auto

True

Pad

True

auto

True

drop

True

auto

True

None

False

None

False

auto

False

None

False

Pad

False

None

False

drop

False

None

False

None

False

None

freq
Obligatoire
str ou None

Fréquence de prévision.

Lors d'une prévision, ce paramètre représente la période pour laquelle la prévision est souhaitée, par exemple tous les jours, toutes les semaines, tous les ans, etc. La fréquence de prévision correspond à la fréquence du jeu de données par défaut. Vous pouvez la définir sur une valeur supérieure (mais pas inférieure) à la fréquence du jeu de données. Nous allons agréger les données et générer les résultats à la fréquence prévue. Par exemple, pour les données quotidiennes, vous pouvez définir une fréquence quotidienne, hebdomadaire ou mensuelle, mais pas toutes les heures. La fréquence doit correspondre à un alias de décalage Pandas. Pour plus d’informations, consultez la documentation Pandas : https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects

target_aggregation_function
Obligatoire
str ou None

Fonction à utiliser pour agréger la colonne cible de la série chronologique de façon à ce qu’elle soit conforme à une fréquence spécifiée par l’utilisateur. Si target_aggregation_function est défini, mais que le paramètre freq ne l’est pas, une erreur est générée. Les fonctions d’agrégation cibles possibles sont les suivantes : « sum », « max », « min » et « mean ».

Freq

target_aggregation_function

Mécanisme de correction de la régularité des données

Aucun (par défaut)

Aucun (par défaut)

L’agrégation n’est pas appliquée. Si la fréquence valide ne peut pas être déterminée, l’erreur est déclenchée.

Une valeur

Aucun (par défaut)

L’agrégation n’est pas appliquée. Si le nombre de points de données conformes à la grille de fréquence donnée est inférieur à 90 %, ces points seront supprimés, sinon, l’erreur est déclenchée.

Aucun (par défaut)

Fonction d’agrégation

L’erreur concernant les paramètres de fréquence manquants est générée.

Une valeur

Fonction d’agrégation

Agréger à la fréquence à l’aide de la fonction providedaggregation.

enable_voting_ensemble
Obligatoire

Indique s’il faut activer ou désactiver l’itération VotingEnsemble. La valeur par défaut est True. Pour plus d’informations sur les ensembles, consultez Configuration des ensembles.

enable_stack_ensemble
Obligatoire

Indique s’il faut activer ou désactiver l’itération StackEnsemble. La valeur par défaut est Aucun. Si l’indicateur enable_onnx_compatible_models est défini, l’itération StackEnsemble est désactivée. De même, pour les tâches de série chronologique, l’itération StackEnsemble est désactivée par défaut, afin d’éviter les risques de sur-ajustement en raison de l’utilisation d’un petit jeu d’entraînement dans l’ajustement du méta-apprenant. Pour plus d’informations sur les ensembles, consultez Configuration des ensembles.

debug_log
Obligatoire
str

Fichier journal où écrire les informations de débogage. Si non spécifié, « automl.log » est utilisé.

training_data
Obligatoire

Données de formation à utiliser dans l’expérience. Doivent contenir des caractéristiques d’entraînement et une colonne d’étiquette (éventuellement une colonne de pondération d’échantillons). Si training_data est spécifié, le paramètre label_column_name doit également l’être.

training_data a fait son apparition dans la version 1.0.81.

validation_data
Obligatoire

Données de validation à utiliser dans l’expérience. Doivent contenir des caractéristiques d’entraînement et une colonne d’étiquette (éventuellement une colonne de pondération d’échantillons). Si validation_data est spécifié, les paramètres training_data et label_column_name doivent également l’être.

validation_data a fait son apparition dans la version 1.0.81. Pour plus d’informations, consultez Configurer des fractionnements de données et la validation croisée dans le Machine Learning automatisé.

test_data
Obligatoire

La fonctionnalité de test de modèle utilisant les jeux de données de test ou les fractionnements de données de test est une fonctionnalité en préversion et peut changer à tout moment. Données de test à utiliser pour une série de tests et démarrées automatiquement une fois l’apprentissage du modèle terminé. La série de tests obtient les prédictions à l’aide du meilleur modèle et calcule des métriques en fonction de ces prédictions.

Si ce paramètre ou le test_size paramètre n’est pas spécifié, aucune série de tests n’est automatiquement exécutée au terme de l’apprentissage du modèle. Les données de test doivent contenir les fonctionnalités et la colonne d’étiquette. Si test_data est spécifié, le paramètre label_column_name doit l’être.

test_size
Obligatoire

La fonctionnalité de test de modèle utilisant les jeux de données de test ou les fractionnements de données de test est une fonctionnalité en préversion et peut changer à tout moment. Fraction des données d’apprentissage à conserver pour les données de test d’une série de tests et automatiquement démarrées au terme de l’apprentissage du modèle. La série de tests obtient les prédictions à l’aide du meilleur modèle et calcule des métriques en fonction de ces prédictions.

Doit être comprise entre 0,0 et 1,0 non inclus. Si test_size est spécifié en même temps que validation_size, les données de test sont fractionnées à partir de training_data avant le fractionnement des données de validation. Par exemple, si validation_size=0.1, test_size=0.1 et les données de formation d’origine ont 1 000 lignes, alors les données de test ont 100 lignes, les données de validation contiennent 90 lignes et les données de formation comportent 810 lignes.

Pour les tâches basées sur la régression, l’échantillonnage aléatoire est utilisé. Pour les tâches de classification, l’échantillonnage stratifié est utilisé. Les prévisions ne prennent pas actuellement en charge la spécification d’un jeu de données de test à l’aide d’un fractionnement formation/test.

Si ce paramètre ou le test_data paramètre n’est pas spécifié, aucune série de tests n’est automatiquement exécutée au terme de l’apprentissage du modèle.

label_column_name
Obligatoire

Nom de la colonne d’étiquette. Si les données d'entrée proviennent d'un pandas.DataFrame qui ne possède pas de noms de colonnes, les index de colonnes peuvent être utilisés, exprimés sous forme d'entiers.

Ce paramètre s’applique aux paramètres training_data, validation_data et test_data. label_column_name a fait son apparition dans la version 1.0.81.

weight_column_name
Obligatoire

Nom de la colonne de pondération d’échantillons. Le ML automatisé prend en charge une colonne pondérée en entrée. Les lignes des données sont alors pondérées en conséquence. Si les données d'entrée proviennent d'un pandas.DataFrame qui ne possède pas de noms de colonnes, les index de colonnes peuvent être utilisés, exprimés sous forme d'entiers.

Ce paramètre s’applique aux paramètres training_data et validation_data. weight_column_names a été introduit dans la version 1.0.81.

cv_split_column_names
Obligatoire

Liste des noms des colonnes contenant un fractionnement de validation croisée personnalisée. Chaque colonne de fractionnement de validation croisée représente un fractionnement de validation croisée où chaque ligne indique 1 pour l’entraînement ou 0 pour la validation.

Ce paramètre s’applique au paramètre training_data à des fins de validation croisée personnalisée. cv_split_column_names a été introduit dans la version 1.6.0

Utilisez cv_split_column_names ou cv_splits_indices.

Pour plus d’informations, consultez Configurer des fractionnements de données et la validation croisée dans le Machine Learning automatisé.

enable_local_managed
Obligatoire

Paramètre désactivé. Les exécutions gérées localement ne peuvent pas être activées pour l’instant.

enable_dnn
Obligatoire

Indique s’il faut inclure des modèles basés sur DNN lors de la sélection du modèle. La valeur par défaut de l’init est Aucun. Toutefois, la valeur par défaut est True pour les tâches DNN NLP et False pour toutes les autres tâches AutoML.

Remarques

Le code suivant illustre la création d’un objet AutoMLConfig et la soumission d’une expérience pour la régression :


   automl_settings = {
       "n_cross_validations": 3,
       "primary_metric": 'r2_score',
       "enable_early_stopping": True,
       "experiment_timeout_hours": 1.0,
       "max_concurrent_iterations": 4,
       "max_cores_per_iteration": -1,
       "verbosity": logging.INFO,
   }

   automl_config = AutoMLConfig(task = 'regression',
                               compute_target = compute_target,
                               training_data = train_data,
                               label_column_name = label,
                               **automl_settings
                               )

   ws = Workspace.from_config()
   experiment = Experiment(ws, "your-experiment-name")
   run = experiment.submit(automl_config, show_output=True)

Un exemple complet est disponible dans Régression

Des exemples d’utilisation d’AutoMLConfig pour les prévisions sont disponibles dans ces notebooks :

Des exemples d’utilisation d’AutoMLConfig pour tous les types de tâches sont disponibles dans ces notebooks de ML automatisé.

Pour plus d’informations sur le ML automatisé, consultez les articles :

Pour plus d’informations sur les différentes options de configuration des fractionnements de données d’entraînement/de validation et sur la validation croisée de vos expériences de Machine Learning automatisé, AutoML, consultez Configurer les fractionnements de données et la validation croisée dans le Machine Learning automatisé.

Méthodes

as_serializable_dict

Convertissez l’objet en dictionnaire.

get_supported_dataset_languages

Obtenez les langues prises en charge et les codes de langue correspondants au format ISO 639-3.

as_serializable_dict

Convertissez l’objet en dictionnaire.

as_serializable_dict() -> Dict[str, Any]

get_supported_dataset_languages

Obtenez les langues prises en charge et les codes de langue correspondants au format ISO 639-3.

get_supported_dataset_languages(use_gpu: bool) -> Dict[Any, Any]

Paramètres

Nom Description
cls
Obligatoire

Objet de classe de AutoMLConfig.

use_gpu
Obligatoire

Valeur booléenne indiquant si le calcul GPU est utilisé ou non.

Retours

Type Description

Dictionnaire de format {: }. Le code de langue suit la norme ISO 639-3, consultez https://en.wikipedia.org/wiki/List_of_ISO_639-3_codes