Experiment Classe
Représente le point d’entrée principal pour la création et l’utilisation d’expériences dans Azure Machine Learning.
Une expérience est un conteneur d’ essais qui représentent plusieurs exécutions de modèles.
Constructeur d’expérience.
- Héritage
-
azureml._logging.chained_identity.ChainedIdentityExperimentazureml.core._portal.HasExperimentPortalExperiment
Constructeur
Experiment(workspace, name, _skip_name_validation=False, _id=None, _archived_time=None, _create_in_cloud=True, _experiment_dto=None, **kwargs)
Paramètres
- _skip_name_validation
- _id
- _archived_time
- _create_in_cloud
- _experiment_dto
Remarques
Une expérience Azure Machine Learning représente l’ensemble des essais utilisés pour valider l’hypothèse d’un utilisateur.
Dans Azure Machine Learning, une expérience est représentée par la classe Experiment, et un essai est représenté par la classe Run.
Pour obtenir ou créer une expérience à partir d’un espace de travail, vous devez demander l’expérience à l’aide de son nom. Le nom de l’expérience doit comporter entre 3 et 36 caractères, commencer par une lettre ou un chiffre, et peut contenir uniquement des lettres, des chiffres, des traits de soulignement et des tirets.
experiment = Experiment(workspace, "MyExperiment")
Si l’expérience est introuvable dans l’espace de travail, une autre expérience est créée.
Il existe deux manières d’exécuter une évaluation d’expérience. Si vous expérimentez un Jupyter Notebook de manière interactive, utilisez start_logging. Si vous soumettez une expérience à partir du code source ou d’un autre type d’essai configuré, utilisez submit.
Les deux mécanismes créent un objet Run. Dans les scénarios interactifs, utilisez des méthodes de journalisation telles que log pour ajouter des mesures et des métriques à l’enregistrement d’essai. Dans les scénarios configurés, utilisez des méthodes d’état telles que get_status pour récupérer les informations relatives à l’exécution.
Dans les deux cas, vous pouvez utiliser des méthodes d’interrogation telles que get_metrics pour récupérer les valeurs actuelles, le cas échéant, des mesures et métriques d’essai.
Méthodes
archive |
Archivez une expérience. |
delete |
Supprimez une expérience de l’espace de travail. |
from_directory |
(Déconseillé) Charge une expérience à partir du chemin spécifié. |
get_docs_url |
URL de la documentation pour cette classe. |
get_runs |
Retourne un générateur des exécutions de cette expérience, dans l’ordre chronologique inverse. |
list |
Renvoie la liste des expériences dans l’espace de travail. |
reactivate |
Réactive une expérience archivée. |
refresh |
Retourne la version la plus récente de l’expérience à partir du cloud. |
remove_tags |
Supprimez les étiquettes spécifiées de l’expérience. |
set_tags |
Ajoutez ou modifiez un ensemble d’étiquettes dans l’expérience. Les balises non transmises dans le dictionnaire restent inchangées. |
start_logging |
Démarre une session de journalisation interactive et crée une exécution interactive dans l’expérience spécifiée. |
submit |
Soumet une expérience et retourne l’exécution créée active. |
tag |
Étiquette l’expérience avec une clé de chaîne et une valeur de chaîne facultative. |
archive
Archivez une expérience.
archive()
Remarques
Après l’archivage, l’expérience n’est pas listée par défaut. Toute tentative d’écriture dans une expérience archivée entraîne la création d’une expérience active portant le même nom. Vous pouvez restaurer une expérience archivée en appelant reactivate du moment qu’il n’existe pas d’autre expérience active portant le même nom.
delete
Supprimez une expérience de l’espace de travail.
static delete(workspace, experiment_id)
Paramètres
- experiment_id
ID de l’expérience à supprimer.
from_directory
(Déconseillé) Charge une expérience à partir du chemin spécifié.
static from_directory(path, auth=None)
Paramètres
Objet d’authentification. Si None est spécifié, les informations d’identification Azure CLI par défaut sont utilisées, ou l’API vous invite à entrer vos informations d’identification.
Retours
Retourne l’expérience
Type de retour
get_docs_url
get_runs
Retourne un générateur des exécutions de cette expérience, dans l’ordre chronologique inverse.
get_runs(type=None, tags=None, properties=None, include_children=False)
Paramètres
- type
- string
Filtrez le générateur renvoyé des exécutions par le type fourni. Consultez add_type_provider pour la création de types d’exécution.
Le filtre s’exécute par "property" ou {"property": "value"}
- include_children
- bool
Par défaut, extrait uniquement les exécutions de niveau supérieur. Affectez la valeur true pour lister toutes les exécutions.
Retours
Liste des exécutions correspondant aux filtres fournis.
Type de retour
list
Renvoie la liste des expériences dans l’espace de travail.
static list(workspace, experiment_name=None, view_type='ActiveOnly', tags=None)
Paramètres
- view_type
- ViewType
Valeur enum facultative pour filtrer ou inclure les expériences archivées.
- tags
Clé d’étiquette facultative ou dictionnaire de paires clé-valeur d’étiquette pour le filtrage des expériences.
Retours
Liste d’objets d’expérience.
Type de retour
reactivate
Réactive une expérience archivée.
reactivate(new_name=None)
Paramètres
Remarques
Une expérience archivée ne peut être réactivée que s’il n’existe pas d’autre expérience active portant le même nom.
refresh
Retourne la version la plus récente de l’expérience à partir du cloud.
refresh()
remove_tags
Supprimez les étiquettes spécifiées de l’expérience.
remove_tags(tags)
Paramètres
set_tags
Ajoutez ou modifiez un ensemble d’étiquettes dans l’expérience. Les balises non transmises dans le dictionnaire restent inchangées.
set_tags(tags)
Paramètres
start_logging
Démarre une session de journalisation interactive et crée une exécution interactive dans l’expérience spécifiée.
start_logging(*args, **kwargs)
Paramètres
- outputs
- str
Répertoire de sorties facultatif à suivre. Pour aucune sortie, passez False.
- snapshot_directory
- str
Répertoire facultatif pouvant faire l’objet d’une capture instantanée. La valeur None ne prend pas de capture instantanée.
- args
- list
- kwargs
- dict
Retours
Retourne une exécution démarrée.
Type de retour
Remarques
start_logging crée une exécution interactive pour une utilisation dans des scénarios tels que des Jupyter Notebooks. Toutes les métriques qui sont consignées pendant la session sont ajoutées à l’enregistrement d’exécution dans l’expérimentation. Si un répertoire de sortie est spécifié, le contenu de ce répertoire est chargé sous forme d’artefacts d’exécution à la fin de l’exécution.
experiment = Experiment(workspace, "My Experiment")
run = experiment.start_logging(outputs=None, snapshot_directory=".", display_name="My Run")
...
run.log_metric("Accuracy", accuracy)
run.complete()
Notes
run_id est généré automatiquement pour chaque exécution et est unique au sein de l’expérience.
submit
Soumet une expérience et retourne l’exécution créée active.
submit(config, tags=None, **kwargs)
Paramètres
- kwargs
- dict
Paramètres supplémentaires utilisés dans la fonction submit pour les configurations.
Retours
Exécution.
Type de retour
Remarques
La méthode submit est un appel asynchrone à la plateforme Azure Machine Learning pour exécuter un essai sur du matériel local ou distant. En fonction de la configuration, la méthode submit prépare automatiquement vos environnements d’exécution, exécute votre code et capture votre code source ainsi que les résultats dans l’historique des exécutions de l’expérience.
Pour soumettre une expérience, vous devez d’abord créer un objet de configuration décrivant la façon dont l’expérience doit être exécutée. La configuration dépend du type d’essai requis.
Voici un exemple d’envoi d’une expérience à partir de votre machine locale :
from azureml.core import ScriptRunConfig
# run a trial from the train.py code in your current directory
config = ScriptRunConfig(source_directory='.', script='train.py',
run_config=RunConfiguration())
run = experiment.submit(config)
# get the url to view the progress of the experiment and then wait
# until the trial is complete
print(run.get_portal_url())
run.wait_for_completion()
Pour plus d’informations sur la configuration d’une exécution, consultez les détails du type de configuration.
azureml.train.automl.automlconfig.AutoMLConfig
azureml.pipeline.core.Pipeline
azureml.pipeline.core.PublishedPipeline
azureml.pipeline.core.PipelineEndpoint
Notes
Quand vous soumettez la série de tests d’apprentissage, un instantané du répertoire contenant vos scripts d’apprentissage est créé et envoyé à la cible de calcul. Il est également stocké dans le cadre de l’expérience dans votre espace de travail. Si vous modifiez des fichiers et que vous soumettez à nouveau l’exécution, seuls les fichiers modifiés seront téléchargés.
Pour empêcher les fichiers d’être inclus dans la capture instantanée, créez un fichier .gitignore ou .amlignore dans le répertoire, avant d’y ajouter les fichiers. Le fichier .amlignore utilise la même syntaxe et les mêmes modèles que le fichier .gitignore. Si les deux fichiers existent, le fichier .amlignore est prioritaire.
Pour plus d’informations, consultez Instantanés.
tag
Étiquette l’expérience avec une clé de chaîne et une valeur de chaîne facultative.
tag(key, value=None)
Paramètres
Remarques
Les étiquettes d’une expérience sont stockées dans un dictionnaire avec des clés de chaîne et des valeurs de chaîne. Les étiquettes peuvent être définies, mises à jour et supprimées. Les étiquettes sont destinées à l’utilisateur et contiennent généralement des informations significatives pour les consommateurs de l’expérience.
experiment.tag('')
experiment.tag('DeploymentCandidate')
experiment.tag('modifiedBy', 'Master CI')
experiment.tag('modifiedBy', 'release pipeline') # Careful, tags are mutable
Attributs
archived_time
Retourne l’heure d’archivage de l’expérience. La valeur doit être None pour une expérience active.
Retours
Heure d’archivage de l’expérience.
Type de retour
id
name
tags
Retourne l’ensemble d’étiquettes mutables de l’expérience.
Retours
Étiquettes d’une expérience.
Type de retour
workspace
Retourne l’espace de travail contenant l’expérience.
Retours
Retourne l’objet d’espace de travail.
Type de retour
workspace_object
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour