Le projet Open Data Hub est une plateforme ouverte d'apprentissage automatique basée sur Red Hat OpenShift

L'avenir est arrivé et les technologies d'intelligence artificielle et d'apprentissage automatique sont déjà utilisées avec succès par vos magasins préférés, les entreprises de transport et même les élevages de dindes.

Le projet Open Data Hub est une plateforme ouverte d'apprentissage automatique basée sur Red Hat OpenShift

Et si quelque chose existe, c'est qu'il y a déjà quelque chose sur Internet... un projet ouvert ! Découvrez comment Open Data Hub vous aide à faire évoluer de nouvelles technologies et à éviter les problèmes de mise en œuvre.

Avec tous les avantages de l’intelligence artificielle (IA) et de l’apprentissage automatique (ML), les organisations ont souvent du mal à faire évoluer ces technologies. Les principaux problèmes dans ce cas sont généralement les suivants :

  • Échange d’informations et coopération – il est presque impossible d’échanger des informations sans effort et de collaborer par itérations rapides.
  • Accès aux données – pour chaque tâche, il faut le reconstruire manuellement, ce qui prend beaucoup de temps.
  • Accès sur demande – il n’existe aucun moyen d’obtenir un accès à la demande aux outils et plateformes d’apprentissage automatique, ainsi qu’à l’infrastructure informatique.
  • Production – les modèles restent au stade de prototype et ne sont pas utilisés industriellement.
  • Suivre et expliquer les résultats de l'IA – la reproductibilité, le suivi et l’explication des résultats AI/ML sont difficiles.

Si ces problèmes ne sont pas résolus, ils ont un impact négatif sur la vitesse, l’efficacité et la productivité des précieux data scientists. Cela entraîne leur frustration, leur déception dans leur travail et, par conséquent, les attentes des entreprises concernant l'IA/ML sont gaspillées.

La responsabilité de résoudre ces problèmes incombe aux spécialistes informatiques, qui doivent fournir aux analystes de données - c'est vrai, quelque chose comme le cloud. Plus précisément, nous avons besoin d’une plate-forme offrant une liberté de choix et un accès pratique et facile. En même temps, il est rapide, facilement reconfigurable, évolutif à la demande et résistant aux pannes. Construire une telle plateforme sur des technologies open source permet d'éviter la dépendance vis-à-vis d'un fournisseur et de conserver un avantage stratégique à long terme en termes de contrôle des coûts.

Il y a quelques années, quelque chose de similaire s'est produit dans le développement d'applications et a conduit à l'émergence de microservices, de cloud hybrides, d'automatisation informatique et de processus agiles. Pour faire face à tout cela, les professionnels de l’informatique se sont tournés vers les conteneurs, Kubernetes et les cloud hybrides ouverts.

Cette expérience est maintenant appliquée pour répondre aux défis d'Al. C'est pourquoi les professionnels de l'informatique créent des plates-formes basées sur des conteneurs, permettent la création de services d'IA/ML au sein de processus agiles, accélèrent l'innovation et sont conçues dans une perspective de cloud hybride.

Le projet Open Data Hub est une plateforme ouverte d'apprentissage automatique basée sur Red Hat OpenShift

Nous commencerons à construire une telle plate-forme avec Red Hat OpenShift, notre plate-forme Kubernetes conteneurisée pour le cloud hybride, qui dispose d'un écosystème en croissance rapide de solutions logicielles et matérielles de ML (NVIDIA, H2O.ai, Starburst, PerceptiLabs, etc.). Certains clients de Red Hat, tels que BMW Group, ExxonMobil et d'autres, ont déjà déployé des chaînes d'outils ML conteneurisées et des processus DevOps au-dessus de la plateforme et de son écosystème pour mettre leurs architectures ML en production et accélérer le travail des analystes de données.

Une autre raison pour laquelle nous avons lancé le projet Open Data Hub est de démontrer un exemple d'architecture basée sur plusieurs projets logiciels open source et de montrer comment mettre en œuvre l'ensemble du cycle de vie d'une solution ML basée sur la plateforme OpenShift.

Projet de hub de données ouvert

Il s'agit d'un projet open source développé au sein de la communauté de développement correspondante et qui met en œuvre un cycle complet d'opérations - du chargement et de la transformation des données initiales à la génération, la formation et la maintenance d'un modèle - lors de la résolution de problèmes d'IA/ML à l'aide de conteneurs et de Kubernetes sur OpenShift. plate-forme. Ce projet peut être considéré comme une implémentation de référence, un exemple de la façon de créer une solution ouverte d'IA/ML-as-a-service basée sur OpenShift et des outils open source associés tels que Tensorflow, JupyterHub, Spark et autres. Il est important de noter que Red Hat lui-même utilise ce projet pour fournir ses services AI/ML. De plus, OpenShift s'intègre aux principales solutions logicielles et matérielles de ML de NVIDIA, Seldon, Starbust et d'autres fournisseurs, ce qui facilite la création et l'exécution de vos propres systèmes d'apprentissage automatique.

Le projet Open Data Hub est une plateforme ouverte d'apprentissage automatique basée sur Red Hat OpenShift

Le projet Open Data Hub se concentre sur les catégories d'utilisateurs et de cas d'utilisation suivants :

  • Analyste de données qui a besoin d'une solution pour mettre en œuvre des projets ML, organisée comme un cloud avec des fonctions en libre-service.
  • Analyste de données qui a besoin d'un choix maximal parmi les derniers outils et plates-formes open source d'IA/ML.
  • Analyste de données qui a besoin d'accéder aux sources de données lors de la formation des modèles.
  • Analyste de données qui a besoin d'accéder aux ressources informatiques (CPU, GPU, mémoire).
  • Analyste de données qui doit être capable de collaborer et de partager du travail avec des collègues, de recevoir des commentaires et d'apporter des améliorations par itération rapide.
  • Un analyste de données qui souhaite interagir avec les développeurs (et les équipes devops) afin que ses modèles ML et les résultats de son travail soient mis en production.
  • Ingénieur de données qui doit fournir à un analyste de données un accès à une variété de sources de données tout en respectant les exigences réglementaires et de sécurité.
  • Administrateur/opérateur de système informatique qui doit pouvoir contrôler sans effort le cycle de vie (installation, configuration, mise à niveau) des composants et technologies open source. Nous avons également besoin d’outils de gestion et de quotas appropriés.

Le projet Open Data Hub rassemble une gamme d'outils open source pour mettre en œuvre un cycle complet d'opérations IA/ML. Jupyter Notebook est utilisé ici comme principal outil de travail pour l'analyse des données. La boîte à outils est aujourd'hui très populaire parmi les scientifiques des données, et Open Data Hub leur permet de créer et de gérer facilement des espaces de travail Jupyter Notebook à l'aide du JupyterHub intégré. En plus de créer et d'importer des notebooks Jupyter, le projet Open Data Hub contient également un certain nombre de notebooks prêts à l'emploi sous la forme d'une bibliothèque IA.

Cette bibliothèque est une collection de composants et de solutions d'apprentissage automatique open source pour des scénarios courants qui simplifient le prototypage rapide. JupyterHub est intégré au modèle d'accès RBAC d'OpenShift, qui vous permet d'utiliser des comptes OpenShift existants et de mettre en œuvre une authentification unique. De plus, JupyterHub propose une interface utilisateur conviviale appelée spawner, grâce à laquelle l'utilisateur peut facilement configurer la quantité de ressources informatiques (cœurs CPU, mémoire, GPU) pour le notebook Jupyter sélectionné.

Une fois que l'analyste de données a créé et configuré l'ordinateur portable, toutes les autres préoccupations le concernant sont prises en charge par le planificateur Kubernetes, qui fait partie d'OpenShift. Les utilisateurs peuvent uniquement réaliser leurs expériences, sauvegarder et partager les résultats de leur travail. De plus, les utilisateurs avancés peuvent accéder directement au shell OpenShift CLI directement à partir des notebooks Jupyter pour exploiter les primitives Kubernetes telles que Job ou les fonctionnalités OpenShift telles que Tekton ou Knative. Ou pour cela, vous pouvez utiliser l'interface graphique pratique d'OpenShift, appelée « console Web OpenShift ».

Le projet Open Data Hub est une plateforme ouverte d'apprentissage automatique basée sur Red Hat OpenShift

Le projet Open Data Hub est une plateforme ouverte d'apprentissage automatique basée sur Red Hat OpenShift

Passant à l'étape suivante, Open Data Hub permet de gérer les pipelines de données. Pour cela, un objet Ceph est utilisé, qui est fourni comme stockage de données d'objet compatible S3. Apache Spark vous permet de diffuser des données à partir de sources externes ou du stockage Ceph S3 intégré, et vous permet également d'effectuer des transformations de données préliminaires. Apache Kafka offre une gestion avancée des pipelines de données (où les données peuvent être chargées plusieurs fois, ainsi que des opérations de transformation, d'analyse et de persistance des données).

Ainsi, l’analyste de données a accédé aux données et construit un modèle. Il a désormais envie de partager les résultats obtenus avec des collègues ou des développeurs d'applications, et de leur fournir son modèle sur les principes d'un service. Cela nécessite un serveur d'inférence, et Open Data Hub dispose d'un tel serveur, il s'appelle Seldon et vous permet de publier le modèle en tant que service RESTful.

À un moment donné, il existe plusieurs modèles de ce type sur le serveur Seldon et il est nécessaire de surveiller la manière dont ils sont utilisés. Pour y parvenir, Open Data Hub propose une collection de métriques pertinentes et un moteur de reporting basé sur les outils de surveillance open source largement utilisés Prometheus et Grafana. De ce fait, nous recevons des retours pour suivre l’utilisation des modèles d’IA, notamment dans un environnement de production.

Le projet Open Data Hub est une plateforme ouverte d'apprentissage automatique basée sur Red Hat OpenShift

De cette manière, Open Data Hub offre une approche de type cloud tout au long du cycle de vie de l'IA/ML, depuis l'accès et la préparation des données jusqu'à la formation et la production des modèles.

Tout mettre ensemble

Maintenant, la question se pose de savoir comment organiser tout cela pour l'administrateur OpenShift. Et c’est là qu’intervient un opérateur Kubernetes spécial pour les projets Open Data Hub.

Le projet Open Data Hub est une plateforme ouverte d'apprentissage automatique basée sur Red Hat OpenShift

Cet opérateur gère l'installation, la configuration et le cycle de vie du projet Open Data Hub, y compris le déploiement des outils susmentionnés tels que JupyterHub, Ceph, Spark, Kafka, Seldon, Prometheus et Grafana. Le projet Open Data Hub est à retrouver dans la console web OpenShift, dans la section opérateurs de communauté. Ainsi, l'administrateur OpenShift peut préciser que les projets OpenShift correspondants sont catégorisés comme « Projet Open Data Hub ». Cela se fait une fois. Après cela, l'analyste de données se connecte à son espace projet via la console web OpenShift et constate que l'opérateur Kubernetes correspondant est installé et disponible pour ses projets. Il crée ensuite une instance de projet Open Data Hub en un clic et a immédiatement accès aux outils décrits ci-dessus. Et tout cela peut être configuré en mode haute disponibilité et tolérance aux pannes.

Le projet Open Data Hub est une plateforme ouverte d'apprentissage automatique basée sur Red Hat OpenShift

Si vous souhaitez essayer le projet Open Data Hub par vous-même, commencez par instructions d'installation et tutoriel d'introduction. Les détails techniques de l'architecture Open Data Hub peuvent être trouvés ici, plans de développement de projets – ici. À l'avenir, nous prévoyons de mettre en œuvre une intégration supplémentaire avec Kubeflow, de résoudre un certain nombre de problèmes liés à la réglementation et à la sécurité des données, et également d'organiser l'intégration avec les systèmes basés sur des règles Drools et Optaplanner. Exprimez votre opinion et devenez acteur du projet Centre de données ouvert possible sur la page les communautés.

Pour récapituler : de sérieux défis de mise à l'échelle empêchent les organisations de réaliser tout le potentiel de l'intelligence artificielle et de l'apprentissage automatique. Red Hat OpenShift est utilisé depuis longtemps avec succès pour résoudre des problèmes similaires dans l'industrie du logiciel. Le projet Open Data Hub, mis en œuvre au sein de la communauté de développement open source, propose une architecture de référence pour organiser un cycle complet d'opérations IA/ML basée sur le cloud hybride OpenShift. Nous avons un plan clair et réfléchi pour le développement de ce projet, et nous souhaitons sérieusement créer autour de lui une communauté active et fructueuse pour développer des solutions d'IA ouvertes sur la plateforme OpenShift.

Source: habr.com

Ajouter un commentaire