La vision par ordinateur (VA) est l'un des domaines les plus matures de l'intelligence artificielle (IA). Cependant, la construction et l'exploitation de pipelines de vision par ordinateur robustes et de bout en bout constituent un défi dans l'écosystème moderne de l'IA.
Pourquoi ? Parce que les modèles de vision par ordinateur déployés en production présentent un comportement arbitraire dû à plusieurs facteurs liés aux données, à la conception du modèle, à l'architecture et au déploiement.
Dans l'écosystème ML, MLOps (Machine Learning Operations) est un ensemble de pratiques permettant de suivre et de contrôler les performances de l'ensemble du pipeline ML à l'aide de processus tels que CI/CD (Continuous Integration/Continuous Delivery) et CT (Continuous Training).
Principalement, MLOps automatise la validation des données, la validation du modèle et le cycle de recyclage du modèle dans un environnement de production. De plus, il offre un mécanisme de surveillance qui alerte l'équipe de développement si les performances du modèle se détériorent.
Cependant, dans l'écosystème de la vision par ordinateur, les pratiques habituelles de MLOps ne sont pas optimales pour les raisons suivantes :
- Les données ne sont pas structurées, et leur manipulation se fait différemment.
- Les cas limites ou les classes sous-représentées peuvent avoir un impact plus important sur les performances du modèle.
- Le CV est plus gourmand en données et en matériel que les autres domaines de ML.
Les pipelines de vision par ordinateur nécessitent un ensemble de processus qui sont exclusifs à la vision par ordinateur. C'est là que CVOps, une fusion de MLOps et de la vision par ordinateur, est plus adaptée.
Dans cet article, nous examinerons en détail les raisons pour lesquelles les outils MLOps classiques ne conviennent pas aux tâches de vision par ordinateur. Nous verrons également comment un pipeline CVOps est mieux équipé pour rationaliser l'ensemble de votre pile de CV.
En quoi la manipulation des données est-elle différente dans la vision par ordinateur ?
Les données se présentent sous toutes les formes et toutes les tailles, notamment structurées, non structurées et semi-structurées. Cependant, la plupart des données d'entreprise ne sont pas structurées.
En fait, un rapport suggère que plus de 80 % des données sont non structurées, ce qui inclut les images, les vidéos, les courriels, les journaux de serveurs Web, etc. Mais seulement 18 % des organisations exploitent ces données, selon un rapport de Deloitte.
En vision par ordinateur, la majorité des données sont non structurées sous forme d'images et de vidéos. Par conséquent, l'exploration et la visualisation des données sont difficiles par rapport aux données structurées. Imaginez parcourir un million d'images non structurées par rapport à un million de lignes de données textuelles structurées stockées dans un fichier .csv ou une base de données relationnelle. En outre, les images et les vidéos nécessitent une capacité de stockage et une puissance de traitement plus importantes que les données structurées.
En outre, la collecte et la préparation d'ensembles de données d'images et de vidéos étiquetées nécessitent souvent une intervention manuelle fastidieuse. Souvent, il n'y a pas assez de données visuelles pour prendre en charge l'entraînement du modèle CV. D'autres fois, les données doivent être annotées à la main, ce qui demande beaucoup de travail et est coûteux.
De même, le filtrage des images et des vidéos est un défi. Imaginez simplement la création d'un ensemble de données sur les fleurs saisonnières à partir d'une vaste collection d'images de plantes et de fleurs sans aucune étiquette ni tag. Les entreprises utilisent des outils de gestion des métadonnées pour étiqueter et classer les images afin de les rendre consultables et accessibles. Là encore, cela nécessite une intervention humaine coûteuse.
Plutôt qu'un outil MLOps, un outil CVOps robuste résout tous ces problèmes en fournissant une solution centralisée et intégrée qui couvre la collecte, le stockage, la manipulation et le filtrage des données, entre autres.
La validation des modèles doit être axée sur la visualisation des cas limites
La validation du modèle détermine si le modèle est suffisamment généralisé pour répondre à tous les scénarios d'entrée. Cependant, dans le monde réel, des situations improbables se produisent souvent. Par exemple, une voiture autonome est entraînée pour des scénarios de route ordinaires. Comment le véhicule réagirait-il en cas d'événement inattendu ? Par exemple, une poursuite à grande vitesse par cinq voitures de police, une pluie soudaine ou un orage qui modifie les conditions de conduite. Ou que se passe-t-il si une personne se retrouve devant la voiture par accident ? Il s'agit de cas limites, peu probables et inhabituels, mais qui ont une probabilité non nulle de se produire.
Outre l'imprévisibilité des scénarios d'entrée, les cas limites sont dus aux biais et à la variance du modèle. Le modèle est soit trop simple, soit trop inexpérimenté pour traiter les données du monde réel qui arrivent.
En vision par ordinateur, les cas limites ont un impact significatif sur les performances du modèle. Les cas limites en vision par ordinateur sont plus subtils car ils sont souvent liés à des aspects visuels ambigus. Les annotateurs humains peuvent parfois ne pas identifier les cas limites, ce qui entraîne des erreurs d'étiquetage. Dans les images, les cas limites peuvent également se produire si deux objets sont totalement différents dans leur nature et leurs propriétés, mais semblent visuellement similaires. Regardez l'image ci-dessous.
La seule similitude entre un chien et un poulet frit est que les humains les aiment, l'un comme animal de compagnie et l'autre comme nourriture. Ce type d'images visuellement similaires compromet les performances des modèles de vision par ordinateur. Dans les applications critiques, de telles similitudes peuvent s'avérer fatales. Une seule erreur de prédiction sur dix peut entraîner une perte de revenus ou l'échec de la mission.
Les tâches CV complexes nécessitent des outils de visualisation des données d'image pour identifier efficacement les cas limites afin d'éviter tout dommage réel. Une plateforme CVOps robuste peut fournir les outils nécessaires pour gérer ces cas limites.
La surveillance doit être axée sur les données et le matériel.
Les tâches de vision par ordinateur sont gourmandes en données et en matériel. La stratégie MLOps classique n'offre pas de suivi détaillé des modèles de CV déployés en production car elle n'est pas équipée pour les surveiller.
En particulier, la surveillance de la vision par ordinateur comprend des dispositifs matériels de suivi tels que les caméras de télévision en circuit fermé, les instruments de balayage et d'imagerie médicale et d'autres dispositifs périphériques. Chaque dispositif peut avoir des configurations spécifiques susceptibles d'affecter les performances du modèle CV. Par exemple, l'orientation des caméras installées sur le bord d'une route pour l'analyse du trafic peut changer en raison du vent ou d'autres facteurs environnementaux, entraînant la capture par le modèle d'images d'entrée inexactes pour lesquelles le modèle n'a pas été entraîné.
Pour surveiller ces changements, vous pouvez avoir besoin de mesures prêtes à l'emploi ou spécifiques à la vision, qui diffèrent des mesures de performance classiques des ML. Certaines de ces métriques de surveillance de la CV incluent :
- Largeur et hauteur de l'image en entrée
- Distribution du rapport d'image
- Temps d'inférence
- Score aberrant de l'AE
- Dérive KS
En outre, l'équipe de développement doit être en mesure de surveiller les différentes dérives de la distribution, telles que la dérive des données, la dérive du concept, la dérive du domaine, la dérive des prédictions et la dérive en amont. Un modèle CVOps robuste offre des capacités de surveillance qui font souvent défaut aux outils MLOps classiques.
Nous avons discuté des différentes raisons pour lesquelles les pipelines MLOps ordinaires ne sont pas adaptés aux applications de vision par ordinateur. Et enfin, nous avons présenté CVOps comme une solution appropriée. Maintenant, nous allons démystifier CVOps en détail.
L'arrivée de CVOps - des plateformes MLOps spécialisés pour la vision par ordinateur
Si vous vous posez la question, qu'est-ce que CVOps, exactement ? En termes simples, il s'agit d'une combinaison de MLOps et de vision par ordinateur, de la même manière que MLOps est une combinaison de pratiques DevOps adaptées aux tâches d'apprentissage automatique.
CVOps recueille les meilleures pratiques, les processus commerciaux et les outils de l'entreprise et emploie des experts spécialisés dans le domaine de la CV pour créer des produits de vision par ordinateur prêts pour la production. L'environnement du produit comprend généralement une caméra ou un dispositif périphérique installé dans un environnement réel, par exemple des caméras installées sur le bord des routes pour les systèmes de sécurité routière et de surveillance du trafic.
En outre, les outils CVOps sont spécialisés dans le suivi du comportement des données et des modèles dans le temps. Ils peuvent suivre les métriques et les indicateurs clés de performance pour identifier les dérives de la distribution et les problèmes d'étalonnage des appareils. Un outil CVOps peut avertir votre équipe de développement si les valeurs seuils de ces métriques sont atteintes, ce qui lui permet de fournir des mises à jour de données et de modèles en temps voulu.
En outre, une stratégie CVOps robuste inclut des facteurs tels que l'évolutivité des données et des modèles et les coûts qui y sont associés. Elle inclut la gestion de plusieurs dispositifs périphériques et la mise en œuvre de solutions pour chaque dispositif simultanément.
Une stratégie de CVOps d'entreprise se préoccupe également du suivi et du maintien de la satisfaction du client dans le temps. Si les performances du modèle se détériorent, la stratégie CVOps doit permettre de résoudre rapidement tous les problèmes connexes afin de garantir le succès du client.
Construire des pipelines CVOps robustes avec Picsellia
Les outils généraux MLOps conviennent à la plupart des tâches d'apprentissage automatique et d'apprentissage profond. Cependant, les outils CVOps sont plus à même de résoudre les défis uniques des systèmes alimentés par la vision. Ils peuvent gérer, manipuler, analyser, annoter et valider des données d'image et de vidéo. Ils peuvent former, valider, recycler, surveiller et libérer des pipelines CV dans un environnement de production.
En fonction des besoins de l'entreprise, les équipes CV peuvent utiliser des outils CVOps d'entreprise packagés ou élaborer leur propre stratégie CVOps. Si vous optez pour une plateforme pré-construite, ne cherchez pas plus loin que Picsellia.
Picsellia est une plateforme CVOps robuste de bout en bout qui offre les fonctionnalités suivantes pour aider les data scientists et les équipes de vision d'entreprise :
- Gestion centralisée des ensembles de données pour les données non structurées comme les images et les vidéos
- Outils intégrés d'étiquetage d'images et de formation de modèles
- Suivi expérimental pour affiner le réglage et obtenir le modèle le plus performant
- Déploiement de modèles sans serveur prêts pour la production
- Surveillance du modèle CV en temps réel avec identification des cas limites
- Flux de travail automatisés ML couvrant chaque composant du pipeline CV.
De plus, Picsellia propose des mesures supervisées et non supervisées pour identifier toute dérive et surveiller l'ensemble des flux de travail du CV.
Demandez votre essai de la plateforme de CVOps Picsellia dès aujourd'hui !