Conceptos del kit de herramientas de tarjetas modelo

Tarjeta modelo

Las tarjetas modelo son documentos de aprendizaje automático que brindan contexto y transparencia sobre el desarrollo y el rendimiento de un modelo. Se pueden utilizar para compartir métricas y metadatos del modelo con investigadores, desarrolladores, periodistas y más.

Algunos casos de uso de tarjetas modelo incluyen:

  • Facilitar el intercambio de información entre constructores de modelos y desarrolladores de productos.
  • Informar a los usuarios de los modelos de ML para que tomen decisiones mejor informadas sobre cómo usarlos (o cómo no usarlos).
  • Proporcionar información modelo necesaria para una supervisión y rendición de cuentas públicas efectivas.

Esquema

El esquema de tarjeta modelo es un prototipo que describe los campos disponibles de una tarjeta modelo. También está disponible una interfaz JSON . Estos objetos se pueden interconectar con otros sistemas para almacenamiento, análisis o visualización.

Hoy en día, el esquema de la Tarjeta Modelo se aplica estrictamente. En Model Card Toolkit 2.0, se eliminará esta restricción de esquema.

Gráficos

Model Card Toolkit genera automáticamente gráficos para conjuntos de datos TFX y resultados de evaluación. Los gráficos también se pueden crear manualmente usando una herramienta como Matplotlib y escribirse en una ModelCard; consulte Model Card API para obtener más detalles.

En el esquema de tarjeta modelo, los gráficos se almacenan en el campo Graphic.image y se codifican como cadenas codificadas en base64 . El Model Card Toolkit puede ayudar a generar imágenes base64 .

Kit de herramientas para tarjetas modelo

Model Card Toolkit le permite generar documentos Model Card , así como objetos Proto y JSON , con una interfaz Python optimizada.

API de tarjeta modelo

El kit de herramientas de tarjeta modelo incluye una API de tarjeta modelo que consta de una clase Python . Las actualizaciones realizadas en un objeto Model Card Python se escriben en un objeto prototipo Model Card.

Gráficos

La función model_card_toolkit.utils.graphics.figure_to_base64str() se puede utilizar para convertir gráficos, como figuras de Matplotlib, a cadenas base64.

Guardar y cargar tarjetas de modelo

Si terminó de anotar su tarjeta modelo y desea serializarla en formato JSON o protobuf, use el método 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 desea restaurar y actualizar una tarjeta de modelo guardada, use la función 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'))

Documentos de tarjeta modelo

De forma predeterminada, el documento de tarjeta modelo generado es un archivo HTML basado en default_template.html.jinja . Sin embargo, también puedes proporcionar tu propia plantilla Jinja personalizada. Estos archivos de plantillas pueden tener cualquier formato basado en texto (HTML, Markdown, LaTeX, etc.). Se proporciona una plantilla de Markdown como ejemplo.

Integración TFX y MLMD

Model Card Toolkit se integra con las herramientas TensorFlow Extended y ML Metadata . Se puede utilizar un almacén de metadatos durante la inicialización del Model Card Toolkit para rellenar previamente muchos campos de la tarjeta modelo y generar gráficos de entrenamiento y evaluación.

Artefactos utilizados por MCT:

Ejecuciones utilizadas por MCT:

  • Entrenador : se utiliza para completar el nombre y la versión del modelo.

El componente ModelCardGenerator se ha trasladado a la biblioteca TFX Addons y ya no está empaquetado en Model Card Toolkit desde la versión 2.0.0. Antes de poder utilizar el componente, deberá instalar el paquete tfx-addons :

pip install tfx-addons[model_card_generator]

Consulte la guía ModelCardGenerator y ejecute el cuaderno de estudios de caso para obtener más información sobre el componente.