Partager via


AutoMLConfig Classe

Représente la configuration de l’envoi d’une expérience ML automatisée 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 d’apprentissage à 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.

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 », « régression » ou « prévision » en fonction du type de problème ML automatisé à résoudre.

path
Obligatoire
str

Chemin complet du dossier du projet Azure Machine Learning. S’il n’est pas spécifié, la valeur par défaut consiste à utiliser le répertoire actif ou « ».

iterations
Obligatoire
int

Nombre total de combinaisons d’algorithmes et de paramètres différents à tester pendant une expérience ML automatisée. S’il n’est pas spécifié, la valeur par défaut est 1 000 itérations.

primary_metric
Obligatoire
str ou Metric

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

Si elle n’est pas spécifiée, la précision est utilisée pour les tâches de classification, la moyenne racine normalisée est utilisée pour les tâches de prévision et de régression, la précision est utilisée pour la classification d’images et la classification de plusieurs étiquettes d’images, et la précision moyenne moyenne est utilisée pour la détection d’objets 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 passée, sinon AutoML sélectionne une classe positive en fonction de la valeur encodée par étiquette.
  2. tâche de classification multiclasse 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 Machine Learning automatisée. Consultez https://docs.microsoft.com/en-us/azure/machine-learning/concept-automated-ml#local-remote pour plus d’informations sur les cibles de calcul.

spark_context
Obligatoire
<xref:SparkContext>

Contexte Spark. Applicable uniquement lorsqu’il est utilisé dans l’environnement Azure Databricks/Spark.

X
Obligatoire

Fonctionnalités d’entraînement à utiliser lors de l’ajustement de pipelines pendant une expérience. Ce paramètre est déconseillé. Utilisez training_data et label_column_name à la place.

y
Obligatoire

Étiquettes d’entraînement à utiliser lors de l’ajustement de pipelines pendant une expérience. Il s’agit de la valeur que votre modèle prédira. Ce paramètre est déconseillé. Utilisez training_data et label_column_name à la place.

sample_weight
Obligatoire

Poids à donner à chaque échantillon d’entraînement lors de 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 lors de la Xspécification . Ce paramètre est déconseillé. Utilisez training_data et weight_column_name à la place.

X_valid
Obligatoire

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

Si elle est spécifiée, ou y_validsample_weight_valid doit également être spécifiée. Ce paramètre est déconseillé. Utilisez plutôt validation_data et label_column_name.

y_valid
Obligatoire

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

Les deux X_valid et y_valid doivent être spécifiés ensemble. Ce paramètre est déconseillé. Utilisez plutôt validation_data et label_column_name.

sample_weight_valid
Obligatoire

Poids à donner à chaque échantillon 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 lors de la X_validspécification . Ce paramètre est déconseillé. Utilisez validation_data et weight_column_name à la place.

cv_splits_indices
Obligatoire

Index où fractionner les données d’apprentissage pour la validation croisée. Chaque ligne est un pli croisé distinct et dans chaque interfold, fournissez 2 tableaux numpy, le premier avec les index pour les échantillons à utiliser pour les données d’apprentissage et le deuxième avec les index à utiliser pour les données de validation. c’est-à-dire [[t1, v1], [t2, v2], ...] où t1 est les indices d’entraînement pour le premier repli croisé et v1 est les index de validation pour le premier pli croisé.

Pour spécifier des données existantes en tant que données de validation, utilisez validation_data. Pour permettre à AutoML d’extraire les données de validation des données d’apprentissage à la place, spécifiez l’une ou l’autre n_cross_validationsvalidation_size. Utilisez cv_split_column_names si vous avez des colonnes de validation croisée dans training_data.

validation_size
Obligatoire

Quelle fraction des données à conserver pour validation lorsque les données de validation de l’utilisateur ne sont pas spécifiées. Cela doit être compris entre 0,0 et 1,0 non inclus.

Spécifiez validation_data pour fournir des données de validation, sinon définir n_cross_validations ou validation_size extraire des données de validation à partir des données d’apprentissage spécifiées. Pour un pli de validation croisée personnalisé, utilisez cv_split_column_names.

Pour plus d’informations, consultez Configurer les 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 lorsque les données de validation utilisateur ne sont pas spécifiées.

Spécifiez validation_data pour fournir des données de validation, sinon définir n_cross_validations ou validation_size extraire des données de validation à partir des données d’apprentissage spécifiées. Pour un pli de validation croisée personnalisé, utilisez cv_split_column_names.

Pour plus d’informations, consultez Configurer les 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. Combinaison des métriques de jeu de y_min tests et y_max utilisées pour normaliser les métriques du jeu de tests en fonction de la plage de données d’entrée. Ce paramètre est déconseillé. Au lieu de cela, cette valeur est calculée à partir des données.

y_max
Obligatoire

Valeur maximale de y pour une expérience de régression. Combinaison des métriques de jeu de y_min tests et y_max utilisées pour normaliser les métriques du jeu de tests en fonction de la plage de données d’entrée. Ce paramètre est déconseillé. Au lieu de cela, cette valeur est calculée à partir des données.

num_classes
Obligatoire
int

Nombre de classes dans les données d’étiquette pour une expérience de classification. Ce paramètre est déconseillé. Au lieu de cela, cette valeur est calculée à partir des données.

featurization
Obligatoire

'auto' / 'off' / FeaturizationConfig Indicateur pour savoir si l’étape de caractérisation doit être effectuée automatiquement ou non, ou si la 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 détecté automatiquement. En fonction du prétraitement/caractérisation du type de colonne détecté, effectuez les opérations suivantes :

  • Catégorique : encodage cible, encodage à chaud, suppression des catégories de cardinalité élevée, imputez les valeurs manquantes.

  • Numérique : Impute les valeurs manquantes, la distance du cluster, le poids des preuves.

  • DateTime : plusieurs fonctionnalités telles que jour, secondes, minutes, heures, etc.

  • Texte : sac de mots, incorporation de Word préentraînée, encodage cible de texte.

Vous trouverez plus d’informations dans l’article Configurer des expériences ML automatisées 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 de colonne, la modification des paramètres du transformateur et la suppression de colonnes. Pour plus d’informations, consultez Personnaliser l’ingénierie des fonctionnalités.

Remarque : les fonctionnalités timeseries sont gérées séparément lorsque le type de tâche est défini sur la prévision indépendamment 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 utiliser tous les cœurs possibles par itération par exécution enfant.

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

max_concurrent_iterations
Obligatoire
int

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

  • Les clusters AmlCompute prennent en charge une interation en cours d’exécution par nœud. Pour plusieurs exécutions parentes d’expérience AutoML 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. 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 machine virtuelle DSVM. Pour plusieurs expériences exécutées en parallèle sur une seule machine virtuelle DSVM, la somme des valeurs de max_concurrent_iterations 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 nommé concurrent_iterations.

iteration_timeout_minutes
Obligatoire
int

Durée maximale en minutes pendant laquelle chaque itération peut s’exécuter avant qu’elle ne se termine. S’il n’est pas spécifié, une valeur de 1 mois ou 43200 minutes est utilisée.

mem_in_mb
Obligatoire
int

Utilisation maximale de la mémoire pour laquelle chaque itération peut s’exécuter avant qu’elle ne se termine. S’il n’est pas spécifié, une valeur de 1 Pb ou 1073741824 Mo est utilisée.

enforce_time_on_windows
Obligatoire

Indique s’il faut appliquer une limite de temps à l’entraînement du modèle à chaque itération sur Windows. La valeur par défaut est True. Si vous exécutez à partir d’un fichier de script Python (.py), consultez la documentation relative à 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 telle que 0,25 représentant 15 minutes. Si ce n’est pas spécifié, 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 000 000 (colonne de temps de lignes) ou qu’une erreur se produit.

experiment_exit_score
Obligatoire

Score cible pour l’expérience. L’expérience se termine une fois ce score atteint. Si elle n’est pas spécifiée (aucun critère), l’expérience s’exécute jusqu’à ce qu’aucune progression supplémentaire ne soit effectuée sur la métrique principale. Pour plus d’informations sur les critères de sortie, consultez cet article.

enable_early_stopping
Obligatoire

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

Logique d’arrêt anticipée :

  • Pas d’arrêt précoce pour les 20 premières itérations (repères).

  • La fenêtre d’arrêt anticipée démarre sur la 21e itération et recherche des itérations early_stopping_n_iters

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

  • AutoML planifie toujours 2 itérations d’ensemble AFTER, ce qui peut entraîner l’arrêt précoce

    scores plus élevés.

  • L’arrêt anticipé est déclenché si la valeur absolue du meilleur score calculé est la même pour le passé

    early_stopping_n_iters itérations, autrement dit, s’il n’y a pas d’amélioration du score 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 la valeur est False, les modèles TensorFlow sont inclus 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éconseillé, utilisez blocked_models à la place.

exclude_nan_labels
Obligatoire

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

verbosity
Obligatoire
int

Niveau de détail pour 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éconseillé 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 de modèle 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èles à rechercher dans une expérience. Si ce n’est pas spécifié, tous les modèles pris en charge pour la tâche sont utilisés moins les modèles TensorFlow spécifiés blocked_models ou déconseillés. Les modèles pris en charge pour chaque type de tâche sont décrits dans la SupportedModels classe.

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éconseillé, utilisez allowed_models à la place.

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 prévision.

time_column_name
Obligatoire
str

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

max_horizon
Obligatoire
int

Horizon de prévision maximal 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’apprentissage, par exemple, mensuelles et hebdomadaires que le prévisionneur doit prédire. Lorsque le type de tâche est prévu, ce paramètre est requis. Pour plus d’informations sur la définition des paramètres de prévision, consultez Apprentissage automatique d’un modèle de prévision de série chronologique. Ce paramètre est déconseillé. Utilisez plutôt forecasting_parameters.

grain_column_names
Obligatoire
str ou list(str)

Noms des colonnes utilisées pour regrouper une série chronologique. Il peut être utilisé pour créer plusieurs séries. Si le grain n’est pas défini, le jeu de données est supposé être une série chronologique. Ce paramètre est utilisé avec la prévision de type de tâche. Ce paramètre est déconseillé. Utilisez plutôt forecasting_parameters.

target_lags
Obligatoire
int ou list(int)

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

Lors de la prévision, ce paramètre représente le nombre de lignes à décalager les valeurs cibles en fonction de la fréquence des données. Il s’agit d’une liste ou d’un entier unique. Le décalage doit être utilisé lorsque la relation entre les variables indépendantes et la variable dépendante ne correspond pas ou ne correspond pas par défaut. Par exemple, lorsque vous essayez de prévoir la demande d’un produit, la demande en tout mois peut dépendre du prix des produits spécifiques 3 mois avant. Dans cet exemple, vous souhaiterez peut-être différer négativement la cible (demande) de 3 mois afin que le modèle s’entraîne sur la relation correcte. Pour plus d’informations, consultez Effectuer l’apprentissage automatique d’un modèle de prévision de série chronologique.

feature_lags
Obligatoire
str

Indicateur pour générer des retards pour les fonctionnalités numériques. Ce paramètre est déconseillé. 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être propagée de la colonne cible. Ce paramètre est déconseillé. Utilisez plutôt forecasting_parameters.

Lors de la prévision, ce paramètre représente n périodes historiques à utiliser pour générer des valeurs prévues, <= taille du jeu d’entraînement. S’il est omis, n est la taille complète du jeu d’entraînement. 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 des fonctionnalités de vacances. Il doit s’agir du code pays/région ISO 3166 à deux lettres, par exemple « US » ou « Go ». Ce paramètre est déconseillé. Utilisez plutôt forecasting_parameters.

use_stl
Obligatoire
str

Configurez la décomposition STL de la colonne cible de série chronologique. use_stl pouvez prendre trois valeurs : Aucun (valeur par défaut) - aucune décomposition stl, 'saison' - générer uniquement le composant de saison et season_trend - générer à la fois des composants de saison et de tendance. Ce paramètre est déconseillé. Utilisez plutôt forecasting_parameters.

seasonality
Obligatoire
int ou str

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

short_series_handling_configuration
Obligatoire
str

Paramètre définissant comment si AutoML doit gérer des séries chronologiques courtes.

Valeurs possibles : « auto » (par défaut), « pad », « drop » et None.

  • auto short series sera rembourré s’il n’y a pas de longue série, sinon la série courte sera supprimée.
  • pad toutes les séries courtes seront rembourrées.
  • supprimer toutes les séries courtes seront supprimées ».
  • Aucune série courte ne sera modifiée. Si la valeur est « pad », 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 médiane de la valeur cible pour l’ID de série chronologique donné. Si la médiane est supérieure ou égale à zéro, la valeur réduite est rognée par zéro : Entrée :

Date

numeric_value

chaîne

cible

2020-01-01

23

vert

55

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

Date

numeric_value

chaîne

cible

2019-12-29

0

NA

55.1

2019-12-30

0

NA

55.6

2019-12-31

0

NA

54.5

2020-01-01

23

vert

55

Note: Nous avons deux paramètres short_series_handling_configuration et short_series_handling hérités. Lorsque les deux paramètres sont définis, nous les synchroniseons comme indiqué dans le tableau ci-dessous (short_series_handling_configuration et short_series_handling pour la concision sont marqués comme handling_configuration et la gestion respectivement).

manutention

handling_configuration

gestion résultante

handling_configuration résultant

Vrai

voiture

Vrai

voiture

Vrai

coussinet

Vrai

voiture

Vrai

goutte

Vrai

voiture

Vrai

Aucun

Faux

Aucun

Faux

voiture

Faux

Aucun

Faux

coussinet

Faux

Aucun

Faux

goutte

Faux

Aucun

Faux

Aucun

Faux

Aucun

freq
Obligatoire
str ou None

Fréquence de prévision.

Lors de la prévision, ce paramètre représente la période avec laquelle la prévision est souhaitée, par exemple quotidienne, hebdomadaire, annuelle, etc. La fréquence de prévision est la fréquence du jeu de données par défaut. Vous pouvez éventuellement le définir sur une fréquence supérieure (mais pas inférieure) à celle du jeu de données. Nous allons agréger les données et générer les résultats à la fréquence de prévision. Par exemple, pour les données quotidiennes, vous pouvez définir la fréquence à être quotidienne, hebdomadaire ou mensuelle, mais pas toutes les heures. La fréquence doit être 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 série chronologique afin de se conformer à une fréquence spécifiée par l’utilisateur. Si le target_aggregation_function est défini, mais que le paramètre freq n’est pas défini, l’erreur est générée. Les fonctions d’agrégation cible possibles sont : « somme », « max », « min » et « moyenne ».

Freq

target_aggregation_function

Mécanisme de correction de la fréquence des données

None (valeur par défaut)

None (valeur 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 certaine valeur

None (valeur 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 points%these seront supprimés, sinon l’erreur sera déclenchée.

None (valeur par défaut)

Fonction d’agrégation

Erreur concernant les paramètres de fréquence manquants déclenchés.

Une certaine valeur

Fonction d’agrégation

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

enable_voting_ensemble
Obligatoire

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

enable_stack_ensemble
Obligatoire

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

debug_log
Obligatoire
str

Fichier journal dans lequel écrire des informations de débogage. S’il n’est pas spécifié, ' automl.log' est utilisé.

training_data
Obligatoire

Données d’apprentissage à utiliser dans l’expérience. Il doit contenir à la fois des fonctionnalités d’entraînement et une colonne d’étiquette (éventuellement une colonne d’échantillonnage). Si training_data elle est spécifiée, le label_column_name paramètre doit également être spécifié.

training_data a été introduit 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 été introduit dans la version 1.0.81. Pour plus d’informations, consultez Configurer les fractionnements de données et la validation croisée dans le Machine Learning automatisé.

test_data
Obligatoire

La fonctionnalité Test de modèle à l’aide de jeux de données de test ou de fractionnements de données de test est une fonctionnalité en préversion et peut changer à tout moment. Données de test à utiliser pour une exécution de test qui sera automatiquement démarrée une fois l’entraînement du modèle terminé. L’exécution de test obtient des prédictions à l’aide du meilleur modèle et calcule les métriques en fonction de ces prédictions.

Si ce paramètre ou ce test_size paramètre ne sont pas spécifiés, aucune exécution de test n’est exécutée automatiquement une fois l’entraînement du modèle terminé. Les données de test doivent contenir à la fois des fonctionnalités et une colonne d’étiquette. Si test_data elle est spécifiée, le label_column_name paramètre doit être spécifié.

test_size
Obligatoire

La fonctionnalité Test de modèle à l’aide de jeux de données de test ou de fractionnements de données de test est une fonctionnalité en préversion et peut changer à tout moment. Quelle fraction des données d’apprentissage à conserver pour les données de test pour une exécution de test qui sera automatiquement démarrée une fois l’entraînement du modèle terminé. L’exécution de test obtient des prédictions à l’aide du meilleur modèle et calcule les métriques en fonction de ces prédictions.

Cela doit être compris entre 0,0 et 1,0 non inclus. Si test_size elle est spécifiée en même temps que validation_size, les données de training_data test sont fractionnées avant le fractionnement des données de validation. Par exemple, si validation_size=0.1les test_size=0.1 données d’apprentissage d’origine ont 1 000 lignes, les données de test ont 100 lignes, les données de validation contiennent 90 lignes et les données d’apprentissage ont 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é. La prévision ne prend actuellement pas en charge la spécification d’un jeu de données de test à l’aide d’un fractionnement d’apprentissage/test.

Si ce paramètre ou ce test_data paramètre ne sont pas spécifiés, aucune exécution de test n’est exécutée automatiquement une fois l’entraînement du modèle terminé.

label_column_name
Obligatoire

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

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

weight_column_name
Obligatoire

Nom de l’exemple de colonne de poids. Le ML automatisé prend en charge une colonne pondérée en tant qu’entrée, ce qui entraîne une pondération des lignes dans les données. Si les données d’entrée proviennent d’un pandas. DataFrame qui n’a pas de noms de colonnes, les index de colonne peuvent être utilisés à la place, exprimés sous forme d’entiers.

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

cv_split_column_names
Obligatoire

Liste des noms des colonnes qui contiennent un fractionnement de validation croisée personnalisée. Chacune des colonnes fractionnées cv représente un fractionnement cv où chaque ligne est marquée 1 pour l’entraînement ou 0 pour validation.

Ce paramètre s’applique au training_data paramètre à des fins de validation croisée personnalisées. 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 les 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 locales ne peuvent pas être activées pour l’instant.

enable_dnn
Obligatoire

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

task
Obligatoire
str ou Tasks

Type de tâche à exécuter. Les valeurs peuvent être « classification », « régression » ou « prévision » en fonction du type de problème ML automatisé à résoudre.

path
Obligatoire
str

Chemin complet du dossier du projet Azure Machine Learning. S’il n’est pas spécifié, la valeur par défaut consiste à utiliser le répertoire actif ou « ».

iterations
Obligatoire
int

Nombre total de combinaisons d’algorithmes et de paramètres différents à tester pendant une expérience ML automatisée. S’il n’est pas spécifié, la valeur par défaut est 1 000 itérations.

primary_metric
Obligatoire
str ou Metric

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

Si elle n’est pas spécifiée, la précision est utilisée pour les tâches de classification, la moyenne racine normalisée est utilisée pour les tâches de prévision et de régression, la précision est utilisée pour la classification d’images et la classification de plusieurs étiquettes d’images, et la précision moyenne moyenne est utilisée pour la détection d’objets 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 passée, sinon AutoML sélectionne une classe positive en fonction de la valeur encodée par étiquette.
  2. tâche de classification multiclasse 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 Machine Learning automatisée. Consultez https://docs.microsoft.com/azure/machine-learning/how-to-auto-train-remote pour plus d’informations sur les cibles de calcul.

spark_context
Obligatoire
<xref:SparkContext>

Contexte Spark. Applicable uniquement lorsqu’il est utilisé dans l’environnement Azure Databricks/Spark.

X
Obligatoire

Fonctionnalités d’entraînement à utiliser lors de l’ajustement de pipelines pendant une expérience. Ce paramètre est déconseillé. Utilisez training_data et label_column_name à la place.

y
Obligatoire

Étiquettes d’entraînement à utiliser lors de l’ajustement de pipelines pendant une expérience. Il s’agit de la valeur que votre modèle prédira. Ce paramètre est déconseillé. Utilisez training_data et label_column_name à la place.

sample_weight
Obligatoire

Poids à donner à chaque échantillon d’entraînement lors de 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 lors de la Xspécification . Ce paramètre est déconseillé. Utilisez training_data et weight_column_name à la place.

X_valid
Obligatoire

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

Si elle est spécifiée, ou y_validsample_weight_valid doit également être spécifiée. Ce paramètre est déconseillé. Utilisez plutôt validation_data et label_column_name.

y_valid
Obligatoire

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

Les deux X_valid et y_valid doivent être spécifiés ensemble. Ce paramètre est déconseillé. Utilisez plutôt validation_data et label_column_name.

sample_weight_valid
Obligatoire

Poids à donner à chaque échantillon 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 lors de la X_validspécification . Ce paramètre est déconseillé. Utilisez validation_data et weight_column_name à la place.

cv_splits_indices
Obligatoire

Index où fractionner les données d’apprentissage pour la validation croisée. Chaque ligne est un pli croisé distinct et dans chaque interfold, fournissez 2 tableaux numpy, le premier avec les index pour les échantillons à utiliser pour les données d’apprentissage et le deuxième avec les index à utiliser pour les données de validation. c’est-à-dire [[t1, v1], [t2, v2], ...] où t1 est les indices d’entraînement pour le premier repli croisé et v1 est les index de validation pour le premier pli croisé. Cette option est prise en charge lorsque les données sont passées en tant que jeu de données fonctionnalités distincts et colonne Étiquette.

Pour spécifier des données existantes en tant que données de validation, utilisez validation_data. Pour permettre à AutoML d’extraire les données de validation des données d’apprentissage à la place, spécifiez l’une ou l’autre n_cross_validationsvalidation_size. Utilisez cv_split_column_names si vous avez des colonnes de validation croisée dans training_data.

validation_size
Obligatoire

Quelle fraction des données à conserver pour validation lorsque les données de validation de l’utilisateur ne sont pas spécifiées. Cela doit être compris entre 0,0 et 1,0 non inclus.

Spécifiez validation_data pour fournir des données de validation, sinon définir n_cross_validations ou validation_size extraire des données de validation à partir des données d’apprentissage spécifiées. Pour un pli de validation croisée personnalisé, utilisez cv_split_column_names.

Pour plus d’informations, consultez Configurer les 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 lorsque les données de validation utilisateur ne sont pas spécifiées.

Spécifiez validation_data pour fournir des données de validation, sinon définir n_cross_validations ou validation_size extraire des données de validation à partir des données d’apprentissage spécifiées. Pour un pli de validation croisée personnalisé, utilisez cv_split_column_names.

Pour plus d’informations, consultez Configurer les 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. Combinaison des métriques de jeu de y_min tests et y_max utilisées pour normaliser les métriques du jeu de tests en fonction de la plage de données d’entrée. Ce paramètre est déconseillé. Au lieu de cela, cette valeur est calculée à partir des données.

y_max
Obligatoire

Valeur maximale de y pour une expérience de régression. Combinaison des métriques de jeu de y_min tests et y_max utilisées pour normaliser les métriques du jeu de tests en fonction de la plage de données d’entrée. Ce paramètre est déconseillé. Au lieu de cela, cette valeur est calculée à partir des données.

num_classes
Obligatoire
int

Nombre de classes dans les données d’étiquette pour une expérience de classification. Ce paramètre est déconseillé. Au lieu de cela, cette valeur est calculée à partir des données.

featurization
Obligatoire

'auto' / 'off' / FeaturizationConfig Indicateur pour savoir si l’étape de caractérisation doit être effectuée automatiquement ou non, ou si la 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 détecté automatiquement. En fonction du prétraitement/caractérisation du type de colonne détecté, effectuez les opérations suivantes :

  • Catégorique : encodage cible, encodage à chaud, suppression des catégories de cardinalité élevée, imputez les valeurs manquantes.

  • Numérique : Impute les valeurs manquantes, la distance du cluster, le poids des preuves.

  • DateTime : plusieurs fonctionnalités telles que jour, secondes, minutes, heures, etc.

  • Texte : sac de mots, incorporation de Word préentraînée, encodage cible de texte.

Vous trouverez plus d’informations dans l’article Configurer des expériences ML automatisées 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 de colonne, la modification des paramètres du transformateur et la suppression de colonnes. Pour plus d’informations, consultez Personnaliser l’ingénierie des fonctionnalités.

Remarque : les fonctionnalités timeseries sont gérées séparément lorsque le type de tâche est défini sur la prévision indépendamment 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 utiliser tous les cœurs possibles par itération par exécution enfant.

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

max_concurrent_iterations
Obligatoire
int

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

  • Les clusters AmlCompute prennent en charge une interation en cours d’exécution 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 machine virtuelle DSVM. Pour plusieurs expériences exécutées en parallèle sur une seule machine virtuelle DSVM, la somme des valeurs de max_concurrent_iterations 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 nommé concurrent_iterations.

iteration_timeout_minutes
Obligatoire
int

Durée maximale en minutes pendant laquelle chaque itération peut s’exécuter avant qu’elle ne se termine. S’il n’est pas spécifié, une valeur de 1 mois ou 43200 minutes est utilisée.

mem_in_mb
Obligatoire
int

Utilisation maximale de la mémoire pour laquelle chaque itération peut s’exécuter avant qu’elle ne se termine. S’il n’est pas spécifié, une valeur de 1 Pb ou 1073741824 Mo est utilisée.

enforce_time_on_windows
Obligatoire

Indique s’il faut appliquer une limite de temps à l’entraînement du modèle à chaque itération sur Windows. La valeur par défaut est True. Si vous exécutez à partir d’un fichier de script Python (.py), consultez la documentation relative à 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 telle que 0,25 représentant 15 minutes. Si ce n’est pas spécifié, 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 000 000 (colonne de temps de lignes) ou qu’une erreur se produit.

experiment_exit_score
Obligatoire

Score cible pour l’expérience. L’expérience se termine une fois ce score atteint. Si elle n’est pas spécifiée (aucun critère), l’expérience s’exécute jusqu’à ce qu’aucune progression supplémentaire ne soit effectuée sur la métrique principale. 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 la résiliation anticipée si le score ne s’améliore pas à court terme. La valeur par défaut est True.

Logique d’arrêt anticipée :

  • Pas d’arrêt précoce pour les 20 premières itérations (repères).

  • La fenêtre d’arrêt anticipée démarre sur 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 le 31e.

  • AutoML planifie toujours 2 itérations d’ensemble AFTER, 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 itérations de early_stopping_n_iters passées, autrement dit, s’il n’y a pas d’amélioration du score 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 la valeur est False, les modèles TensorFlow sont inclus 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éconseillé, utilisez blocked_models à la place.

exclude_nan_labels
Obligatoire

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

verbosity
Obligatoire
int

Niveau de détail pour 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 des 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 de modèle 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èles à rechercher dans une expérience. Si ce n’est pas spécifié, tous les modèles pris en charge pour la tâche sont utilisés moins les modèles TensorFlow spécifiés blocked_models ou déconseillés. Les modèles pris en charge pour chaque type de tâche sont décrits dans la SupportedModels classe.

allowed_models
Obligatoire

Liste des noms de modèles à rechercher dans une expérience. Si ce n’est pas spécifié, tous les modèles pris en charge pour la tâche sont utilisés moins les modèles TensorFlow spécifiés blocked_models ou déconseillés. Les modèles pris en charge pour chaque type de tâche sont décrits dans la SupportedModels classe.

whitelist_models
Obligatoire

Paramètre déconseillé, utilisez allowed_models à la place.

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 qui contient tous les paramètres spécifiques de prévision.

time_column_name
Obligatoire
str

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

max_horizon
Obligatoire
int

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

Les unités sont basées sur l’intervalle de temps de vos données d’apprentissage, par exemple, mensuelles et hebdomadaires que le prévisionneur doit prédire. Lorsque le type de tâche est prévu, ce paramètre est requis. Pour plus d’informations sur la définition des paramètres de prévision, consultez Apprentissage automatique d’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. Il peut être utilisé pour créer plusieurs séries. Si le grain n’est pas défini, le jeu de données est supposé être une série chronologique. Ce paramètre est utilisé avec la prévision de type de tâche. Ce paramètre est déconseillé. Utilisez plutôt forecasting_parameters.

target_lags
Obligatoire
int ou list(int)

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

Lors de la prévision, ce paramètre représente le nombre de lignes à décalager les valeurs cibles en fonction de la fréquence des données. Il s’agit d’une liste ou d’un entier unique. Le décalage doit être utilisé lorsque la relation entre les variables indépendantes et la variable dépendante ne correspond pas ou ne correspond pas par défaut. Par exemple, lorsque vous essayez de prévoir la demande d’un produit, la demande en tout mois peut dépendre du prix des produits spécifiques 3 mois avant. Dans cet exemple, vous souhaiterez peut-être différer négativement la cible (demande) de 3 mois afin que le modèle s’entraîne sur la relation correcte. Pour plus d’informations, consultez Effectuer l’apprentissage automatique d’un modèle de prévision de série chronologique.

feature_lags
Obligatoire
str

Indicateur pour générer des retards pour les fonctionnalités numériques. Ce paramètre est déconseillé. 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être propagée de la colonne cible. Ce paramètre est déconseillé. Utilisez plutôt forecasting_parameters.

Lors de la prévision, ce paramètre représente n périodes historiques à utiliser pour générer des valeurs prévues, <= taille du jeu d’entraînement. S’il est omis, n est la taille complète du jeu d’entraînement. 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 des fonctionnalités de vacances. Il doit s’agir de codes pays/région à deux lettres ISO 3166, par exemple « US » ou « Go ». Ce paramètre est déconseillé. Utilisez plutôt forecasting_parameters.

use_stl
Obligatoire
str

Configurez la décomposition STL de la colonne cible de série chronologique. use_stl pouvez prendre trois valeurs : Aucun (valeur par défaut) - aucune décomposition stl, 'saison' - générer uniquement le composant de saison et season_trend - générer à la fois des composants de saison et de tendance. Ce paramètre est déconseillé. Utilisez plutôt forecasting_parameters.

seasonality
Obligatoire
int

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

short_series_handling_configuration
Obligatoire
str

Paramètre définissant comment si AutoML doit gérer des séries chronologiques courtes.

Valeurs possibles : « auto » (par défaut), « pad », « drop » et None.

  • auto short series sera rembourré s’il n’y a pas de longue série, sinon la série courte sera supprimée.
  • pad toutes les séries courtes seront rembourrées.
  • supprimer toutes les séries courtes seront supprimées ».
  • Aucune série courte ne sera modifiée. Si la valeur est « pad », 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 médiane de la valeur cible pour l’ID de série chronologique donné. Si la médiane est supérieure ou égale à zéro, la valeur réduite est rognée par zéro : Entrée :

Date

numeric_value

chaîne

cible

2020-01-01

23

vert

55

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

Note: Nous avons deux paramètres short_series_handling_configuration et short_series_handling hérités. Lorsque les deux paramètres sont définis, nous les synchroniseons comme indiqué dans le tableau ci-dessous (short_series_handling_configuration et short_series_handling pour la concision sont marqués comme handling_configuration et la gestion respectivement).

manutention

handling_configuration

gestion résultante

handling_configuration résultant

Vrai

voiture

Vrai

voiture

Vrai

coussinet

Vrai

voiture

Vrai

goutte

Vrai

voiture

Vrai

Aucun

Faux

Aucun

Faux

voiture

Faux

Aucun

Faux

coussinet

Faux

Aucun

Faux

goutte

Faux

Aucun

Faux

Aucun

Faux

Aucun

freq
Obligatoire
str ou None

Fréquence de prévision.

Lors de la prévision, ce paramètre représente la période avec laquelle la prévision est souhaitée, par exemple quotidienne, hebdomadaire, annuelle, etc. La fréquence de prévision est la fréquence du jeu de données par défaut. Vous pouvez éventuellement le définir sur une fréquence supérieure (mais pas inférieure) à celle du jeu de données. Nous allons agréger les données et générer les résultats à la fréquence de prévision. Par exemple, pour les données quotidiennes, vous pouvez définir la fréquence à être quotidienne, hebdomadaire ou mensuelle, mais pas toutes les heures. La fréquence doit être 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 série chronologique afin de se conformer à une fréquence spécifiée par l’utilisateur. Si le target_aggregation_function est défini, mais que le paramètre freq n’est pas défini, l’erreur est générée. Les fonctions d’agrégation cible possibles sont : « somme », « max », « min » et « moyenne ».

Freq

target_aggregation_function

Mécanisme de correction de la fréquence des données

None (valeur par défaut)

None (valeur 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 certaine valeur

None (valeur 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 points%these seront supprimés, sinon l’erreur sera déclenchée.

None (valeur par défaut)

Fonction d’agrégation

Erreur concernant les paramètres de fréquence manquants déclenchés.

Une certaine valeur

Fonction d’agrégation

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

enable_voting_ensemble
Obligatoire

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

enable_stack_ensemble
Obligatoire

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

debug_log
Obligatoire
str

Fichier journal dans lequel écrire des informations de débogage. S’il n’est pas spécifié, ' automl.log' est utilisé.

training_data
Obligatoire

Données d’apprentissage à utiliser dans l’expérience. Il doit contenir à la fois des fonctionnalités d’entraînement et une colonne d’étiquette (éventuellement une colonne d’échantillonnage). Si training_data elle est spécifiée, le label_column_name paramètre doit également être spécifié.

training_data a été introduit 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 été introduit dans la version 1.0.81. Pour plus d’informations, consultez Configurer les fractionnements de données et la validation croisée dans le Machine Learning automatisé.

test_data
Obligatoire

La fonctionnalité Test de modèle à l’aide de jeux de données de test ou de fractionnements de données de test est une fonctionnalité en préversion et peut changer à tout moment. Données de test à utiliser pour une exécution de test qui sera automatiquement démarrée une fois l’entraînement du modèle terminé. L’exécution de test obtient des prédictions à l’aide du meilleur modèle et calcule les métriques en fonction de ces prédictions.

Si ce paramètre ou ce test_size paramètre ne sont pas spécifiés, aucune exécution de test n’est exécutée automatiquement une fois l’entraînement du modèle terminé. Les données de test doivent contenir à la fois des fonctionnalités et une colonne d’étiquette. Si test_data elle est spécifiée, le label_column_name paramètre doit être spécifié.

test_size
Obligatoire

La fonctionnalité Test de modèle à l’aide de jeux de données de test ou de fractionnements de données de test est une fonctionnalité en préversion et peut changer à tout moment. Quelle fraction des données d’apprentissage à conserver pour les données de test pour une exécution de test qui sera automatiquement démarrée une fois l’entraînement du modèle terminé. L’exécution de test obtient des prédictions à l’aide du meilleur modèle et calcule les métriques en fonction de ces prédictions.

Cela doit être compris entre 0,0 et 1,0 non inclus. Si test_size elle est spécifiée en même temps que validation_size, les données de training_data test sont fractionnées avant le fractionnement des données de validation. Par exemple, si validation_size=0.1les test_size=0.1 données d’apprentissage d’origine ont 1 000 lignes, les données de test ont 100 lignes, les données de validation contiennent 90 lignes et les données d’apprentissage ont 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é. La prévision ne prend actuellement pas en charge la spécification d’un jeu de données de test à l’aide d’un fractionnement d’apprentissage/test.

Si ce paramètre ou ce test_data paramètre ne sont pas spécifiés, aucune exécution de test n’est exécutée automatiquement une fois l’entraînement du modèle terminé.

label_column_name
Obligatoire

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

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

weight_column_name
Obligatoire

Nom de l’exemple de colonne de poids. Le ML automatisé prend en charge une colonne pondérée en tant qu’entrée, ce qui entraîne une pondération des lignes dans les données. Si les données d’entrée proviennent d’un pandas. DataFrame qui n’a pas de noms de colonnes, les index de colonne peuvent être utilisés à la place, exprimés sous forme d’entiers.

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

cv_split_column_names
Obligatoire

Liste des noms des colonnes qui contiennent un fractionnement de validation croisée personnalisée. Chacune des colonnes fractionnées cv représente un fractionnement cv où chaque ligne est marquée 1 pour l’entraînement ou 0 pour validation.

Ce paramètre s’applique au training_data paramètre à des fins de validation croisée personnalisées. 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 les 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 locales ne peuvent pas être activées pour l’instant.

enable_dnn
Obligatoire

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

Remarques

Le code suivant montre un exemple de base de la création d’un objet AutoMLConfig et l’envoi 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 sur Régression

Voici des exemples d’utilisation d’AutoMLConfig pour la prévision dans ces notebooks :

Vous trouverez des exemples d’utilisation de AutoMLConfig pour tous les types de tâches dans ces notebooks ML automatisés.

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

Pour plus d’informations sur les différentes options de configuration des fractionnements de données d’entraînement/validation et de validation croisée pour votre machine learning automatisé, AutoML, expériences, 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 leurs codes de langue correspondants dans 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 leurs codes de langue correspondants dans ISO 639-3.

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

Paramètres

Nom Description
cls
Obligatoire

Objet Class de AutoMLConfig.

use_gpu
Obligatoire

booléen indiquant si le calcul gpu est utilisé ou non.

Retours

Type Description

dictionnaire de format { : }. Le code de langage respecte la norme ISO 639-3, reportez-vous à https://en.wikipedia.org/wiki/List_of_ISO_639-3_codes