Définition
Le travail sur les modèles est expérimental. Un cycle typique teste plusieurs taux d'apprentissage, quelques modèles de base et différentes versions du jeu de données, puis évalue chaque résultat, parfois à plusieurs reprises. Après quelques semaines, on compte des dizaines d'exécutions, dont une ou deux seulement sont pertinentes au quotidien. Le reste encombre chaque liste et chaque sélecteur, ce qui augmente le risque de choisir le mauvais modèle par accident.
Il est tentant de les supprimer, mais cela détruit l'information la plus utile produite par une expérience : ce qui a été testé et pourquoi cela a échoué. Cet historique est ce qui empêche une équipe de reproduire la même idée infructueuse trois mois plus tard. L'archivage constitue le juste milieu : l'élément reste intact, mais disparaît de la vue quotidienne.
Archiver et Restaurer ne font que masquer et afficher l'élément. Les dépenses prennent toujours l'élément en compte, et sa lignée apparaît toujours dans les modèles construits à partir de celui-ci.
Rien à restaurer et rien dont on puisse tirer des leçons plus tard : l'historique de ce qui a été testé disparaît avec lui.
Fonctionnement
- Masqué, mais non modifié. L'archivage masque l'élément et indique quand et par qui il a été archivé. Rien n'est supprimé ni réécrit : les fichiers de données, les tâches du fournisseur, les poids entraînés et les réponses d'évaluation restent tels qu'ils étaient.
- Retiré des listes et des sélecteurs. Un jeu de données archivé n'est pas proposé pour une nouvelle préparation de données ; une préparation archivée n'est pas proposée pour l'entraînement ; un modèle archivé n'apparaît pas dans les chats d'Entraînement, d'Évaluation ou de Test et ne peut pas servir de point de départ pour un entraînement continu. Un ancien lien ne peut pas non plus lancer une tâche à partir d'un élément archivé.
- Hors des graphiques, mais pas de la facture. Le tableau de bord exclut les modèles et évaluations archivés du classement et des graphiques de qualité, et indique le nombre d'éléments archivés. Les dépenses les comptabilisent toujours, car l'argent a été dépensé de toute façon.
- Consultable et restaurable. Depuis la page d'archive, un élément archivé s'ouvre tel qu'il était, avec une bannière et un bouton Restaurer. Une fois restauré, l'élément réintègre toutes les listes sans modification.
- Impossible en cours d'exécution. Une tâche d'entraînement, une préparation de données en cours ou une évaluation en cours de jugement ne peuvent pas être archivées. Vous devez d'abord les terminer ou les annuler.
| Archivage | Suppression | |
|---|---|---|
| Historique conservé | Oui | Non |
| Visible partout | Sur la page d'archive | Non |
| Réversible | Oui (Restaurer) | Non |
| Comptabilisé dans les dépenses | Oui | Non |
La traçabilité reste intacte
Les modèles sont souvent construits les uns sur les autres : une exécution de préférence fait suite à une exécution supervisée, elle-même issue d'une exécution antérieure. Archiver un parent le masque des sélecteurs, mais pas de l'historique. Un modèle issu d'un modèle archivé indique toujours sa provenance, et son évaluation continue d'être comparée à ce parent. C'est le même principe que celui utilisé par les équipes de recherche pour la reproductibilité : conserver la trace complète, des données au résultat, même pour les expériences qui n'ont pas abouti.
- Vous avez entraîné dix variantes d'un modèle : trois taux d'apprentissage, deux modèles de base et deux versions de jeu de données.
- Les évaluations montrent un vainqueur incontestable et un second très proche. Gardez les deux visibles.
- Archivez les huit autres modèles ainsi que leurs évaluations, afin que le graphique du meilleur modèle du tableau de bord ne compare que les candidats actifs.
- L'ancienne version du jeu de données a été remplacée par une meilleure. Archivez-la ainsi que ses préparations, pour que personne ne s'entraîne dessus par erreur.
- Trois mois plus tard, quelqu'un demande : « Avons-nous essayé un taux d'apprentissage plus élevé ? » L'Archive contient l'exécution, ses paramètres et l'évaluation qui montre pourquoi elle a échoué.
Quand privilégier la suppression
Archivez par défaut ; supprimez délibérément. La suppression est justifiée lorsque la conservation de l'élément pose elle-même problème — par exemple, un jeu de données qui n'aurait jamais dû contenir certaines données à caractère personnel. Notez que l'archivage n'interrompt pas les coûts récurrents, tels qu'un déploiement dédié : vous devez y mettre fin séparément.
Erreurs courantes
- Supprimer les exécutions infructueuses et répéter plus tard la même expérience parce que personne ne se souvient de son échec.
- Archiver un modèle mais pas ses évaluations, de sorte que le tableau de bord continue de le classer.
- Laisser visibles les jeux de données obsolètes, entraînant par erreur une nouvelle exécution sur l'ancienne version.
- S'attendre à ce que les éléments archivés disparaissent des dépenses : l'argent a été dépensé de toute façon.
Références et lectures complémentaires
Les sources externes s'ouvrent dans un nouvel onglet.
- 01Improving Reproducibility in Machine Learning Research (A Report from the NeurIPS 2019 Reproducibility Program)Pineau et al., 2020 · arXiv · arxiv.orgPourquoi il est important de conserver l'historique complet des expériences, y compris celles qui ont échoué.
- 02Hidden Technical Debt in Machine Learning SystemsSculley et al., 2015 · NeurIPS · papers.nips.ccL'article de référence sur la façon dont les systèmes de Machine Learning accumulent une complexité cachée, notamment les expériences non suivies et les dépendances de données.
- 03MLflow TrackingMLflow docs · mlflow.orgUn outil open source largement utilisé pour enregistrer les exécutions, les paramètres et les résultats.