Systèmes de production de ML

Le Machine Learning ne se résume pas à la mise en œuvre d'un algorithme de ML. Un système de production de ML implique un grand nombre de composants.

Systèmes de production de ML

Diagramme de système d'AA contenant les composants suivants : collecte de données, extraction de caractéristiques, outils de gestion des processus, vérification des données, configuration, gestion des ressources machine, surveillance, infrastructure de diffusion et code d'AA. La partie Code d'AA du diagramme est écrasée par les neuf autres composants.
Diagramme de système d'AA contenant les composants suivants : collecte de données, extraction de caractéristiques, outils de gestion des processus, vérification des données, configuration, gestion des ressources machine, surveillance, infrastructure de diffusion et code d'AA. La partie Code d'AA du diagramme est écrasée par les neuf autres composants.
  • Non, vous n'avez pas besoin de tout créer vous-même.
    • Réutilisez des composants de système de ML génériques chaque fois que c'est possible.
    • Les solutions CloudML de Google incluent Dataflow et TF Serving
    • Vous pouvez également trouver des composants sur d'autres plates-formes telles que Spark, Hadoop, etc.
    • Comment savoir de quoi vous avez besoin ?
      • Comprendre quelques paradigmes du système de ML et leurs exigences

Jusqu'ici, le cours d'initiation au Machine Learning était axé sur la construction de modèles de ML. Cependant, comme le suggère la figure suivante, les systèmes de production de ML réels sont d'importants écosystèmes, dont le modèle n'est qu'un élément.

Diagramme de système d'AA contenant les composants suivants : collecte de données, extraction de caractéristiques, outils de gestion des processus, vérification des données, configuration, gestion des ressources machine, surveillance, infrastructure de diffusion et code d'AA. La partie Code d'AA du diagramme est écrasée par les neuf autres composants.

Figure 1 : Système de production de ML réel.

Le code de ML est au cœur d'un système de production de ML réel, mais cette case représente souvent seulement 5 % ou moins de la totalité du code de ce système de production de ML. (Ce n'est pas une faute de frappe.) Notez qu'un système de production de ML consacre des ressources considérables aux données d'entrée : pour les collecter, les vérifier et en extraire les caractéristiques. Notez également qu'une infrastructure de diffusion doit être en place pour mettre les prédictions du modèle de ML en pratique dans le monde réel.

Heureusement, un grand nombre de composants de la figure précédente sont réutilisables. De plus, vous n'avez pas besoin de créer tous les composants de la Figure 2 vous-même.

TensorFlow fournit un grand nombre de ces composants, mais d'autres options sont disponibles sur d'autres plates-formes comme Spark ou Hadoop.

Les modules suivants vous aideront à prendre les décisions nécessaires en matière de conception pour créer un système de production de ML.