ai-center
2021.10
false
- Notes de publication
- Avant de commencer
- Démarrage
- Projets
- Jeux de données
- Paquets ML
- Pipelines
- Pipelines d'entraînement
- Pipelines d'évaluation
- Pipelines complets
- Gestion des pipelines
- Fermer la boucle
- Compétences ML
- Journaux ML
- Document Understanding dans AI Center
- Comment
- Guide de dépannage de base
Pipelines d'évaluation
Non pris en charge par l'assistance
AI Center - Guide de l'utilisateur
Dernière mise à jour 11 nov. 2024
Pipelines d'évaluation
Un pipeline d'évaluation est utilisé pour évaluer un modèle d'apprentissage automatique formé. Pour utiliser ce pipeline, le package doit contenir du code permettant d'évaluer un modèle (la fonction
evaluate()
dans le fichier train.py). Ce code, avec un ensemble de données ou un sous-dossier dans un ensemble de données, produit un score (le retour de la fonction evaluate()
) et toutes les sorties arbitraires que l'utilisateur souhaite conserver en plus du score.
Créez un nouveau pipeline d'évaluation comme décrit ici. Assurez-vous de fournir les informations spécifiques au pipeline d'évaluation suivantes :
- Dans le champ Type de pipeline (Pipeline type), sélectionnez Exécution de pipeline d'évaluation (Evaluation run).
- Dans le champ Choisir un ensemble de données d'évaluation (Choose evaluation dataset), sélectionnez un ensemble de données ou un dossier à partir duquel vous souhaitez importer des données pour évaluation. Tous les fichiers de cet ensemble de données/dossier doivent être disponibles localement pendant l'exécution du pipeline, étant transmis à l'argument de votre fonction
evaluate()
. - Dans la section Entrer les paramètres (Enter parameters), entrez toutes les variables d'environnement définies et utilisées par votre pipeline, le cas échéant. Les variables d'environnement sont :
artifacts_directory
, avec des artefacts de valeur par défaut : cela définit le chemin d'accès à un répertoire qui sera conservé en tant que données auxiliaires liées à ce pipeline. La plupart des utilisateurs, voire la totalité, n'auront jamais besoin de le remplacer via l'interface utilisateur. Tout peut être enregistré pendant l'exécution du pipeline, y compris les images, les fichiers PDF et les sous-dossiers. Concrètement, toutes les données que votre code écrit dans le répertoire spécifié par le cheminos.environ['artifacts_directory']
seront téléchargées à la fin de l'exécution du pipeline et seront visibles à partir de la page Détails du pipeline (Pipeline details).save_test_data
, avec la valeur par défaut true : s'il est défini sur true, ledata_directory
sera téléchargé à la fin de l'exécution du pipeline en tant que sortie du pipeline sous le répertoiredata_directory
.
Regardez la vidéo suivante pour découvrir comment créer un pipeline d'évaluation avec le package nouvellement formé version 1.1 :
Remarque : l'exécution du pipeline peut prendre un certain temps. Revenez-y après un certain temps pour voir son état.
Une fois le pipeline exécuté, sur la page Pipelines, l'état du pipeline passait sur Réussite (Successful). La page Détails du pipeline (Pipeline Details) affiche les fichiers et dossiers arbitraires liés à l'exécution du pipeline. Dans notre exemple, l'exécution a créé un fichier appelé
my-evaluate-artifact.txt
.
Voici une exécution conceptuellement analogue d'un pipeline d'évaluation sur un package, par exemple la version 1.1, la sortie d'un pipeline d'évaluation sur la version 1.0.
Attention : ceci est un exemple simplifié. Son objectif est d'illustrer comment les ensembles de données et les packages interagissent dans un pipeline d'évaluation. Les étapes sont simplement conceptuelles et ne représentent pas le fonctionnement de la plate-forme.
- Copiez la version 1.1 du package dans
~/mlpackage
. - Copiez l'ensemble de données d'évaluation ou le sous-dossier de l'ensemble de données sélectionné dans l'interface utilisateur vers
~/mlpackage/evaluation_data
. - Exécutez le code python suivant :
from train import Main m = Main() score = m.evaluate('./evaluation_data')
from train import Main m = Main() score = m.evaluate('./evaluation_data')Le score renvoyé est affiché dans la grille affichant les pipelines et le fichierresults.json
. - Conservez les artefacts s'ils sont écrits, les données d'instantané si
save_test_data
est défini sur true.
Le fichier
_results.json
contient un résumé de l'exécution du pipeline, exposant toutes les entrées/sorties et les temps d'exécution pour un pipeline d'évaluation.
{
"parameters": {
"pipeline": "< Pipeline_name >",
"inputs": {
"package": "<Package_name>",
"version": "<version_number>",
"evaluation_data": "<storage_directory>",
"gpu": "True/False"
},
"env": {
"key": "value",
...
}
},
"run_summary": {
"execution_time": <time>, #in seconds
"start_at": <timestamp>, #in seconds
"end_at": <timestamp>, #in seconds
"outputs": {
"score": <score>, #float
"train_data": "<test_storage_directory>",
"evaluation_data": "<test_storage_directory>/None",
"artifacts_data": "<artifacts_storage_directory>",
}
}
}
{
"parameters": {
"pipeline": "< Pipeline_name >",
"inputs": {
"package": "<Package_name>",
"version": "<version_number>",
"evaluation_data": "<storage_directory>",
"gpu": "True/False"
},
"env": {
"key": "value",
...
}
},
"run_summary": {
"execution_time": <time>, #in seconds
"start_at": <timestamp>, #in seconds
"end_at": <timestamp>, #in seconds
"outputs": {
"score": <score>, #float
"train_data": "<test_storage_directory>",
"evaluation_data": "<test_storage_directory>/None",
"artifacts_data": "<artifacts_storage_directory>",
}
}
}
Le dossier Artifacts, visible uniquement s'il n'est pas vide, est un dossier regroupant tous les artefacts générés par le pipeline, et il est enregistré sous le dossier
artifacts_directory
.
Le dossier Ensemble de données (Dataset), existant uniquement si
save_data
a été défini sur la valeur true par défaut, est une copie du dossier de l'ensemble de données d'évaluation.
Comme dans les pipelines d'entraînement, un utilisateur peut définir le paramètre
save_test_data
= true
sur les données d'instantané transmises pour évaluation.