Une utilisation simple et typique de DVC pour mettre en avant ses avantages
.dvc | 7 months ago | ||
.vscode | 7 months ago | ||
.dvcignore | 7 months ago | ||
LOG.md | 7 months ago | ||
README.md | 7 months ago |
Une utilisation simple et typique de DVC pour mettre en avant ses avantages.
Le but est de construire un modèle fasttext qui classifie une adresse d'affiliation en identifiants RNSR.
Pour ce faire, il faut régler les hyperparamètres de fasttext.
Et donc expérimenter diverses combinaisons de ces paramètres, puis comparer les évaluations de chacun de ces modèles.
Sans DVC, on finit, sauf si on extrêmement bien organisé, par avoir beaucoup de modèles différents, par être obligé d'écrire des scripts pour estimer les performances des modèles, les visualiser... et ne plus savoir quel fichier on ajoute à git ou non (parce qu'ils peuvent être très gros).
Mais surtout, pour savoir quel modèle correspond à quels paramètres, on nomme ces modèles différemment, en fonction des hyperparamètres utilisés, et ça finit en capharnaüm.
À titre d'exemple, ma première étude a terminé avec 68 fichiers dans le répertoire des modèles, et 71 fichiers dans le répertoire des données.
La synthèse ds expérience est fastidieuse: il m'avait fallu construire à la main des tableaux contenant les paramètres et les résultats (voir cet exemple).
DVC est un outil (en ligne de commande, un peu comme git), qui permet:
Pour nos usages actuels, les points 1 et 2 sont anecdotiques, alors que les points 3 et 4 sont très intéressants.
C'est sur eux que nous allons nous concentrer.
TODO: ici, on pourra voir l'intérêt de préparer une étape (stage) reproductible à partir d'un fichier de données d'origine.
proportion
, min
, max
)Le résultat de la préparation des données, c'est un fichier d'entraînement et un fichier de test.
Pour l'instant, on repart de ceux de l'étude précédente: addresses-40-cnrs-rnsr-big-classes-train.txt et addresses-40-cnrs-rnsr-big-classes-test.txt (renommés train.txt
et test.txt
).