InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel

Auteur : Sergey Lukyanchikov, ingénieur-conseil chez InterSystems

Appels informatiques IA/ML en temps réel

Commençons par des exemples tirés de l'expérience de la pratique de la science des données chez InterSystems :

  • Le portail d'acheteur chargé est connecté à un système de recommandation en ligne. Il y aura une restructuration des promotions dans l'ensemble du réseau de vente au détail (par exemple, au lieu d'une ligne de promotions « plate », une matrice « tactiques de segments » sera désormais utilisée). Qu’arrive-t-il aux moteurs de recommandation ? Qu'arrive-t-il à la soumission et à la mise à jour des données au moteur de recommandation (le volume des données saisies a augmenté de 25000 XNUMX fois) ? Qu’arrive-t-il à l’élaboration des recommandations (nécessité de réduire par mille le seuil de filtrage des règles de recommandation en raison d’une multiplication par mille de leur nombre et de leur « portée ») ?
  • Il existe un système de surveillance de la probabilité de défauts dans les composants de l'équipement. Un système de contrôle de processus automatisé a été connecté au système de surveillance, transmettant des milliers de paramètres de processus technologiques chaque seconde. Qu’arrive-t-il au système de surveillance qui fonctionnait auparavant sur des « échantillons manuels » (est-il capable de fournir une surveillance probabiliste seconde par seconde) ? Que se passera-t-il si un nouveau bloc de plusieurs centaines de colonnes apparaît dans les données d'entrée avec des lectures de capteurs récemment ajoutés au système de contrôle de processus (sera-t-il nécessaire et pendant combien de temps d'arrêter le système de surveillance pour inclure les données des nouveaux capteurs dans l'analyse ) ?
  • Un ensemble de mécanismes d’IA/ML (recommandation, suivi, prévision) a été créé qui utilisent les résultats des travaux de chacun. Combien d’heures de travail sont nécessaires chaque mois pour adapter le fonctionnement de ce complexe aux évolutions des données d’entrée ? Quel est le « ralentissement » général lorsqu'il est soutenu par le complexe décisionnel de gestion (la fréquence d'apparition de nouvelles informations de support par rapport à la fréquence d'apparition de nouvelles données d'entrée) ?

En résumant ces exemples et bien d'autres, nous sommes parvenus à la formulation des défis qui se posent lors du passage à l'utilisation des mécanismes d'apprentissage automatique et d'intelligence artificielle en temps réel :

  • Sommes-nous satisfaits de la rapidité de création et d’adaptation (à la situation changeante) des développements IA/ML dans notre entreprise ?
  • Dans quelle mesure les solutions d’IA/ML que nous utilisons prennent-elles en charge la gestion d’entreprise en temps réel ?
  • Les solutions d'IA/ML que nous utilisons sont-elles capables de s'adapter de manière indépendante (sans développeurs) aux changements dans les pratiques de gestion des données et de l'entreprise ?

Notre article est un aperçu complet des capacités de la plateforme InterSystems IRIS en termes de support universel pour le déploiement de mécanismes AI/ML, d'assemblage (intégration) de solutions AI/ML et de formation (test) de solutions AI/ML sur des sujets intensifs. flux de données. Nous examinerons dans cet article des études de marché, des études de cas de solutions IA/ML et les aspects conceptuels de ce que nous appelons une plateforme IA/ML en temps réel.

Ce que nous savons des enquêtes : les applications en temps réel

résultats enquêtemenée auprès de près de 800 professionnels de l'informatique en 2019 par Lightbend, parlent d'eux-mêmes :

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 1 Principaux consommateurs de données en temps réel

Citons des fragments importants du rapport sur les résultats de cette enquête dans notre traduction :

« ... Les tendances de popularité des outils d'intégration des flux de données et, en même temps, de prise en charge de l'informatique dans des conteneurs apportent une réponse synergique à la demande du marché d'une proposition plus réactive, rationnelle et dynamique de solutions efficaces. Les données en streaming transfèrent les informations plus rapidement que les données par paquets traditionnelles. À cela s’ajoute la possibilité d’appliquer rapidement des méthodes informatiques, telles que, par exemple, des recommandations basées sur l’IA/ML, créant ainsi des avantages concurrentiels grâce à une satisfaction client accrue. La course à l'agilité a également un impact sur tous les rôles dans le paradigme DevOps, rendant le développement et le déploiement d'applications plus efficaces. … Huit cent quatre professionnels de l'informatique ont fourni des informations sur l'utilisation des flux de données dans leurs organisations. Les personnes interrogées étaient majoritairement situées dans les pays occidentaux (41 % en Europe et 37 % en Amérique du Nord) et étaient réparties presque également entre petites, moyennes et grandes entreprises. ...

... L'intelligence artificielle n'est pas une mode. Cinquante-huit pour cent de ceux qui utilisent déjà le traitement des flux de données dans les applications de productivité IA/ML confirment que leur utilisation de l’IA/ML connaîtra la plus forte croissance au cours de l’année prochaine (par rapport à d’autres applications).

  • Selon la majorité des personnes interrogées, l'utilisation de flux de données dans les scénarios d'IA/ML connaîtra la plus forte croissance au cours de l'année prochaine.
  • Les applications en IA/ML se développeront non seulement en raison de types de scénarios relativement nouveaux, mais également en raison de scénarios traditionnels dans lesquels les données en temps réel sont de plus en plus utilisées.
  • Outre l'IA/ML, le niveau d'enthousiasme des utilisateurs de pipelines de données IoT est impressionnant : 48 % de ceux qui ont déjà intégré des données IoT déclarent que la mise en œuvre de scénarios sur ces données connaîtra une augmentation significative dans un avenir proche. ..."

De cette enquête plutôt intéressante, il ressort clairement que la perception des scénarios d’apprentissage automatique et d’intelligence artificielle comme leaders dans la consommation de flux de données est déjà « en route ». Mais une observation tout aussi importante est la perception de l’IA/ML en temps réel à travers le prisme du DevOps : ici, nous pouvons déjà commencer à parler de la transformation de la culture encore dominante de « l’IA/ML jetable avec un ensemble de données entièrement accessibles ».

Concept de plateforme IA/ML en temps réel

Un domaine d’application typique de l’IA/ML en temps réel est le contrôle des processus dans la fabrication. En utilisant son exemple et en tenant compte des réflexions précédentes, nous formulerons le concept d'une plateforme IA/ML en temps réel.
L'utilisation de l'intelligence artificielle et de l'apprentissage automatique dans le contrôle des processus présente un certain nombre de caractéristiques :

  • Les données sur l'état du processus technologique sont reçues de manière intensive : à haute fréquence et pour une large gamme de paramètres (jusqu'à des dizaines de milliers de valeurs de paramètres transmises par seconde depuis le système de contrôle de processus)
  • Les données sur l'identification des défauts, sans parler des données sur leur évolution, sont au contraire rares et irrégulières, caractérisées par une typification insuffisante des défauts et leur localisation dans le temps (souvent représentée par des enregistrements papier)
  • D'un point de vue pratique, seule une « fenêtre de pertinence » des données sources est disponible pour la formation et l'application de modèles, reflétant la dynamique du processus technologique sur un intervalle glissant raisonnable se terminant par les dernières valeurs lues des paramètres du processus.

Ces caractéristiques nous obligent, en plus de la réception et du traitement de base en temps réel du « signal d'entrée large bande » intensif du processus technologique, à effectuer (en parallèle) l'application, la formation et le contrôle qualité des résultats de l'IA/ Modèles ML - également en temps réel. Le « cadre » que nos modèles « voient » dans la fenêtre glissante de pertinence change constamment – ​​et avec lui, la qualité des résultats du travail des modèles IA/ML formés sur l'un des « cadres » dans le passé change également. . Si la qualité des résultats du travail des modèles AI/ML se dégrade (par exemple : la valeur de l'erreur de classification « norme d'alarme » a dépassé les limites que nous avons définies), un entraînement supplémentaire des modèles devrait être automatiquement lancé sur un « cadre » plus actuel - et le choix du moment pour lancer une formation supplémentaire des modèles devrait tenir compte de la manière dont la durée de la formation elle-même et la dynamique de détérioration de la qualité du travail de la version actuelle des modèles (puisque les versions actuelles des modèles continuent d'être utilisées pendant que les modèles sont formés et jusqu'à ce que leurs versions « nouvellement formées » soient formées).

InterSystems IRIS dispose de capacités de plate-forme clés pour activer les solutions IA/ML pour le contrôle des processus en temps réel. Ces capacités peuvent être divisées en trois groupes principaux :

  • Déploiement continu (Continuous Deployment/Delivery, CD) de mécanismes AI/ML nouveaux ou adaptés existants dans une solution productive fonctionnant en temps réel sur la plateforme InterSystems IRIS
  • Intégration continue (CI) dans une solution productive unique de flux de données de processus technologiques entrants, de files d'attente de données pour l'application/formation/contrôle qualité des mécanismes IA/ML et d'échanges de données/code/actions de contrôle avec des environnements de modélisation mathématique, orchestrés en temps réel plateforme InterSystems IRIS
  • (Auto-)formation continue (Continuous Training, CT) des mécanismes d'IA/ML, réalisée dans des environnements de modélisation mathématique à l'aide de données, de code et d'actions de contrôle (« décisions prises ») transmises par la plateforme InterSystems IRIS

La classification des capacités des plateformes en matière d’apprentissage automatique et d’intelligence artificielle dans ces groupes n’est précisément pas fortuite. Citons la méthode méthodologique la publication de Google, qui fournit une base conceptuelle à cette classification, dans notre traduction :

« … Le concept DevOps, en vogue aujourd'hui, couvre le développement et l'exploitation de systèmes d'information à grande échelle. Les avantages de la mise en œuvre de ce concept sont une réduction de la durée des cycles de développement, un déploiement plus rapide des développements et une flexibilité dans la planification des versions. Pour obtenir ces avantages, DevOps implique la mise en œuvre d'au moins deux pratiques :

  • Intégration continue (CI)
  • Livraison continue (CD)

Ces pratiques s'appliquent également aux plateformes IA/ML pour garantir un assemblage fiable et performant de solutions IA/ML productives.

Les plateformes AI/ML diffèrent des autres systèmes d’information sur les aspects suivants :

  • Compétences de l'équipe : lors de la création d'une solution IA/ML, l'équipe comprend généralement des data scientists ou des experts « universitaires » dans le domaine de la recherche de données qui effectuent des analyses de données, développent et testent des modèles. Ces membres de l’équipe ne sont peut-être pas des développeurs de code professionnels et productifs.
  • Développement : les moteurs AI/ML sont de nature expérimentale. Afin de résoudre un problème de la manière la plus efficace possible, il est nécessaire de passer par diverses combinaisons de variables d’entrée, d’algorithmes, de méthodes de modélisation et de paramètres du modèle. La complexité d’une telle recherche réside dans le traçage de « ce qui a fonctionné/n’a pas fonctionné », la garantie de la reproductibilité des épisodes, la généralisation des développements pour des implémentations répétées.
  • Tests : tester les moteurs AI/ML nécessite une gamme de tests plus large que la plupart des autres développements. En plus des tests unitaires et d'intégration standard, la validité des données et la qualité des résultats de l'application du modèle aux échantillons de formation et de contrôle sont testées.
  • Déploiement : le déploiement de solutions IA/ML ne se limite pas aux services prédictifs qui utilisent un modèle une fois formé. Les solutions IA/ML sont construites autour de pipelines à plusieurs étapes qui effectuent une formation et une application automatisées des modèles. Le déploiement de tels pipelines implique d'automatiser des actions non triviales traditionnellement effectuées manuellement par les data scientists afin de pouvoir entraîner et tester des modèles.
  • Productivité : les moteurs d'IA/ML peuvent manquer de productivité non seulement en raison d'une programmation inefficace, mais également en raison de la nature en constante évolution des données d'entrée. En d’autres termes, les performances des mécanismes d’IA/ML peuvent se dégrader pour un éventail de raisons plus large que les performances des développements conventionnels. Ce qui conduit à la nécessité de surveiller (en ligne) les performances de nos moteurs AI/ML, ainsi que d'envoyer des alertes ou de rejeter les résultats si les indicateurs de performance ne répondent pas aux attentes.

Les plates-formes IA/ML sont similaires aux autres systèmes d'information dans la mesure où elles nécessitent toutes deux une intégration continue du code avec un contrôle de version, des tests unitaires, des tests d'intégration et un déploiement de développement continu. Cependant, dans le cas de l’IA/ML, il existe plusieurs différences importantes :

  • La CI (Continuous Integration) ne se limite plus à tester et valider le code des composants déployés : elle inclut également le test et la validation des données et des modèles AI/ML.
  • Le CD (Continuous Delivery/Deployment, déploiement continu) ne se limite pas à l'écriture et à la publication de packages ou de services, mais implique une plateforme de composition, de formation et d'application de solutions AI/ML.
  • CT (Continuous Training, formation continue) est un nouvel élément [env. auteur de l'article : un nouvel élément par rapport au concept traditionnel de DevOps, dans lequel CT est, en règle générale, des tests continus], inhérents aux plateformes AI/ML, responsables de la gestion autonome des mécanismes de formation et d'application de l'IA Modèles /ML. ..."

Nous pouvons affirmer que l'apprentissage automatique et l'intelligence artificielle travaillant sur des données en temps réel nécessitent un ensemble plus large d'outils et de compétences (du développement de code à l'orchestration d'environnements de modélisation mathématique), une intégration plus étroite entre tous les domaines fonctionnels et thématiques, une organisation plus efficace des ressources humaines et techniques. ressources des machines.

Scénario temps réel : reconnaître l'évolution des défauts des pompes d'alimentation

En continuant à utiliser la zone de contrôle de processus comme exemple, considérons un problème spécifique (nous l'avons déjà mentionné au tout début) : nous devons assurer une surveillance en temps réel de l'évolution des défauts dans les pompes en fonction du flux de valeurs des paramètres de processus. ​​et les rapports du personnel de réparation sur les défauts identifiés.

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 2 Formulation du problème pour surveiller l'évolution des défauts

Une caractéristique de la plupart des tâches ainsi posées dans la pratique est que la régularité et l'efficacité de la réception des données (APCS) doivent être considérées dans le contexte de l'apparition (et de l'enregistrement) épisodique et irrégulière de défauts de divers types. En d'autres termes : les données du système de contrôle du processus arrivent une fois par seconde, correctes et précises, et les défauts sont notés avec un crayon chimique indiquant la date dans un cahier général de l'atelier (par exemple : « 12.01 – fuite dans le couvercle du côté du 3ème roulement »).

Ainsi, nous pouvons compléter la formulation du problème avec la limitation importante suivante : nous n'avons qu'une seule « étiquette » d'un défaut d'un type spécifique (c'est-à-dire qu'un exemple de défaut d'un type spécifique est représenté par les données du contrôle de processus système à une date précise - et nous n'avons pas plus d'exemples d'un défaut de ce type particulier). Cette limitation nous fait immédiatement sortir du cadre du machine learning classique (supervised learning), pour lequel il devrait y avoir beaucoup de « tags ».

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 3 Clarification de la tâche de surveillance de l'évolution des défauts

Pouvons-nous d’une manière ou d’une autre « multiplier » le seul « tag » à notre disposition ? Oui nous pouvons. L'état actuel de la pompe est caractérisé par le degré de similitude avec les défauts enregistrés. Même sans utiliser de méthodes quantitatives, au niveau de la perception visuelle, en observant la dynamique des valeurs des données provenant du système de contrôle de processus, vous pouvez déjà apprendre beaucoup :

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 4 Dynamique de l'état de la pompe sur fond de « marque » d'un défaut d'un type donné

Mais la perception visuelle (du moins pour l’instant) n’est pas le générateur de « tags » le plus approprié dans notre scénario en évolution rapide. Nous évaluerons la similitude de l'état actuel de la pompe avec les défauts signalés à l'aide d'un test statistique.

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 5 Application d'un test statistique aux données entrantes dans le contexte d'une « étiquette » de défaut

Un test statistique détermine la probabilité que les enregistrements contenant les valeurs des paramètres technologiques du processus dans le « flow-packet » reçu du système de contrôle de processus soient similaires aux enregistrements du « tag » d'un défaut d'un certain type. La valeur de probabilité (indice de similarité statistique) calculée à la suite de l'application d'un test statistique est convertie en une valeur de 0 ou 1, devenant ainsi une « étiquette » pour l'apprentissage automatique dans chaque enregistrement spécifique du paquet examiné pour la similarité. Autrement dit, après avoir traité un paquet d'enregistrements d'état de pompe nouvellement reçu avec un test statistique, nous avons la possibilité (a) d'ajouter ce paquet à l'ensemble de formation pour former le modèle AI/ML et (b) d'effectuer un contrôle qualité du version actuelle du modèle lors de son utilisation dans ce package.

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 6 Application d'un modèle d'apprentissage automatique aux données entrantes dans le contexte d'une « étiquette » de défaut

Dans l'un de nos précédents webinaires Nous montrons et expliquons comment la plateforme InterSystems IRIS vous permet de mettre en œuvre n'importe quel mécanisme d'IA/ML sous la forme de processus métier à exécution continue qui surveillent la fiabilité des résultats de modélisation et adaptent les paramètres du modèle. Lors de la mise en œuvre d'un prototype de notre scénario avec des pompes, nous utilisons toutes les fonctionnalités d'InterSystems IRIS présentées lors du webinaire - en implémentant dans le processus d'analyse dans le cadre de notre solution non pas l'apprentissage supervisé classique, mais plutôt l'apprentissage par renforcement, qui gère automatiquement la sélection des modèles de formation. . L'échantillon d'apprentissage contient des enregistrements sur lesquels un « consensus de détection » apparaît après application à la fois du test statistique et de la version actuelle du modèle - c'est-à-dire, à la fois le test statistique (après transformation de l'indice de similarité à 0 ou 1) et le modèle ont produit le résultat. sur de tels enregistrements 1. Lors d'un nouvel entraînement du modèle, lors de sa validation (le modèle nouvellement entraîné est appliqué à son propre échantillon d'apprentissage, avec application préalable d'un test statistique sur celui-ci), des enregistrements qui « n'ont pas conservé » le résultat 1 après traitement par le test statistique (en raison de la présence constante dans la formation d'un échantillon d'enregistrements de « l'étiquette » originale du défaut), sont supprimés de l'ensemble d'apprentissage, et une nouvelle version du modèle apprend à partir de « l'étiquette » du défaut. défaut plus les enregistrements « conservés » du flux.

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 7 Robotisation des calculs AI/ML dans InterSystems IRIS

S'il est nécessaire d'avoir une sorte de « deuxième avis » sur la qualité de la détection obtenue lors des calculs locaux dans InterSystems IRIS, un processus de conseil est créé pour effectuer la formation et l'application de modèles sur un ensemble de données de contrôle à l'aide de services cloud (par exemple, Microsoft Azure, Amazon Web Services, Google Cloud Platform, etc.) :

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 8 Deuxième avis de Microsoft Azure orchestré par InterSystems IRIS

Le prototype de notre scénario dans InterSystems IRIS est conçu comme un système de processus analytiques basé sur des agents qui interagissent avec un objet d'équipement (pompe), des environnements de modélisation mathématique (Python, R et Julia), et assurent l'auto-apprentissage de toutes les IA/IA impliquées. Mécanismes ML - sur les flux de données en temps réel.

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 9 Fonctionnalité principale de la solution AI/ML en temps réel dans InterSystems IRIS

Le résultat pratique de notre prototype :

  • Exemple de défaut reconnu par le modèle (12 janvier) :

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel

  • Un défaut évolutif reconnu par le modèle qui n'était pas inclus dans l'échantillon (le 11 septembre, le défaut lui-même n'a été identifié par l'équipe de réparation que deux jours plus tard, le 13 septembre) :

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Une simulation sur des données réelles contenant plusieurs épisodes d'un même défaut a montré que notre solution, implémentée sur la plateforme InterSystems IRIS, permet d'identifier l'évolution de défauts de ce type plusieurs jours avant qu'ils ne soient détectés par l'équipe de réparation.

InterSystems IRIS - une plateforme informatique universelle d'IA/ML en temps réel

La plateforme InterSystems IRIS simplifie le développement, le déploiement et l'exploitation de solutions de données en temps réel. InterSystems IRIS est capable d'effectuer simultanément un traitement de données transactionnelles et analytiques ; prendre en charge les vues de données synchronisées selon plusieurs modèles (y compris relationnel, hiérarchique, objet et document) ; agir comme une plate-forme pour intégrer un large éventail de sources de données et d'applications individuelles ; fournir des analyses avancées en temps réel sur les données structurées et non structurées. InterSystems IRIS fournit également des mécanismes d'utilisation d'outils d'analyse externes et permet une combinaison flexible d'hébergement dans le cloud et sur des serveurs locaux.

Les applications construites sur la plateforme InterSystems IRIS sont déployées dans une variété de secteurs, aidant les entreprises à réaliser des avantages économiques significatifs d'un point de vue stratégique et opérationnel, en augmentant la prise de décision éclairée et en comblant les écarts entre l'événement, l'analyse et l'action.

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 10 Architecture InterSystems IRIS dans le contexte de l'IA/ML en temps réel

Comme le diagramme précédent, le diagramme ci-dessous combine le nouveau « système de coordonnées » (CD/CI/CT) avec un diagramme du flux d'informations entre les éléments de travail de la plateforme. La visualisation commence par le macromécanisme CD et se poursuit avec les macromécanismes CI et CT.

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 11 Schéma des flux d'informations entre les éléments AI/ML de la plateforme InterSystems IRIS

L'essence du mécanisme CD dans InterSystems IRIS : les utilisateurs de la plateforme (développeurs de solutions AI/ML) adaptent les développements AI/ML existants et/ou créent de nouveaux développements AI/ML à l'aide d'un éditeur de code spécialisé pour les mécanismes AI/ML : Jupyter (nom complet : Jupyter Notebook ; par souci de concision, les documents créés dans cet éditeur sont aussi parfois appelés). Dans Jupyter, un développeur a la possibilité d'écrire, de déboguer et de vérifier les performances (y compris à l'aide de graphiques) d'un développement IA/ML spécifique avant qu'il ne soit placé (« déployé ») dans InterSystems IRIS. Il est clair qu'un nouveau développement ainsi créé ne recevra qu'un débogage de base (puisque, notamment, Jupyter ne fonctionne pas avec des flux de données en temps réel) - c'est dans l'ordre des choses, car le principal résultat du développement dans Jupyter est la confirmation de l'opérabilité fondamentale d'un mécanisme AI/ML distinct (« affiche le résultat attendu sur un échantillon de données »). De même, un mécanisme déjà placé dans la plateforme (voir les macro-mécanismes suivants) avant le débogage dans Jupyter peut nécessiter un « rollback » vers un formulaire « pré-plateforme » (lecture de données à partir de fichiers, utilisation de données via xDBC au lieu de tables, interaction directe avec les globaux – tableaux de données multidimensionnels InterSystems IRIS – etc.).

Un aspect important de l'implémentation du CD dans InterSystems IRIS : une intégration bidirectionnelle a été implémentée entre la plateforme et Jupyter, permettant au contenu en Python, R et Julia d'être transféré vers la plateforme (et, par la suite, traité dans la plateforme) (tous les trois sont des programmes de programmation). langages dans les principaux langages open source correspondants).environnements de modélisation mathématique source). Ainsi, les développeurs de contenu AI/ML ont la possibilité d'effectuer un « déploiement continu » de ce contenu dans la plateforme, en travaillant dans leur éditeur Jupyter familier, avec des bibliothèques familières disponibles en Python, R, Julia, et en effectuant un débogage de base (si nécessaire). en dehors de la plateforme.

Passons au mécanisme de macro CI dans InterSystems IRIS. Le diagramme montre le processus macro du « robotiseur en temps réel » (un complexe de structures de données, de processus métier et de fragments de code orchestrés par eux dans des langages mathématiques et ObjectScript - le langage de développement natif d'InterSystems IRIS). La tâche de ce macro-processus est de maintenir les files d'attente de données nécessaires au fonctionnement des mécanismes AI/ML (sur la base des flux de données transmis à la plateforme en temps réel), de prendre des décisions sur la séquence d'application et « l'assortiment » d'IA/ML. Les mécanismes de ML (ce sont aussi des « algorithmes mathématiques », des « modèles », etc. – peuvent être appelés différemment selon les spécificités de la mise en œuvre et les préférences terminologiques), maintiennent à jour les structures de données pour analyser les résultats des travaux d'IA/ Mécanismes ML (cubes, tableaux, tableaux de données multidimensionnels, etc.) etc. – pour les rapports, tableaux de bord, etc.).

Un aspect important de l'implémentation du CI dans InterSystems IRIS : une intégration bidirectionnelle a été implémentée entre la plateforme et les environnements de modélisation mathématique, permettant d'exécuter le contenu hébergé dans la plateforme en Python, R et Julia dans leurs environnements respectifs et de recevoir en retour les résultats d'exécution. Cette intégration est implémentée à la fois en « mode terminal » (c'est-à-dire que le contenu AI/ML est formulé sous forme de code ObjectScript qui effectue des appels à l'environnement) et en « mode processus métier » (c'est-à-dire que le contenu AI/ML est formulé comme un processus métier. en utilisant un éditeur graphique, ou parfois en utilisant Jupyter, ou en utilisant un IDE - IRIS Studio, Eclipse, Visual Studio Code). La disponibilité des processus métier pour l'édition dans Jupyter se reflète dans la connexion entre IRIS au niveau CI et Jupyter au niveau CD. Un aperçu plus détaillé de l’intégration avec les environnements de modélisation mathématique est fourni ci-dessous. A ce stade, il y a selon nous toutes les raisons de s’assurer que la plateforme dispose de tous les outils nécessaires pour mettre en œuvre « l’intégration continue » des développements IA/ML (issus du « déploiement continu ») dans des solutions IA/ML temps réel.

Et le principal mécanisme macro : CT. Sans cela, il n'y aura pas de plateforme AI/ML (même si le « temps réel » sera implémenté via CD/CI). L’essence de CT réside dans le travail de la plateforme avec des « artefacts » d’apprentissage automatique et d’intelligence artificielle directement dans les sessions de travail d’environnements de modélisation mathématique : modèles, tables de distribution, vecteurs matriciels, couches de réseaux neuronaux, etc. Ce « travail », dans la plupart des cas, consiste à créer les artefacts mentionnés dans des environnements (dans le cas de modèles, par exemple, la « création » consiste à définir la spécification du modèle et à sélectionner ultérieurement les valeurs de ses paramètres - ce qu'on appelle « l'entraînement » du modèle), leur application (pour les modèles : calcul à l'aide de leurs valeurs « modèles » de variables cibles - prévisions, appartenance à une catégorie, probabilité d'un événement, etc.) et amélioration de déjà créé et appliqué des artefacts (par exemple, redéfinir un ensemble de variables d'entrée de modèle en fonction des résultats de l'application - afin d'améliorer la précision des prévisions, en option). Le point clé pour comprendre le rôle de CT est son « abstraction » des réalités du CD et du CI : CT mettra en œuvre tous les artefacts, en se concentrant sur les spécificités informatiques et mathématiques de la solution AI/ML dans le cadre des capacités fournies par des environnements spécifiques. La responsabilité de « fournir des intrants » et de « fournir des résultats » incombera à CD et CI.

Un aspect important de l'implémentation de CT spécifiquement dans InterSystems IRIS : grâce à l'intégration avec les environnements de modélisation mathématique déjà mentionnés ci-dessus, la plateforme a la capacité d'extraire ces mêmes artefacts des sessions de travail exécutées sous son contrôle dans des environnements mathématiques et (surtout) de les transformer. les transformer en objets de données de plateforme. Par exemple, une table de distribution qui vient d'être créée dans une session Python de travail peut être (sans arrêter la session Python) transférée vers la plateforme sous la forme, par exemple, d'un global (un tableau de données multidimensionnel InterSystems IRIS) - et utilisée pour les calculs dans un autre mécanisme AI/ML (implémenté dans le langage d'un autre environnement - par exemple, dans R) - ou une table virtuelle. Autre exemple : parallèlement au « mode normal » de fonctionnement du modèle (dans la session de travail Python), un « auto-ML » est effectué sur ses données d'entrée : sélection automatique des variables d'entrée et des valeurs de paramètres optimales. Et parallèlement à la formation « régulière », un modèle productif en temps réel reçoit également une « proposition d'optimisation » de sa spécification - dans laquelle l'ensemble des variables d'entrée change, les valeurs des paramètres changent (non plus à la suite d'une formation en Python, mais grâce à un entraînement avec une version « alternative » d'elle-même, telle que la pile H2O), permettant à la solution globale d'IA/ML de faire face de manière autonome aux changements inattendus dans la nature des données d'entrée et aux phénomènes modélisés .

Faisons connaissance plus en détail avec la fonctionnalité de la plateforme AI/ML d'InterSystems IRIS, en utilisant l'exemple d'un prototype réel.

Dans le diagramme ci-dessous, sur le côté gauche de la diapositive, il y a une partie du processus métier qui implémente l'exécution de scripts en Python et R. Dans la partie centrale, il y a des journaux visuels de l'exécution de certains de ces scripts, respectivement, en Python et R. Immédiatement derrière eux se trouvent des exemples de contenu dans l'un ou l'autre langage, transférés pour exécution dans les environnements appropriés. À l'extrémité droite se trouvent des visualisations basées sur les résultats de l'exécution du script. Les visualisations en haut ont été réalisées sur IRIS Analytics (les données ont été extraites de Python dans la plateforme de données InterSystems IRIS et affichées sur un tableau de bord utilisant la plateforme), en bas ont été réalisées directement dans la session de travail R et sorties de là vers des fichiers graphiques . Un aspect important : le fragment présenté dans le prototype est chargé d'entraîner le modèle (classification des états des équipements) sur les données reçues en temps réel du processus du simulateur d'équipement, sur commande du processus de surveillance de la qualité de classification observé lors de l'application du modèle. La mise en œuvre d’une solution IA/ML sous la forme d’un ensemble de processus interactifs (« agents ») sera discutée plus en détail.

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 12 Interaction avec Python, R et Julia dans InterSystems IRIS

Les processus de la plateforme (ce sont aussi des « processus métiers », des « processus analytiques », des « pipelines », etc. - selon le contexte), sont tout d'abord édités dans l'éditeur graphique de processus métiers dans la plateforme elle-même, et de manière telle manière que son schéma fonctionnel et le mécanisme AI/ML correspondant (code de programme) soient créés simultanément. Lorsque nous disons « un mécanisme AI/ML est obtenu », nous entendons d'abord l'hybridité (au sein d'un même processus) : le contenu dans les langages des environnements de modélisation mathématique est adjacent au contenu dans SQL (y compris les extensions de ML intégré), en InterSystems ObjectScript, avec d'autres langages pris en charge. De plus, le processus de la plateforme offre de très larges possibilités de « rendu » sous forme de fragments imbriqués hiérarchiquement (comme le montre l'exemple du diagramme ci-dessous), ce qui vous permet d'organiser efficacement même des contenus très complexes sans jamais « tomber ». du format graphique (vers des formats « non graphiques »). » méthodes/classes/procédures, etc.). Autrement dit, si nécessaire (et cela est prévu dans la plupart des projets), la solution AI/ML dans son intégralité peut être implémentée dans un format graphique auto-documenté. Veuillez noter que dans la partie centrale du diagramme ci-dessous, qui représente un « niveau d'imbrication » plus élevé, il est clair qu'en plus du travail réel de formation du modèle (à l'aide de Python et R), une analyse de ce que l'on appelle La courbe ROC du modèle entraîné est ajoutée, permettant d'évaluer visuellement (et informatiquement également) la qualité de la formation - et cette analyse est implémentée dans le langage Julia (exécutée, en conséquence, dans l'environnement mathématique Julia).

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 13 Environnement visuel pour la composition des solutions AI/ML dans InterSystems IRIS

Comme mentionné précédemment, le développement initial et (dans certains cas) l'adaptation des mécanismes d'IA/ML déjà implémentés dans la plateforme seront/pourront être effectués en dehors de la plateforme dans l'éditeur Jupyter. Dans le diagramme ci-dessous, nous voyons un exemple d'adaptation d'un processus de plate-forme existant (le même que dans le diagramme ci-dessus) - voici à quoi ressemble le fragment responsable de la formation du modèle dans Jupyter. Le contenu Python est disponible pour l'édition, le débogage et la sortie graphique directement dans Jupyter. Des modifications (si nécessaire) peuvent être apportées avec une synchronisation instantanée dans le processus de la plateforme, y compris sa version productive. De la même manière, le nouveau contenu peut être transféré vers la plateforme (un nouveau processus de plateforme est automatiquement généré).

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 14 Utilisation de Jupyter Notebook pour modifier le moteur AI/ML dans la plateforme InterSystems IRIS

L'adaptation d'un processus de plate-forme peut être effectuée non seulement dans un format graphique ou portable - mais également dans le format IDE (Integrated Development Environment) « total ». Ces IDE sont IRIS Studio (studio natif IRIS), Visual Studio Code (extension InterSystems IRIS pour VSCode) et Eclipse (plugin Atelier). Dans certains cas, il est possible pour une équipe de développement d'utiliser les trois IDE simultanément. Le schéma ci-dessous montre un exemple d'édition du même processus dans IRIS studio, dans Visual Studio Code et dans Eclipse. Absolument tout le contenu est disponible pour l'édition : Python/R/Julia/SQL, ObjectScript et processus métier.

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 15 Développement du processus métier InterSystems IRIS dans divers IDE

Les outils de description et d'exécution des processus métiers InterSystems IRIS en Business Process Language (BPL) méritent une mention particulière. BPL permet d'utiliser des « composants d'intégration prêts à l'emploi » (activités) dans les processus métiers - ce qui, en fait, donne toutes les raisons de dire que « l'intégration continue » est implémentée dans InterSystems IRIS. Les composants de processus métier prêts à l'emploi (activités et connexions entre eux) constituent un puissant accélérateur pour l'assemblage d'une solution IA/ML. Et pas seulement les assemblées : grâce aux activités et aux connexions entre elles au fil de développements et de mécanismes IA/ML disparates, une « couche de gestion autonome » apparaît, capable de prendre des décisions en fonction de la situation, en temps réel.

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 16 Composants de processus métier prêts à l'emploi pour l'intégration continue (CI) sur la plateforme InterSystems IRIS

Le concept de systèmes d'agents (également appelés « systèmes multi-agents ») occupe une place forte dans la robotisation, et la plateforme InterSystems IRIS le soutient de manière organique à travers la construction « produit-processus ». En plus des possibilités illimitées de « bourrer » chaque processus des fonctionnalités nécessaires à la solution globale, doter le système de processus plateforme de la propriété « d'agence » permet de créer des solutions efficaces pour des phénomènes simulés extrêmement instables (comportement des réseaux sociaux/ biosystèmes, processus technologiques partiellement observables, etc.).

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 16 Fonctionnement d'une solution AI/ML en tant que système de processus métier basé sur des agents dans InterSystems IRIS

Nous poursuivons notre examen d'InterSystems IRIS avec une histoire sur l'utilisation appliquée de la plateforme pour résoudre des classes entières de problèmes en temps réel (une introduction assez détaillée de certaines des meilleures pratiques de la plateforme AI/ML sur InterSystems IRIS peut être trouvée dans un de notre précédent webinaires).

Dans la foulée du diagramme précédent, vous trouverez ci-dessous un diagramme plus détaillé du système d’agent. Le diagramme montre le même prototype, les quatre processus d'agent sont visibles, les relations entre eux sont schématiquement dessinées : GENERATOR - traite la création de données par les capteurs de l'équipement, BUFFER - gère les files d'attente de données, ANALYZER - effectue lui-même l'apprentissage automatique, MONITOR - surveille le qualité de l'apprentissage automatique et soumet un signal sur la nécessité de recycler le modèle.

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 17 Composition d'une solution AI/ML sous la forme d'un système de processus métier basé sur des agents dans InterSystems IRIS

Le schéma ci-dessous illustre le fonctionnement autonome d'un autre prototype robotique (reconnaissance de la coloration émotionnelle des textes) depuis quelques temps. En haut se trouve l'évolution de l'indicateur de qualité de la formation du modèle (la qualité augmente), en partie inférieure se trouve la dynamique de l'indicateur de qualité de l'application du modèle et les faits de formation répétée (bandes rouges). Comme vous pouvez le constater, la solution a appris d'elle-même de manière efficace et autonome, et fonctionne à un niveau de qualité donné (les valeurs du score de qualité ne descendent pas en dessous de 80 %).

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 18 (Auto-)formation continue (CT) sur la plateforme InterSystems IRIS

Nous avons également évoqué « auto-ML » plus tôt, mais le schéma ci-dessous montre en détail l'utilisation de cette fonctionnalité à l'aide de l'exemple d'un autre prototype. Le diagramme graphique d'un fragment d'un processus métier montre l'activité qui déclenche la modélisation dans la pile H2O, montre les résultats de cette modélisation (la nette dominance du modèle résultant sur les modèles « fabriqués par l'homme », selon le diagramme comparatif de Courbes ROC, ainsi que l'identification automatisée des « variables les plus influentes » disponibles dans l'ensemble de données d'origine). Un point important ici est l'économie de temps et de ressources expertes obtenue grâce à « l'auto-ML » : ce que notre processus de plateforme fait en une demi-minute (trouver et former le modèle optimal) peut prendre d'une semaine à un mois à un expert.

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 19 Intégration de « auto-ML » dans une solution AI/ML sur la plateforme InterSystems IRIS

Le schéma ci-dessous passe un peu à côté de l'essentiel, mais c'est une bonne façon de terminer l'histoire des classes de problèmes temps réel en cours de résolution : nous vous rappelons qu'avec toutes les capacités de la plateforme InterSystems IRIS, la formation des modèles sous son contrôle est pas obligatoire. La plateforme peut recevoir de l'extérieur la spécification dite PMML du modèle, entraînée dans un outil hors du contrôle de la plateforme - et appliquer ce modèle en temps réel dès son importation Spécifications PMML. Il est important de prendre en compte que tous les artefacts AI/ML ne peuvent pas être réduits à une spécification PMML, même si la plupart des artefacts les plus courants le permettent. Ainsi, la plateforme InterSystems IRIS est « en boucle ouverte » et ne signifie pas « esclavage de plateforme » pour les utilisateurs.

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 20 Intégration de « auto-ML » dans une solution AI/ML sur la plateforme InterSystems IRIS

Énumérons les avantages supplémentaires de la plateforme InterSystems IRIS (pour plus de clarté, en ce qui concerne le contrôle des processus), qui sont d'une grande importance dans l'automatisation de l'intelligence artificielle et de l'apprentissage automatique en temps réel :

  • Développer des outils d'intégration avec toutes les sources de données et consommateurs (système de contrôle de processus/SCADA, équipement, MRO, ERP, etc.)
  • Intégré SGBD multimodèle pour le traitement transactionnel et analytique haute performance (Hybrid Transaction/Analytical Processing, HTAP) de tout volume de données de processus technologiques
  • Outils de développement pour le déploiement continu de moteurs AI/ML pour des solutions temps réel basées sur Python, R, Julia
  • Processus métier adaptatifs pour l'intégration continue et l'(auto-)apprentissage des moteurs de solutions IA/ML en temps réel
  • Outils de Business Intelligence intégrés pour visualiser les données de processus et les résultats d'une solution AI/ML
  • Gestion des API pour transmettre les résultats de la solution AI/ML aux systèmes de contrôle de processus/SCADA, aux systèmes d'information et d'analyse, à l'envoi d'alertes, etc.

Les solutions IA/ML sur la plateforme InterSystems IRIS s'intègrent facilement dans l'infrastructure informatique existante. La plateforme InterSystems IRIS garantit une haute fiabilité des solutions IA/ML en prenant en charge des configurations tolérantes aux pannes et aux catastrophes et un déploiement flexible dans des environnements virtuels, sur des serveurs physiques, dans des cloud privés et publics et des conteneurs Docker.

Ainsi, InterSystems IRIS est une plateforme informatique universelle d’IA/ML en temps réel. L'universalité de notre plateforme est confirmée en pratique par l'absence de restrictions de fait sur la complexité des calculs mis en œuvre, la capacité d'InterSystems IRIS à combiner (en temps réel) le traitement de scénarios issus d'industries très diverses, et l'exceptionnelle adaptabilité de toutes les fonctions et mécanismes de la plateforme aux besoins spécifiques des utilisateurs.

InterSystems IRIS - une plateforme universelle d'IA/ML en temps réel
Figure 21 InterSystems IRIS - une plateforme informatique universelle d'IA/ML en temps réel

Pour une interaction plus substantielle avec nos lecteurs intéressés par le matériel présenté ici, nous vous recommandons de ne pas vous limiter à le lire et de poursuivre le dialogue « en direct ». Nous serons ravis de vous accompagner dans la formulation de scénarios IA/ML en temps réel en lien avec les spécificités de votre entreprise, de réaliser du prototypage commun sur la plateforme InterSystems IRIS, de formuler et de mettre en pratique une feuille de route pour l'introduction de l'intelligence artificielle et du machine learning. dans vos processus de production et de gestion. Notre équipe d'experts en IA/ML E-mail de contact – [email protected].

Source: habr.com

Ajouter un commentaire