Concepts de la boîte à outils de carte modèle

Carte modèle

Les Model Cards sont des documents d'apprentissage automatique qui fournissent du contexte et de la transparence dans le développement et les performances d'un modèle. Ils peuvent être utilisés pour partager des métadonnées et des métriques de modèles avec des chercheurs, des développeurs, des journalistes, etc.

Certains cas d'utilisation de cartes modèles incluent :

  • Faciliter l'échange d'informations entre les constructeurs de modèles et les développeurs de produits.
  • Informer les utilisateurs des modèles ML afin qu'ils prennent des décisions plus éclairées sur la manière de les utiliser (ou de ne pas les utiliser).
  • Fournir des informations modèles nécessaires à une surveillance et une responsabilisation publiques efficaces.

Schéma

Le schéma Model Card est un prototype décrivant les champs disponibles d’une carte modèle. Une interface JSON est également disponible. Ces objets peuvent être interfacés avec d'autres systèmes pour le stockage, l'analyse ou la visualisation.

Aujourd’hui, le schéma Model Card est strictement appliqué. Dans Model Card Toolkit 2.0, cette restriction de schéma sera levée.

Graphique

Model Card Toolkit génère automatiquement des graphiques pour les ensembles de données TFX et les résultats d'évaluation. Les graphiques peuvent également être créés manuellement à l'aide d'un outil tel que Matplotlib et écrits sur une ModelCard - voir l'API Model Card pour plus de détails.

Dans le schéma Model Card, les graphiques sont stockés dans le champ Graphic.image et sont codés sous forme de chaînes codées en base64 . Le Model Card Toolkit peut vous aider à générer des images base64 .

Boîte à outils de carte modèle

Le Model Card Toolkit vous permet de générer des documents Model Card , ainsi que des objets Proto et JSON , avec une interface Python simplifiée.

API de carte modèle

Le Model Card Toolkit comprend une API Model Card composée d'une classe Python . Les mises à jour apportées à un objet Python Model Card sont écrites dans un objet proto Model Card.

Graphique

La fonction model_card_toolkit.utils.graphics.figure_to_base64str() peut être utilisée pour convertir des graphiques, tels que des figures Matplotlib, en chaînes base64.

Enregistrement et chargement de cartes modèles

Si vous avez fini d'annoter votre carte modèle et que vous souhaitez la sérialiser au format JSON ou protobuf, utilisez la méthode ModelCard.save() .


import model_card_toolkit as mct

model_card = mct.ModelCard()
model_card.model_details.name = 'Fine-tuned MobileNetV2 Model for Cats vs. Dogs'
model_card.save('model_cards/cats_vs_dogs.json')

Si vous souhaitez restaurer et mettre à jour une carte modèle enregistrée, utilisez la fonction model_card_toolkit.model_card.load_model_card() .


import model_card_toolkit as mct

model_card = mct.load_model_card('model_cards/cats_vs_dogs.json')
model_card.model_details.licenses.append(mct.License(identifier='Apache-2.0'))

Documents de carte modèle

Par défaut, le document de carte modèle généré est un fichier HTML basé sur default_template.html.jinja . Cependant, vous pouvez également fournir votre propre modèle Jinja personnalisé. Ces fichiers de modèles peuvent être dans n'importe quel format texte (HTML, Markdown, LaTeX, etc.). Un modèle Markdown est fourni à titre d'exemple.

Intégration TFX et MLMD

Le Model Card Toolkit s'intègre aux outils TensorFlow Extended et ML Metadata . Un magasin de métadonnées peut être utilisé lors de l'initialisation de Model Card Toolkit pour pré-remplir de nombreux champs de carte modèle et générer des tracés de formation et d'évaluation.

Artefacts utilisés par MCT :

Exécutions utilisées par MCT :

  • Trainer : utilisé pour renseigner le nom et la version du modèle

Le composant ModelCardGenerator a été déplacé vers la bibliothèque TFX Addons et n'est plus intégré dans Model Card Toolkit à partir de la version 2.0.0. Avant de pouvoir utiliser le composant, vous devrez installer le package tfx-addons :

pip install tfx-addons[model_card_generator]

Consultez le guide ModelCardGenerator et exécutez le cahier d'étude de cas pour en savoir plus sur le composant.