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.ChainedIdentity
Experiment
azureml.core._portal.HasExperimentPortal
Experiment

Constructeur

Experiment(workspace, name, _skip_name_validation=False, _id=None, _archived_time=None, _create_in_cloud=True, _experiment_dto=None, **kwargs)

Paramètres

workspace
Workspace
Obligatoire

Objet d’espace de travail contenant l’expérience.

name
str
Obligatoire

Le nom de l’expérience.

kwargs
dict
Obligatoire

Dictionnaire d’arguments de mots clés.

workspace
Workspace
Obligatoire

Objet d’espace de travail contenant l’expérience.

name
str
Obligatoire

Le nom de l’expérience.

kwargs
dict
Obligatoire

Dictionnaire d’arguments de mots clés.

_skip_name_validation
valeur par défaut: False
_id
valeur par défaut: None
_archived_time
valeur par défaut: None
_create_in_cloud
valeur par défaut: True
_experiment_dto
valeur par défaut: None

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

workspace
Workspace
Obligatoire

Espace de travail auquel appartient l’expérience.

experiment_id
Obligatoire

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

path
str
Obligatoire

Répertoire contenant les fichiers de configuration d’expérience.

auth
ServicePrincipalAuthentication ou InteractiveLoginAuthentication
valeur par défaut: None

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

URL de la documentation pour cette classe.

get_docs_url()

Retours

url

Type de retour

str

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
valeur par défaut: None

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.

tags
string ou dict
valeur par défaut: None

Filtre les exécutions par "tag" ou {"tag": "value"}.

properties
string ou dict
valeur par défaut: None

Le filtre s’exécute par "property" ou {"property": "value"}

include_children
bool
valeur par défaut: False

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

workspace
Workspace
Obligatoire

Espace de travail à partir duquel les expériences sont listées.

experiment_name
str
valeur par défaut: None

Nom facultatif pour filtrer les expériences.

view_type
ViewType
valeur par défaut: ActiveOnly

Valeur enum facultative pour filtrer ou inclure les expériences archivées.

tags
valeur par défaut: None

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

new_name
str
Obligatoire

Plus pris en charge

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

tags
[str]
Obligatoire

Clés d’étiquette qui vont être supprimées

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

tags
dict[str]
Obligatoire

Étiquettes stockées dans l’objet d’expérience

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

experiment
Experiment
Obligatoire

Expérience.

outputs
str
Obligatoire

Répertoire de sorties facultatif à suivre. Pour aucune sortie, passez False.

snapshot_directory
str
Obligatoire

Répertoire facultatif pouvant faire l’objet d’une capture instantanée. La valeur None ne prend pas de capture instantanée.

args
list
Obligatoire
kwargs
dict
Obligatoire

Retours

Retourne une exécution démarrée.

Type de retour

Run

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

config
object
Obligatoire

Configuration à envoyer.

tags
dict
valeur par défaut: None

Étiquettes à ajouter à l’exécution soumise, {"tag": "value"}.

kwargs
dict
Obligatoire

Paramètres supplémentaires utilisés dans la fonction submit pour les configurations.

Retours

Exécution.

Type de retour

Run

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.

  • ScriptRunConfig

  • 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

key
str
Obligatoire

Clé de la balise

value
str
Obligatoire

Valeur facultative pour la balise

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

str

id

Retourne l’ID de l’expérience.

Retours

ID de l’expérience.

Type de retour

str

name

Retourne le nom de l’expérience.

Retours

Nom de l’expérience.

Type de retour

str

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

(Déconseillé) Retourne l’espace de travail contenant l’expérience.

Utilisez l’attribut workspace.

Retours

Objet d’espace de travail.

Type de retour