Rédiger une documentation ML efficace

Déployer des modèles de Machine Learning en production

Sinan Ozdemir

Data Scientist, Entrepreneur, and Author

Les composantes d'une excellente documentation ML

  • Sources de données
  • Schémas de données
  • Méthodes d'étiquetage
  • Expérimentation et sélection du modèle
  • Environnements d'entraînement
  • Pseudo-code du modèle
Déployer des modèles de Machine Learning en production

Documenter les sources de données

Permet d'établir des processus pour évaluer la qualité des données.

Cela apporte aussi d'autres avantages :

  • Suivre l'origine des données.
  • Évaluer et itérer sur la qualité des données.

sources

Déployer des modèles de Machine Learning en production

Schémas de données

Une structure qui décrit l'organisation des données.

Pour un schéma de base de données relationnelle :

Clé de la base Type de données Ordre des données
Person.name string nominal
Person.survey_score integer ordinal

schema

Déployer des modèles de Machine Learning en production

Méthodes d'étiquetage (pour la classification)

Documenter la façon d'étiqueter la variable cible améliore :

  1. La reproductibilité du pipeline d'entraînement.

  2. La fiabilité du modèle grâce à la qualité des étiquettes.

  3. La performance du modèle grâce à de meilleures étiquettes.

select

Les méthodes d'étiquetage peuvent évoluer dans le temps.

Déployer des modèles de Machine Learning en production

Pseudo-code du modèle

Une représentation visuelle des étapes pour bâtir votre modèle de Machine Learning.

Souvent, on y inclut :

  • Les étapes d'ingénierie des caractéristiques.
  • Les composantes d'un pipeline d'ensemble.
  • Des exemples d'entrées et de sorties du modèle.
Déployer des modèles de Machine Learning en production

Expérimentation et sélection du modèle

Documenter l'expérimentation et la sélection du meilleur modèle comprend :

  • Le processus de développement du modèle.
  • Les modèles envisagés.
  • Les mesures utilisées.
  • Les combinaisons d'hyperparamètres testées pour chaque modèle.

choice

Déployer des modèles de Machine Learning en production

Environnements d'entraînement

Pour documenter l'environnement d'entraînement, inclure :

  • Les progiciels utilisés avec leurs versions (p. ex. scikit-learn==1.1.3).
  • Les graines aléatoires utilisées pour l'entraînement non déterministe (p. ex. les algorithmes de réduction dimensionnelle).

Pourquoi ?

  • Reproduire les résultats de nos modèles de Machine Learning.
  • Assurer la cohérence entre l'entraînement et le déploiement en production.
Déployer des modèles de Machine Learning en production

Passons à la pratique !

Déployer des modèles de Machine Learning en production

Preparing Video For Download...