Rédiger une documentation ML efficace

Développer des modèles de Machine Learning pour la production

Sinan Ozdemir

Data Scientist, Entrepreneur, and Author

Les composants d'une excellente documentation ML

  • Sources de données
  • Schémas de données
  • Méthodes d'étiquetage
  • Expérimentation + sélection du modèle
  • Environnements d'entraînement
  • Pseudocode du modèle
Développer des modèles de Machine Learning pour la production

Documenter les sources de données

Permet de définir des processus pour évaluer la qualité des données.

Autres bénéfices :

  • Suivre la provenance des données.
  • Évaluer et itérer sur la qualité des données.

sources

Développer des modèles de Machine Learning pour la 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 base de données Type de données Ordre des données
Person.name string nominal
Person.survey_score integer ordinal

schema

Développer des modèles de Machine Learning pour la production

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

Documenter la façon dont nous avons étiqueté la variable cible améliore :

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

  2. La fiabilité du modèle via la qualité des étiquettes.

  3. Les performances du modèle via l'amélioration des étiquettes.

select

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

Développer des modèles de Machine Learning pour la production

Pseudocode du modèle

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

Souvent, cela inclut :

  • Les étapes d'ingénierie des features.
  • Les composants d'un pipeline d'ensemble.
  • Des exemples d'entrées et de sorties du modèle.
Développer des modèles de Machine Learning pour la production

Expérimentation + sélection du modèle

Documenter le processus d'expérimentation et de sélection du meilleur modèle inclut :

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

choice

Développer des modèles de Machine Learning pour la production

Environnements d'entraînement

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

  • Les paquets 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. algorithmes de réduction de dimension).

Pourquoi ?

  • Reproduire les résultats de nos modèles de Machine Learning.
  • Assurer la cohérence entre entraînement et production.
Développer des modèles de Machine Learning pour la production

Passons à la pratique !

Développer des modèles de Machine Learning pour la production

Preparing Video For Download...