Appels de calcul AI / ML en temps réel
Commençons par des exemples tirés de l'expérience de la pratique Data Science de la société InterSystems:
- Le portail acheteur «chargé» est connecté à un système de recommandation en ligne. On assiste à une restructuration des actions promotionnelles à l'échelle du réseau de distribution (par exemple, au lieu d'une ligne «plate» d'actions promotionnelles, la matrice «segment-tactique» sera désormais utilisée). Qu'arrive-t-il aux moteurs de recommandation? Qu'advient-il de la soumission et de la mise à jour des données au mécanisme de recommandation (la quantité de données d'entrée a été multipliée par 25 000)? Que se passe-t-il avec le développement des recommandations (nécessité de réduire de mille fois le seuil de filtrage des règles de recommandation en raison d'une multiplication par mille de leur nombre et de leur «assortiment»)?
- Il existe un système pour surveiller la probabilité de développer des défauts dans les nœuds d'équipement. Un système de contrôle de processus a été connecté au système de surveillance, transmettant des milliers de paramètres du processus technologique 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 de probabilité à chaque 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 les lectures de capteurs récemment ajoutées 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 de nouveaux capteurs dans l'analyse)?
- Un complexe de mécanismes AI / ML (recommandation, suivi, pronostic), utilisant les résultats des travaux de chacun, a été créé. Combien d'heures de travail sont nécessaires chaque mois pour adapter le fonctionnement de ce complexe aux changements des données d'entrée? Quel est le «ralentissement» général avec l'appui du complexe dans la prise de décisions de gestion (la fréquence d'apparition de nouvelles informations de support en ce qui concerne la fréquence d'apparition de nouvelles données d'entrée)?
En résumant ces exemples et bien d'autres, nous sommes arrivés à la formulation des défis qui se posent dans la transition vers 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 (à une situation changeante) des développements IA / ML dans notre entreprise?
- Dans quelle mesure les solutions AI / ML que nous utilisons prennent en charge la gestion d'entreprise en temps réel?
- Les solutions AI / ML que nous utilisons sont-elles capables de s'adapter de manière indépendante (sans développeurs) aux changements des données et des pratiques de gestion d'entreprise?
Notre article est un aperçu détaillé 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 flux de données intensifs. Nous nous tournerons vers les études de marché, des exemples pratiques de solutions AI / ML et les aspects conceptuels de ce que nous appelons une plate-forme AI / ML en temps réel dans cet article.
Ce que nous savons des enquêtes: les applications en temps réel
Les résultats d' une enquête menée en 2019 auprès d' environ 800 professionnels de l'informatique par Lightbend parlent d'eux-mêmes:
Figure 1 Principaux consommateurs de données en temps réel
Pour citer des extraits importants de ce rapport d'enquête dans notre traduction:
«… Les tendances de popularité des outils d'intégration de flux de données et, en même temps, la prise en charge de l'informatique en conteneurs donnent une réponse synergique à la demande du marché pour une proposition plus rapide, plus rationnelle et dynamique de solutions efficaces. Les flux de données permettent de transférer les informations plus rapidement que les données par paquets traditionnelles. À cela s'ajoute la possibilité d'appliquer rapidement des techniques de calcul telles que les recommandations basées sur l'IA / ML, créant un avantage concurrentiel grâce à une satisfaction client accrue. La course à l'agilité affecte également 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 répondants se trouvaient principalement dans les pays occidentaux (41% en Europe et 37% en Amérique du Nord) et étaient presque également répartis entre les petites, moyennes et grandes entreprises. ...
... L'intelligence artificielle n'est pas un battage médiatique. Cinquante-huit pour cent de ceux qui utilisent déjà le traitement des flux de données dans des applications AI / ML productives confirment que leur utilisation en AI / ML connaîtra la plus forte augmentation l'année prochaine (par rapport à d'autres applications).
- La majorité des personnes interrogées estiment que l'utilisation des flux de données par l'IA / ML enregistrera les gains les plus importants l'année prochaine.
- Les applications en IA / ML se développeront non seulement grâce à des types de scénarios relativement nouveaux, mais également à des 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 affirment que la création de scripts sur ces données connaîtra une augmentation significative dans un proche avenir. ... "
De cette enquête plutôt intéressante, il est clair que la perception des scénarios d'apprentissage automatique et d'intelligence artificielle en tant que leaders dans la consommation de flux de données est déjà «en marche». Mais une observation non moins importante est la perception de l'IA / ML en temps réel à travers l'optique de DevOps: ici, nous pouvons déjà commencer à parler de la transformation de la culture toujours dominante de «l'IA / ML jetable avec un jeu de données entièrement accessible».
Concept de plateforme AI / ML en temps réel
L'une des applications typiques d'IA / ML en temps réel est le contrôle de 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 AI / 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 fonctionnalités:
- : ( , )
- , , , , (, )
- , « » , ,
Ces caractéristiques nous obligent, en plus de la réception et du traitement de base en temps réel de l'intense «entrée large bande» du processus, à effectuer (en parallèle) l'application, la formation et le contrôle de qualité des résultats du travail des modèles AI / ML - également en temps réel. Le «cadre» que nos modèles «voient» dans la fenêtre glissante de la pertinence est en constante évolution - et avec lui la qualité des résultats du travail des modèles AI / 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étériore (par exemple: la valeur de l'erreur de classification «alarme-normale» a dépassé les limites que nous avons définies), une formation supplémentaire des modèles devrait être automatiquement lancée sur un «cadre» plus pertinent - et le choix du moment pour commencer une formation supplémentaire des modèles devrait être la durée de la formation proprement dite,et la dynamique de détérioration de la qualité de la version actuelle des modèles (puisque les versions actuelles des modèles continuent à être appliqué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 fonctionnalités de plate-forme clés pour activer les solutions AI / ML pour le contrôle des processus en temps réel. Ces capacités peuvent être divisées en trois groupes principaux:
- Déploiement / Livraison en continu (CD) de mécanismes AI / ML existants nouveaux ou adaptés dans une solution productive fonctionnant en temps réel sur la plate-forme InterSystems IRIS
- Intégration continue (CI) dans une solution productive unique de flux de données entrants d'un processus technologique, files d'attente de données pour application / formation / contrôle qualité des mécanismes AI / ML et échanges d'actions de données / code / contrôle avec des environnements de modélisation mathématique, qui sont orchestrés dans plateforme temps réel InterSystems IRIS
- (-) (Continuous Training, CT) AI/ML-, , (« »), InterSystems IRIS
La classification des capacités de la plate-forme par rapport à l'apprentissage automatique et à l'intelligence artificielle dans de tels groupes n'est pas accidentelle. Citons la publication méthodologique de Google, qui fournit une base conceptuelle à cette classification, dans notre traduction:
«… Le concept DevOps, qui est aujourd'hui populaire, 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 le raccourcissement des cycles de développement, l'accélération du déploiement du développement et la planification flexible des versions. Pour obtenir ces avantages, DevOps implique au moins deux pratiques:
- Intégration continue (CI)
- Livraison continue (CD)
Ces pratiques s'appliquent également aux plates-formes AI / ML afin de garantir une construction fiable et efficace de solutions AI / ML productives.
Les plates-formes AI / ML diffèrent des autres systèmes d'information par les aspects suivants:
- Compétences de l'équipe: lors de la création d'une solution AI / ML, l'équipe comprend généralement des scientifiques des données ou des «universitaires» en science des données qui effectuent l'analyse des données, le développement et la validation de modèles. Ces membres de l'équipe peuvent ou non être des développeurs professionnels de code productif.
- : AI/ML- . , , , , . « / », , .
- : AI/ML- , . , .
- : AI/ML- , . AI/ML- , . , - , .
- Productif: les moteurs AI / ML peuvent manquer de performances 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 moteurs AI / ML peuvent se dégrader pour un plus large éventail de raisons que les performances des conceptions conventionnelles. Cela conduit à la nécessité de surveiller (en ligne) les performances de nos moteurs AI / ML, ainsi que d'envoyer des notifications ou d'éliminer les résultats si les indicateurs de performance ne répondent pas aux attentes.
Les plates-formes AI / ML sont similaires aux autres systèmes d'information dans la mesure où les deux nécessitent une intégration continue du code avec contrôle de version, tests unitaires, tests d'intégration, déploiement de développement continu. Cependant, dans le cas de l'IA / ML, il existe quelques différences importantes:
- CI (Continuous Integration, ) – AI/ML-.
- CD (Continuous Delivery/Deployment, ) , , AI/ML-.
- CT (Continuous Training, ) – [. : DevOps, CT , , Continuous Testing], AI/ML-, AI/ML-. …»
Nous pouvons affirmer que l'apprentissage automatique et l'intelligence artificielle fonctionnant 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 sujets, une organisation plus efficace de l'homme et ressources de la machine.
Scénario temps réel: reconnaissance de l'évolution des défauts des pompes d'alimentation
En continuant à utiliser le domaine du contrôle de processus technologique comme exemple, nous considérerons un problème spécifique (nous l'avons déjà mentionné au tout début): il est nécessaire de fournir 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 technologiques et des rapports du personnel de réparation sur les défauts détectés.
Figure 2 Formulation de la tâche de suivi de l'évolution des défauts
Une caractéristique de la plupart des tâches ainsi définies 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'occurrence épisodique et irrégulière (et de l'enregistrement) de défauts de divers types. En d'autres termes: les données du système de contrôle automatisé des processus arrivent une fois par seconde, correctes et précises, et des notes sont prises sur les défauts avec un crayon chimique avec la date dans le cahier général de la boutique (par exemple: "12.01 - fuite dans le couvercle à partir du 3ème roulement").
Ainsi, l'énoncé du problème peut être complété par la restriction importante suivante: nous n'avons qu'une seule «étiquette» d'un type spécifique de défaut (c'est-à-dire qu'un exemple d'un type spécifique de défaut est représenté par les données du système de contrôle pour une date spécifique - et nous n'avons plus d'exemples de ce type de défaut). Cette limitation nous emmène immédiatement au-delà du cadre de l'apprentissage automatique classique (apprentissage supervisé), pour lequel il devrait y avoir de nombreuses "balises".
Figure 3 Clarification de la tâche de suivi de l'évolution des défauts
Pouvons-nous en quelque sorte «multiplier» le seul «label» dont nous disposons? 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 l'utilisation de méthodes quantitatives, au niveau de la perception visuelle, en observant la dynamique des valeurs de données provenant du système de contrôle de processus, vous pouvez déjà en apprendre beaucoup:
Figure 4 Dynamique de l'état de la pompe sur fond de «marque» d'un défaut d'un type donné
Mais perception visuelle (au moins pour l'instant) - pas le générateur de "balises" le plus approprié dans notre scénario au rythme rapide. Nous évaluerons la similitude de l'état actuel de la pompe avec les défauts signalés à l'aide d'un test statistique.
Figure 5 Application d'un test statistique aux données entrantes dans le contexte d'une «étiquette» de défaut
Le test statistique détermine la probabilité que les enregistrements avec les valeurs des paramètres de processus technologiques dans le «flux-paquet» reçu du système de contrôle de processus soient similaires aux enregistrements de «l'étiquette» d'un défaut d'un certain type. La valeur de probabilité (l'indice de similitude statistique) calculée à la suite de l'application du 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 package étudié. Autrement dit, après avoir traité le package nouvellement reçu d'enregistrements d'état de la pompe avec un test statistique, nous avons la possibilité (a) d'ajouter ce package à l'ensemble d'entraînement pour la formation du modèle AI / ML et (b) de contrôler la qualité de la version actuelle du modèle lorsqu'elle est appliquée. à ce package.
Figure 6 Application d'un modèle d'apprentissage automatique aux données entrantes dans le contexte d'une "balise" de défaut
dans l'un de nos précédents webinairesnous montrons et expliquons comment la plate-forme InterSystems IRIS vous permet de mettre en œuvre n'importe quel mécanisme AI / ML sous la forme d'exécuter en continu des processus métier qui contrôlent la fiabilité des résultats de la 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 - implémentation 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 l'échantillon pour les modèles de formation. L'échantillon d'apprentissage contient des enregistrements sur lesquels un "consensus de détection" se produit après avoir appliqué à la fois le test statistique et la version actuelle du modèle - c'est-à-dire le test statistique (après avoir transformé l'indice de similarité en 0 ou 1),et le modèle a produit le résultat 1 sur ces enregistrements. Avec un nouvel apprentissage du modèle, lors de sa validation (le modèle nouvellement formé est appliqué à son propre échantillon d'apprentissage, avec l'application préliminaire du test statistique à celui-ci), les enregistrements qui «ne tiennent pas» après le traitement du résultat du test statistique 1 ( en raison de la présence constante dans l'ensemble d'apprentissage des enregistrements à partir de «l'étiquette» initiale du défaut), sont supprimés de l'ensemble d'apprentissage, et la nouvelle version du modèle apprend à partir de «l'étiquette» du défaut plus les enregistrements «conservés» du flux.Le résultat 1 «non conservé» après avoir été traité par le test statistique (en raison de la présence constante dans l'ensemble d'apprentissage des enregistrements à partir de la «marque» initiale du défaut) est supprimé de l'ensemble d'apprentissage, et la nouvelle version du modèle apprend à partir de la «marque» du défaut plus sur les enregistrements «conservés» de couler.Le résultat 1 «non conservé» après avoir été traité par le test statistique (en raison de la présence constante dans l'ensemble d'apprentissage des enregistrements de la «marque» initiale du défaut) est supprimé de l'ensemble d'apprentissage, et la nouvelle version du modèle apprend de la «marque» du défaut plus sur les enregistrements «conservés» de couler.
Figure 7 Robotisation de calcul AI / ML dans InterSystems IRIS
S'il existe un besoin d'une sorte de «second avis» sur la qualité de 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 jeu de données de contrôle avec utilisant des services cloud (ex: Microsoft Azure, Amazon Web Services, Google Cloud Platform, etc.):
Figure 8 Deuxième avis de Microsoft Azure orchestré par InterSystems IRIS
Le prototype de notre script dans InterSystems IRIS est réalisé sous la forme d'un système basé sur des agents de processus analytiques qui interagissent avec l'objet équipement (pompe), des environnements de modélisation mathématique (Python, R et Julia), et fournissent un auto-apprentissage de tous les mécanismes AI / ML impliqués - sur des flux de données en temps réel ...
Figure 9 Principales fonctionnalités d'une solution AI / ML en temps réel dans InterSystems IRIS Le
résultat pratique de notre prototype:
- Motif de défaut reconnu par le modèle (12 janvier):
- Un défaut en développement reconnu par le modèle qui n'a pas été inclus dans l'échantillon (le 11 septembre, le défaut lui-même n'a été constaté par l'équipe de réparation que deux jours plus tard - le 13 septembre):
La simulation sur des données réelles contenant plusieurs épisodes du même défaut a montré que notre solution, implémentée sur la plateforme InterSystems IRIS, nous permet de détecter l'évolution de défauts de ce type plusieurs jours avant leur découverte par l'équipe de réparation.
InterSystems IRIS - Plateforme universelle de calcul AI / ML en temps réel
La plate-forme 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 de traiter simultanément des données transactionnelles et analytiques; maintenir des 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 des données structurées et non structurées. InterSystems IRIS fournit également des mécanismes pour l'utilisation d'outils analytiques externes, vous permet de combiner de manière flexible l'hébergement dans le cloud et les serveurs sur site.
Les applications construites sur la plate-forme InterSystems IRIS ont été déployées dans divers secteurs, aidant les entreprises à générer une valeur économique significative d'un point de vue stratégique et opérationnel, augmentant la prise de conscience de la prise de décision et comblant le fossé entre l'événement, l'analyse et l'action.
Figure 10 Architecture IRIS d'InterSystems dans un contexte AI / ML 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 le flux d'informations entre les éléments de travail de la plate-forme. L'imagerie commence avec le macromécanisme CD et se poursuit avec les macromécanismes CI et CT.
Figure 11 Schéma des flux d'informations entre les éléments AI / ML de la plate-forme InterSystems IRIS
L'essence du mécanisme de CD dans InterSystems IRIS: les utilisateurs de la plateforme (développeurs de solutions AI / ML) adaptent les développements existants et / ou créent de nouveaux développements AI / ML à l'aide d'un éditeur spécialisé de code de programme de mécanismes AI / ML: Jupyter (nom complet: Jupyter Notebook; aussi, par souci de concision, les documents créés dans cet éditeur sont parfois appelés). Dans Jupyter, un développeur a la capacité d'écrire, de déboguer et de s'assurer qu'un développement AI / ML spécifique fonctionne (y compris à l'aide de graphiques) avant qu'il ne soit déployé («déployé») sur InterSystems IRIS. Il est clair que le nouveau développement ainsi créé ne recevra que le débogage de base (puisque, en particulier, Jupyter ne fonctionne pas avec des flux de données en temps réel) - c'est à l'ordre du jour,après tout, le principal résultat du développement dans Jupyter est la confirmation des performances fondamentales d'un mécanisme AI / ML séparé ("montre le résultat attendu sur un échantillon de données"). De même, un mécanisme déjà placé dans la plate-forme (voir les macro-mécanismes suivants) avant le débogage dans Jupyter peut nécessiter une «restauration» vers une vue «pré-plate-forme» (lecture de données à partir de fichiers, travail avec des données via xDBC au lieu de tables, interaction directe avec les globaux - tableaux de données multidimensionnels InterSystems IRIS - etc.).travailler avec des données via xDBC au lieu de tables, interaction directe avec les globaux - tableaux de données multidimensionnelles d'InterSystems IRIS - etc.).travailler avec des données via xDBC au lieu de tables, interaction directe avec les globaux - tableaux de données multidimensionnelles d'InterSystems IRIS - etc.).
Un aspect important de la mise en œuvre de CD dans InterSystems IRIS: une intégration bidirectionnelle est mise en œuvre entre la plate-forme et Jupyter, ce qui permet de transférer du contenu vers la plate-forme (et, à l'avenir, le traitement dans la plate-forme) contenu en Python, R et Julia (tous les trois sont des langages de programmation dans le principal open- environnements sources de la modélisation mathématique). Ainsi, les développeurs de contenu AI / ML ont la possibilité de "déployer en continu" ce contenu dans la plate-forme, en travaillant dans leur éditeur Jupyter habituel, avec les bibliothèques familières disponibles en Python, R, Julia, et en effectuant un débogage de base (si nécessaire) en dehors de la plate-forme. ...
Passons au mécanisme de macro CI dans InterSystems IRIS. Le diagramme montre le macroprocessus d'un "robot 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 les langages Mathred et ObjectScript - le langage natif du développement d'InterSystems IRIS). La tâche de ce macroprocessus: maintenir les files d'attente de données nécessaires au fonctionnement des mécanismes AI / ML (basés sur des flux de données transmis à la plateforme en temps réel), prendre des décisions sur la séquence d'application et l '«assortiment» des mécanismes AI / ML (ce sont aussi des «algorithmes mathématiques», " modèles ", etc. - peuvent être appelés différemment selon les spécificités de l'implémentation et les préférences terminologiques), tenir à jour les structures de données pour analyser les résultats des mécanismes AI / ML (cubes, tables, tableaux de données multidimensionnels, etc.).- pour les rapports, tableaux de bord, etc.).
Un aspect important de l'implémentation CI dans InterSystems IRIS: une intégration bidirectionnelle est implémentée entre la plateforme et les environnements de modélisation mathématique, ce qui permet d'exécuter du contenu placé sur la plateforme en Python, R et Julia dans leurs environnements respectifs avec le retour des résultats d'exécution. Cette intégration est mise en œuvre à la fois en «mode terminal» (c'est-à-dire que le contenu AI / ML est formulé sous forme de code ObjectScript qui appelle l'environnement mathématique) et en «mode processus métier» (c'est-à-dire que le contenu AI / ML est formulé en tant que processus métier à l'aide d'un éditeur graphique, ou parfois à l'aide de Jupyter, ou à l'aide de l'IDE - IRIS Studio, Eclipse, Visual Studio Code). La disponibilité modifiable des processus métier dans Jupyter se traduit par le lien 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 donné ci-dessous. À ce stade, à notre avis, il y a tout lieu de fixer la présence dans la plate-forme de tous les outils nécessaires pour la mise en œuvre de «l'intégration continue» des développements AI / ML (issus du «déploiement continu») dans les solutions AI / ML en temps réel.
Et le principal mécanisme macro: CT. Sans cela, la plate-forme AI / ML ne fonctionnera pas (bien que le «temps réel» soit implémenté via CD / CI). L'essence du CT est le travail de la plateforme avec les «artefacts» du machine learning et de l'intelligence artificielle directement dans les sessions de travail des environnements de modélisation mathématique: modèles, tables de distribution, vecteurs matriciels, couches de réseaux de neurones, etc. Ce "travail", dans la plupart des cas, consiste en la création des artefacts mentionnés dans les environnements (dans le cas des modèles, par exemple, la "création" consiste à spécifier la spécification du modèle et la sélection ultérieure des valeurs de ses paramètres - le soi-disant "apprentissage" du modèle), leur application (pour modèles: le calcul à l'aide de valeurs "modèle" de variables cibles - prévisions, appartenance à une catégorie, probabilité d'un événement, etc.) et l'amélioration des artefacts déjà créés et appliqués (par exemple, redéfinir l'ensemble des variables d'entrée du modèle en fonction des résultats de l'application - afin d'augmenter la précision de la prédiction, 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 implémentera tous les artefacts, en se concentrant sur les spécificités informatiques et mathématiques d'une solution AI / ML dans les capacités fournies par des environnements spécifiques. CD et CI seront responsables de «fournir des intrants» et de «produire des résultats».en se concentrant sur les spécificités informatiques et mathématiques d'une solution AI / ML dans les capacités fournies par des environnements spécifiques. CD et CI seront responsables de «fournir des intrants» et de «produire des résultats».en se concentrant sur les spécificités informatiques et mathématiques d'une solution AI / ML dans les capacités fournies par des environnements spécifiques. CD et CI seront responsables de «fournir des intrants» et de «produire des résultats».
Un aspect important de l'implémentation de CT dans InterSystems IRIS: en utilisant l'intégration déjà mentionnée avec des environnements de modélisation mathématique, la plate-forme a la capacité d'extraire les artefacts mêmes des sessions de travail exécutées sous son contrôle dans l'environnement mathématique et (surtout) de les transformer en objets de données de plate-forme. Par exemple, une table de distribution qui vient d'être créée dans une session de travail Python peut être (sans arrêter une session en Python) transférée vers la plateforme sous la forme, par exemple, d'un global (tableau de données multidimensionnel InterSystems IRIS) - et utilisée pour des calculs dans un autre AI / ML- mécanisme (déjà implémenté dans la langue d'un autre environnement - par exemple, en R) - ou une table virtuelle. Autre exemple: en parallèle du "mode normal" du modèle (dans une session de travail Python), "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 «à plein temps», 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 de la formation en Python, mais à la suite de la formation d'une «alternative «Version de lui-même, par exemple, dans la pile H2O), permettant à la solution générale AI / ML de faire face de manière autonome aux changements imprévus de la nature des données d'entrée et des phénomènes simulés.et à la suite de la formation d'une version «alternative» de celui-ci lui-même, par exemple, dans la pile H2O), permettant à la solution générale AI / ML de faire face de manière autonome aux changements imprévus de la nature des données d'entrée et des phénomènes simulés.et à la suite de la formation d'une version «alternative» de celui-ci lui-même, par exemple, dans la pile H2O), permettant à la solution générale AI / ML de faire face de manière autonome aux changements imprévus de la nature des données d'entrée et des phénomènes simulés.
Faisons connaissance plus en détail avec la fonctionnalité AI / ML de la plate-forme 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 d'exécution de certains de ces scripts, respectivement, en Python et R. Immédiatement après, des exemples de contenu sur un et un autre langage transféré pour exécution dans les environnements appropriés. À la fin à droite - visualisations basées sur les résultats de l'exécution du script. Les visualisations en haut sont réalisées sur IRIS Analytics (les données sont prises de Python vers la plateforme de données InterSystems IRIS et affichées sur le tableau de bord par les outils de la plateforme), en bas, elles sont 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 responsable de l'apprentissage du modèle (classification des états de l'équipement) sur les données reçues en temps réel du processus de simulation d'équipement,sur commande du process-monitor de la qualité de la classification, observée lors de l'application du modèle. La mise en œuvre d'une solution AI / ML sous la forme d'un ensemble de processus interactifs («agents») sera discutée ci-dessous.
Figure 12 Interaction avec Python, R et Julia dans les
processus InterSystems IRIS Platform (ce sont aussi des «processus métier», des «processus analytiques», des «pipelines», etc. - selon le contexte), tout d'abord, sont modifiables dans un éditeur graphique processus métier dans la plate-forme elle-même, et de telle manière que son schéma de principe et le mécanisme AI / ML correspondant (code de programme) soient créés. Lorsque nous disons qu '«un mécanisme AI / ML est obtenu», nous entendons initialement l'hybridité (dans un processus): le contenu des langages de modélisation mathématique est adjacent au contenu en SQL (y compris les extensions d' IntegratedML), dans InterSystems ObjectScript, avec d'autres langages pris en charge. De plus, le processus de la plate-forme offre de très nombreuses possibilités de «rendu» sous forme de fragments hiérarchiquement imbriqués (comme on peut le voir dans l'exemple du schéma ci-dessous), ce qui permet d'organiser efficacement même des contenus très complexes sans jamais «tomber» du format graphique (en «non graphique »Méthodes / classes / procédures, etc.). Autrement dit, si nécessaire (et cela est prévu dans la plupart des projets), toutes les solutions AI / ML peuvent être implémentées dans un format graphique d'auto-recommandation. Veuillez noter que dans la partie centrale du diagramme ci-dessous, qui montre un "niveau d'imbrication" plus élevé, vous pouvez voir qu'en plus du travail réel d'entraînement du modèle (en utilisant Python et R), une analyse de la soi-disant courbe ROC du modèle entraîné est ajoutée.permettant visuellement (et aussi par calcul) d'évaluer la qualité de la formation - et cette analyse est implémentée dans le langage Julia (exécutée, respectivement, dans le framework Julia).
Figure 13 Environnement visuel pour la composition de solutions AI / ML dans InterSystems IRIS
Comme mentionné précédemment, le développement initial et (dans certains cas) l'adaptation des mécanismes AI / ML déjà implémentés dans la plate-forme seront / peuvent être effectués en dehors de la plate-forme 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) - c'est à quoi ressemble le fragment de celui-ci qui est 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 plate-forme, y compris sa version de production. De même, un nouveau contenu peut être transféré sur la plateforme (un nouveau processus de plateforme est automatiquement généré).
Figure 14 Utilisation de Jupyter Notebook pour éditer le moteur AI / ML dans la
plate-forme InterSystems IRIS L' adaptation du processus de la plate-forme peut être effectuée non seulement au format graphique ou notebook - mais également au format IDE «total» (Integrated Development Environment). Ces IDE sont IRIS Studio (natif IRIS studio), 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 diagramme ci-dessous montre un exemple de modification 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 le processus métier.
Figure 15 Développement d'un processus métier InterSystems IRIS dans divers IDE
Les moyens de décrire et d'exécuter les processus métier InterSystems IRIS dans le Business Process Language (BPL) méritent une mention spéciale. BPL permet d'utiliser des «composants d'intégration prêts à l'emploi» (activités) dans les processus métier - ce qui, en fait, permet d'affirmer que «l'intégration continue» est mise en œuvre dans InterSystems IRIS. Les composants prêts à l'emploi d'un processus métier (activités et connexions entre eux) sont l'accélérateur le plus puissant pour assembler une solution AI / ML. Et pas seulement les assemblages: grâce aux activités et aux connexions entre eux, une «couche de gestion autonome» apparaît au-dessus des développements et mécanismes disparates AI / ML, capables de prendre des décisions en fonction de la situation, en temps réel.
Figure 16 Composants prêts pour l'intégration continue (CI) sur la plate-forme InterSystems IRIS
Le concept de systèmes d'agents (alias «systèmes multi-agents») occupe une position forte dans la robotisation et la plate-forme InterSystems IRIS le soutient de manière organique à travers la construction «produit-processus». En plus des possibilités illimitées de "bourrage" de chaque processus avec la fonctionnalité nécessaire à une solution générale, doter le système de processus de plateforme de la propriété d '"agence" permet de créer des solutions efficaces pour des phénomènes modélisés extrêmement instables (comportement des sociaux / biosystèmes, processus technologiques partiellement observables, etc.).
Figure 17 Fonctionnement d'une solution AI / ML sous la forme d'un système de processus métier basé sur un agent dans InterSystems IRIS
Nous continuons notre examen d'InterSystems IRIS avec une histoire sur l'utilisation appliquée de la plate-forme pour résoudre des classes entières de problèmes en temps réel (une connaissance assez détaillée de certaines des meilleures pratiques de la plate-forme AI / ML sur InterSystems IRIS se produit dans l'un de nos précédents webinaires ).
Dans la foulée du diagramme précédent, voici un diagramme plus détaillé du système d'agent. Le diagramme montre le même prototype, les quatre processus d'agent sont visibles, la relation entre eux est schématisée: GENERATOR - élabore la création de données par des capteurs d'équipement, BUFFER - gère les files d'attente de données, ANALYZER - effectue l'apprentissage automatique lui-même, MONITOR - contrôle la qualité de l'apprentissage automatique et fournit signalent la nécessité de réentraîner le modèle.
Figure 18 Composition d'une solution AI / ML sous la forme d'un système de processus métier à base d'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) pendant un certain temps. Dans la partie supérieure - l'évolution de l'indicateur de qualité d'apprentissage du modèle (la qualité augmente), dans la partie inférieure - la dynamique de l'indicateur de qualité du modèle et les faits de formation répétée (barres rouges). Comme vous pouvez le constater, la solution est autodidacte de manière efficace et autonome et fonctionne au niveau de qualité spécifié (les valeurs des indicateurs de qualité ne descendent pas en dessous de 80%).
Figure 19 Apprentissage continu (auto) (CT) sur la plate-forme IRIS InterSystems
Nous avons également mentionné "auto-ML" plus tôt, mais le diagramme ci-dessous montre l'utilisation de cette fonctionnalité en détail en utilisant un autre prototype comme exemple. Le schéma graphique d'un fragment d'un processus métier montre l'activité qui lance la modélisation dans la pile H2O, montre les résultats de cette modélisation (la dominance évidente du modèle résultant sur les modèles "artificiels", selon le graphique comparatif des courbes ROC, ainsi que l'identification automatisée des "variables les plus influentes" disponibles dans jeu de données d'origine). Un point important ici est le gain de temps et de ressources d'experts, qui est réalisé 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 un expert d'une semaine à un mois.
Figure 20 Intégration de "auto-ML" dans une solution AI / ML sur la
plateforme InterSystems IRIS . IRIS, la formation des modèles sous son contrôle est facultative. La plate-forme peut obtenir de l'extérieur la spécification de modèle dite PMML, entraînée dans un outil hors du contrôle de la plate-forme - et appliquer ce modèle en temps réel à partir du moment où sa spécification PMML est importée .... Il est important de garder à l'esprit que tous les artefacts AI / ML ne peuvent pas être réduits à la spécification PMML, même si la plupart des artefacts les plus courants le permettent. Ainsi, la plate-forme InterSystems IRIS est «en boucle ouverte» et ne signifie pas «esclavage de plate-forme» pour les utilisateurs.
Figure 21 Application du modèle selon la spécification PMML dans la plate-forme InterSystems IRIS Listons les
avantages de plate-forme supplémentaires d'InterSystems IRIS (pour plus de clarté, par rapport au contrôle de processus) qui sont d'une grande importance dans l'automatisation de l'intelligence artificielle et l'apprentissage automatique en temps réel:
- Outils d'intégration avancés avec toutes les sources de données et tous les consommateurs (APCS / SCADA, équipement, MRO, ERP, etc.)
- - (Hybrid Transaction/Analytical Processing, HTAP)
- AI/ML- Python, R, Julia
- - (-) AI/ML-
- Business Intelligence AI/ML-
- API AI/ML- /SCADA, - , . .
Les solutions AI / ML basées sur la plate-forme InterSystems IRIS s'intègrent facilement dans l'infrastructure informatique existante. La plate-forme InterSystems IRIS offre une fiabilité élevée des solutions AI / 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 clouds privés et publics et des conteneurs Docker.
Ainsi, InterSystems IRIS est une plate-forme informatique polyvalente en temps réel AI / ML. La polyvalence de notre plateforme est confirmée dans la pratique par l'absence de restrictions de facto sur la complexité des calculs mis en œuvre, la capacité d'InterSystems IRIS à combiner (en temps réel) le traitement de scénarios d'une grande variété d'industries, l'adaptabilité exceptionnelle de toutes les fonctions et mécanismes de la plateforme aux besoins spécifiques des utilisateurs.
Figure 22 InterSystems IRIS - une plate-forme de calcul AI / ML en temps réel universelle
Pour une interaction plus substantielle avec ceux de nos lecteurs intéressés par le matériel présenté ici, nous vous recommandons d'aller au-delà de la lecture et de poursuivre le dialogue "en direct". Nous sommes prêts à vous accompagner dans la formulation de scénarios AI / ML en temps réel en relation avec les spécificités de votre entreprise, nous réaliserons un prototypage conjoint sur la plateforme InterSystems IRIS, nous formerons et mettrons en pratique une feuille de route pour l'introduction de l'intelligence artificielle et de l'apprentissage automatique dans vos processus de production et de gestion. L'adresse e-mail de contact de notre groupe d'experts en IA / ML est MLToolkit@intersystems.com .