InterSystems IRIS ist eine vielseitige Echtzeit-AI / ML-Plattform

Autor: Sergey Lukyanchikov, InterSystems Consultant Engineer



Echtzeit-AI / ML-Computeranrufe



Beginnen wir mit Beispielen aus der Erfahrung der Data Science-Praxis des Unternehmens InterSystems:



  • Das „geladene“ Käuferportal ist mit einem Online-Empfehlungssystem verbunden. Es gibt eine Umstrukturierung von Werbemaßnahmen auf der Ebene des Einzelhandelsnetzwerks (anstelle einer „flachen“ Reihe von Werbemaßnahmen wird jetzt die Matrix „Segmenttaktik“ verwendet). Was passiert mit Empfehlungs-Engines? Was passiert mit der Übermittlung und Aktualisierung von Daten an den Empfehlungsmechanismus (die Menge der Eingabedaten hat sich um das 25.000-fache erhöht)? Was passiert mit der Entwicklung von Empfehlungen (die Notwendigkeit, die Filterschwelle von Empfehlungsregeln aufgrund einer tausendfachen Erhöhung ihrer Anzahl und ihres "Sortiments" um das Tausendfache zu senken)?
  • Es gibt ein System zur Überwachung der Wahrscheinlichkeit, dass Fehler in Geräteknoten auftreten. An das Überwachungssystem wurde ein Prozessleitsystem angeschlossen, das jede Sekunde Tausende von Parametern des technologischen Prozesses übertrug. Was passiert mit dem Überwachungssystem, das früher an „manuellen Proben“ gearbeitet hat (kann es jede zweite Wahrscheinlichkeitsüberwachung durchführen)? Was passiert, wenn in den Eingabedaten ein neuer Block mit mehreren hundert Spalten mit den Messwerten der kürzlich in das Prozessleitsystem eingeführten Sensoren angezeigt wird (ist es erforderlich und wie lange muss das Überwachungssystem angehalten werden, um Daten von neuen Sensoren in die Analyse einzubeziehen)?
  • Ein Komplex von AI / ML-Mechanismen (Empfehlung, Überwachung, Prognose) wurde unter Verwendung der Ergebnisse der jeweils anderen Arbeit erstellt. Wie viele Arbeitsstunden sind monatlich erforderlich, um den Betrieb dieses Komplexes an Änderungen der Eingabedaten anzupassen? Was ist die allgemeine „Verlangsamung“ mit der Unterstützung des Komplexes für Managemententscheidungen (Häufigkeit des Auftretens neuer unterstützender Informationen in Bezug auf die Häufigkeit des Auftretens neuer Eingabedaten)?


Wenn wir diese und viele andere Beispiele zusammenfassen, sind wir zu der Formulierung der Herausforderungen gekommen, die sich beim Übergang zum Einsatz von Mechanismen des maschinellen Lernens und der künstlichen Intelligenz in Echtzeit ergeben:



  • Sind wir zufrieden mit der Schnelligkeit der Erstellung und Anpassung (an eine sich ändernde Situation) von AI / ML-Entwicklungen in unserem Unternehmen?
  • Inwieweit unterstützen die von uns verwendeten AI / ML-Lösungen die Geschäftsführung in Echtzeit?
  • Können sich die von uns verwendeten AI / ML-Lösungen unabhängig (ohne Entwickler) an Änderungen der Daten und der betriebswirtschaftlichen Praxis anpassen?


Unser Artikel bietet einen detaillierten Überblick über die Funktionen der InterSystems IRIS-Plattform in Bezug auf die universelle Unterstützung für den Einsatz von AI / ML-Mechanismen, die Montage (Integration) von AI / ML-Lösungen und das Training (Testen) von AI / ML-Lösungen in intensiven Datenströmen. In diesem Artikel wenden wir uns der Marktforschung, praktischen Beispielen für AI / ML-Lösungen und konzeptionellen Aspekten einer Echtzeit-AI / ML-Plattform zu.



Was wir aus Umfragen wissen: Echtzeitanwendungen



Die Ergebnisse einer Umfrage von Lightbend aus dem Jahr 2019 unter rund 800 IT-Fachleuten sprechen für sich:





Abbildung 1 Führende Verbraucher von Echtzeitdaten



Um wichtige Ausschnitte aus diesem Umfragebericht in unserer Übersetzung zu zitieren:



„… Die Trends in der Beliebtheit von Tools zur Integration von Datenflüssen und gleichzeitig die Unterstützung für das Rechnen in Containern bieten eine synergistische Antwort auf die Marktnachfrage nach einem schnelleren, rationaleren und dynamischeren Vorschlag effektiver Lösungen. Mit Datenströmen können Informationen schneller übertragen werden als mit herkömmlichen Paketdaten. Hinzu kommt die Möglichkeit, Computertechniken wie AI / ML-basierte Empfehlungen schnell anzuwenden und durch eine höhere Kundenzufriedenheit einen Wettbewerbsvorteil zu erzielen. Der Wettlauf um die Agilität wirkt sich auch auf alle Rollen im DevOps-Paradigma aus und macht die Anwendungsentwicklung und -bereitstellung effizienter. ... Achthundertvier IT-Experten lieferten Informationen zur Verwendung von Datenströmen in ihren Organisationen.Die Befragten befanden sich überwiegend in westlichen Ländern (41% in Europa und 37% in Nordamerika) und waren nahezu gleichmäßig auf kleine, mittlere und große Unternehmen verteilt. ...



... Künstliche Intelligenz ist kein Hype. Achtundfünfzig Prozent derjenigen, die bereits Datenflussverarbeitung in produktiven AI / ML-Anwendungen verwenden, bestätigen, dass ihre Verwendung in AI / ML im nächsten Jahr den größten Anstieg verzeichnen wird (im Vergleich zu anderen Anwendungen).



  • Die Mehrheit der Befragten geht davon aus, dass die Nutzung von Datenströmen durch AI / ML im nächsten Jahr die größten Gewinne erzielen wird.
  • Die Anwendung in AI / ML wird nicht nur durch relativ neue Arten von Szenarien wachsen, sondern auch durch traditionelle Szenarien, in denen Echtzeitdaten zunehmend verwendet werden.
  • Neben AI / ML ist die Begeisterung der Benutzer von IoT-Datenpipelines beeindruckend - 48% derjenigen, die bereits IoT-Daten integriert haben, geben an, dass die Skripterstellung für diese Daten in naher Zukunft erheblich zunehmen wird. ... "


Aus dieser ziemlich interessanten Umfrage geht hervor, dass die Wahrnehmung von Szenarien des maschinellen Lernens und der künstlichen Intelligenz als führend beim Verbrauch von Datenströmen bereits "auf dem Weg" ist. Nicht weniger wichtige Beobachtung ist jedoch die Wahrnehmung von Echtzeit-AI / ML durch die Optik von DevOps: Hier können wir bereits über die Transformation der immer noch dominanten Kultur der "Einweg-AI / ML mit einem vollständig zugänglichen Datensatz" sprechen.



Echtzeit-AI / ML-Plattformkonzept



Eine der typischen Echtzeit-AI / ML-Anwendungen ist die Prozesssteuerung in der Fertigung. Anhand ihres Beispiels und unter Berücksichtigung früherer Überlegungen werden wir das Konzept einer Echtzeit-AI / ML-Plattform formulieren.



Der Einsatz von künstlicher Intelligenz und maschinellem Lernen in der Prozesssteuerung weist eine Reihe von Merkmalen auf:



  • : ( , )
  • , , , , (, )
  • , « » , ,


Diese Merkmale zwingen uns, neben dem Empfang und der grundlegenden Echtzeitverarbeitung des intensiven "Breitband-Eingangs" aus dem Prozess (parallel) die Anwendung, Schulung und Qualitätskontrolle der Ergebnisse der Arbeit von AI / ML-Modellen durchzuführen - auch in Echtzeit. Der „Rahmen“, den unsere Modelle im relevanten Schiebefenster „sehen“, ändert sich ständig - und damit auch die Qualität der Ergebnisse der Arbeit von AI / ML-Modellen, die in der Vergangenheit an einem der „Rahmen“ trainiert wurden. Wenn sich die Qualität der Ergebnisse der Arbeit von AI / ML-Modellen verschlechtert (zum Beispiel: Der Wert des Klassifizierungsfehlers „Alarm-Normal“ hat die von uns definierten Grenzen überschritten), sollte das zusätzliche Training von Modellen automatisch in einem relevanteren „Rahmen“ gestartet werden - und die Wahl des Zeitpunkts für den Beginn des zusätzlichen Trainings von Modellen sollte berücksichtigt werden als die Dauer des Trainings selbst,und die Dynamik der Verschlechterung der Qualität der aktuellen Version der Modelle (da die aktuellen Versionen der Modelle weiterhin angewendet werden, während die Modelle trainiert werden und bis ihre "neu trainierten" Versionen gebildet werden).



InterSystems IRIS verfügt über wichtige Plattformfunktionen, um AI / ML-Lösungen für die Prozesssteuerung in Echtzeit zu ermöglichen. Diese Funktionen können in drei Hauptgruppen unterteilt werden:



  • Kontinuierliche Bereitstellung / Bereitstellung (CD) neuer oder angepasster vorhandener AI / ML-Mechanismen zu einer produktiven Lösung, die in Echtzeit auf der InterSystems IRIS-Plattform ausgeführt wird
  • Continuous Integration (CI) in eine einzige produktive Lösung eingehender Datenflüsse eines technologischen Prozesses, Datenwarteschlangen für die Anwendung / Schulung / Qualitätskontrolle von AI / ML-Mechanismen und den Austausch von Daten- / Code- / Kontrollaktionen mit mathematischen Modellierungsumgebungen, die in orchestriert sind Echtzeitplattform InterSystems IRIS
  • (-) (Continuous Training, CT) AI/ML-, , (« »), InterSystems IRIS


Die genaue Einteilung der Plattformfähigkeiten in Bezug auf maschinelles Lernen und künstliche Intelligenz in solche Gruppen ist kein Zufall. Lassen Sie uns in unserer Übersetzung die methodische Veröffentlichung von Google zitieren , die eine konzeptionelle Grundlage für diese Klassifizierung bietet:



„… Das heute beliebte DevOps-Konzept umfasst die Entwicklung und den Betrieb großer Informationssysteme. Die Vorteile der Implementierung dieses Konzepts sind die Verkürzung der Entwicklungszyklen, die Beschleunigung der Entwicklungsbereitstellung und die flexible Release-Planung. Um diese Vorteile zu nutzen, umfasst DevOps mindestens zwei Methoden:



  • Kontinuierliche Integration (CI)
  • Kontinuierliche Lieferung (CD)


Diese Praktiken gelten auch für AI / ML-Plattformen, um einen zuverlässigen und effizienten Aufbau produktiver AI / ML-Lösungen sicherzustellen.



AI / ML-Plattformen unterscheiden sich von anderen Informationssystemen in folgenden Aspekten:



  • Teamkompetenzen: Bei der Erstellung einer AI / ML-Lösung besteht das Team normalerweise aus Datenwissenschaftlern oder datenwissenschaftlichen „Akademikern“, die Datenanalyse, Modellentwicklung und Validierung durchführen. Diese Teammitglieder können professionelle Entwickler von produktivem Code sein oder nicht.
  • : AI/ML- . , , , , . « / », , .
  • : AI/ML- , . , .
  • : AI/ML- , . AI/ML- , . , - , .
  • Produktiv: AI / ML-Engines sind möglicherweise nicht nur aufgrund ineffizienter Programmierung, sondern auch aufgrund der sich ständig ändernden Art der Eingabedaten nicht leistungsfähig. Mit anderen Worten, die Leistung von AI / ML-Motoren kann sich aus einer Vielzahl von Gründen verschlechtern als die Leistung herkömmlicher Konstruktionen. Dies führt dazu, dass die Leistung unserer AI / ML-Engines (online) überwacht sowie Benachrichtigungen gesendet oder Ergebnisse verworfen werden müssen, wenn die Leistungsindikatoren nicht den Erwartungen entsprechen.


AI / ML-Plattformen ähneln anderen Informationssystemen darin, dass beide eine kontinuierliche Code-Integration mit Versionskontrolle, Unit-Tests, Integrationstests und kontinuierlicher Entwicklungsbereitstellung erfordern. Im Fall von AI / ML gibt es jedoch einige wichtige Unterschiede:



  • CI (Continuous Integration, ) – AI/ML-.
  • CD (Continuous Delivery/Deployment, ) , , AI/ML-.
  • CT (Continuous Training, ) – [. : DevOps, CT , , Continuous Testing], AI/ML-, AI/ML-. …»


Wir können feststellen, dass maschinelles Lernen und künstliche Intelligenz, die an Echtzeitdaten arbeiten, ein breiteres Spektrum an Werkzeugen und Kompetenzen erfordern (von der Codeentwicklung bis zur Orchestrierung mathematischer Modellierungsumgebungen), eine engere Integration aller Funktions- und Themenbereiche sowie eine effizientere Organisation von Mensch und Mensch Maschinenressourcen.



Echtzeitszenario: Erkennung der Entwicklung von Defekten in Förderpumpen



Wenn wir weiterhin den Bereich der technologischen Prozesssteuerung als Beispiel verwenden, werden wir ein spezifisches Problem betrachten (das wir bereits zu Beginn erwähnt haben): Es ist erforderlich, die Entwicklung von Pumpenfehlern in Echtzeit auf der Grundlage des Werteflusses der technologischen Prozessparameter und der Berichte des Reparaturpersonals über die festgestellten Defekte zu überwachen.





Abbildung 2 Formulierung der Aufgabe zur Überwachung der Entwicklung von Defekten



Ein Merkmal der meisten Aufgaben, die in der Praxis auf diese Weise gestellt werden, besteht darin, dass die Regelmäßigkeit und Effizienz des Datenempfangs (APCS) vor dem Hintergrund des episodischen und unregelmäßigen Auftretens (und der Registrierung) von Fehlern verschiedener Art berücksichtigt werden sollte. Mit anderen Worten: Die Daten aus dem Prozessleitsystem kommen einmal pro Sekunde, korrekt und genau, und es werden Notizen mit einem Chemiestift mit dem Datum im allgemeinen Notizbuch im Geschäft über Fehler gemacht (zum Beispiel: "12.01 - von der dritten Lagerseite in den Deckel fließen").



Daher kann die Problemstellung durch die folgende wichtige Einschränkung ergänzt werden: Wir haben nur ein „Etikett“ für einen bestimmten Fehlertyp (dh ein Beispiel für einen bestimmten Fehlertyp wird durch Daten aus dem Steuerungssystem für ein bestimmtes Datum dargestellt - und wir haben keine weiteren Beispiele für diesen Fehlertyp). Diese Einschränkung führt uns sofort über den Rahmen des klassischen maschinellen Lernens (überwachtes Lernen) hinaus, für das es viele "Tags" geben sollte.





Abbildung 3 Klärung der Aufgabe der Überwachung der Fehlerentwicklung



Können wir das einzige "Label", das uns zur Verfügung steht, irgendwie "multiplizieren"? Ja wir können. Der aktuelle Zustand der Pumpe ist durch den Grad der Ähnlichkeit mit den registrierten Defekten gekennzeichnet. Auch ohne den Einsatz von quantitativen Methoden auf der Ebene der visuellen Wahrnehmung, die Dynamik der Datenwerte zu beobachten von dem Steuerprozesssystem kommen, können Sie schon eine Menge lernen:





4 Dynamik des Pumpenzustandes vor dem Hintergrund der „Marke“ einen Mangel eines bestimmten Typ



Aber die visuellen Wahrnehmung (zumindest vorerst) - nicht der am besten geeignete "Tag" -Generator in unserem schnelllebigen Szenario. Wir werden die Ähnlichkeit des aktuellen Zustands der Pumpe mit den gemeldeten Fehlern anhand eines statistischen Tests bewerten.





Abbildung 5 Anwendung eines statistischen Tests auf eingehende Daten vor dem Hintergrund eines fehlerhaften "Etiketts"



Der statistische Test bestimmt die Wahrscheinlichkeit, dass die Aufzeichnungen mit den Werten der technologischen Prozessparameter in dem vom Prozessleitsystem empfangenen "Stream-Paket" den Aufzeichnungen des "Etiketts" eines Defekts eines bestimmten Typs ähnlich sind. Der Wahrscheinlichkeitswert (statistischer Ähnlichkeitsindex), der als Ergebnis der Anwendung des statistischen Tests berechnet wird, wird in einen Wert von 0 oder 1 umgewandelt und wird zu einem "Etikett" für maschinelles Lernen in jedem spezifischen Datensatz in dem zu untersuchenden Paket. Das heißt, nachdem wir das neu empfangene Paket von Pumpenzustandsaufzeichnungen mit einem statistischen Test verarbeitet haben, haben wir die Möglichkeit (a) dieses Paket zum Trainingssatz für das Training des AI / ML-Modells hinzuzufügen und (b) die Qualität der aktuellen Version des Modells zu kontrollieren, wenn es angewendet wird zu diesem Paket.





Abbildung 6 Anwenden eines Modells für maschinelles Lernen auf eingehende Daten vor dem Hintergrund eines fehlerhaften "Tags"



In einem unserer vorherigen WebinareWir zeigen und erklären, wie Sie mit der InterSystems IRIS-Plattform jeden AI / ML-Mechanismus in Form der kontinuierlichen Ausführung von Geschäftsprozessen implementieren können, die die Zuverlässigkeit der Modellierungsergebnisse steuern und Modellparameter anpassen. Bei der Implementierung eines Prototyps unseres Szenarios mit Pumpen verwenden wir alle im Webinar vorgestellten IRIS-Funktionen von InterSystems. Als Teil unserer Lösung implementieren wir im Analyseprozess nicht das klassische überwachte Lernen, sondern das verstärkte Lernen, das die Stichprobe automatisch für Trainingsmodelle verwaltet. Die Trainingsstichprobe enthält Aufzeichnungen, bei denen ein "Konsens der Erkennung" entsteht, nachdem sowohl der statistische Test als auch die aktuelle Version des Modells angewendet wurden - dh der statistische Test (nach Transformation des Ähnlichkeitsindex auf 0 oder 1).und das Modell erzeugte das Ergebnis 1 in solchen Aufzeichnungen. Mit neuem Training des Modells während seiner Validierung (das neu trainierte Modell wird auf seine eigene Trainingsprobe angewendet, mit der vorläufigen Anwendung des statistischen Tests darauf), Aufzeichnungen, die nach der Verarbeitung des statistischen Testergebnisses 1 „nicht gehalten“ wurden ( Aufgrund des ständigen Vorhandenseins von Datensätzen aus dem anfänglichen "Etikett" des Fehlers im Trainingssatz werden diese aus dem Trainingssatz entfernt, und die neue Version des Modells lernt aus dem "Etikett" des Defekts plus den "beibehaltenen" Datensätzen aus dem Stream.Ergebnis 1 "nicht beibehalten", nachdem es durch den statistischen Test verarbeitet wurde (aufgrund des ständigen Vorhandenseins von Fehlern im Trainingssatz von der anfänglichen "Note" des Fehlers), wird aus dem Trainingssatz entfernt, und die neue Version des Modells lernt aus der "Note" des Defekts plus aus den "beibehaltenen" Datensätzen von fließen.Ergebnis 1 "nicht beibehalten", nachdem es vom statistischen Test verarbeitet wurde (aufgrund des ständigen Vorhandenseins von Fehlern im Trainingssatz von der anfänglichen "Note" des Fehlers), wird aus dem Trainingssatz entfernt, und die neue Version des Modells lernt aus der "Marke" des Defekts plus aus den "beibehaltenen" Datensätzen von fließen.





Abbildung 7 Roboter-AI / ML-Computing in InterSystems IRIS



Wenn eine Art "Zweitmeinung" zur Qualität der Erkennung erforderlich ist, die bei lokalen Berechnungen in InterSystems IRIS erhalten wird, wird ein Beratungsprozess erstellt, um das Training und die Anwendung von Modellen auf einem Kontrolldatensatz mit durchzuführen Verwenden von Cloud-Diensten (z. B. Microsoft Azure, Amazon Web Services, Google Cloud Platform usw.):





Abbildung 8 Zweite Meinung von Microsoft Azure, orchestriert von InterSystems IRIS



Der Prototyp unseres Skripts in InterSystems IRIS besteht aus einem agentenbasierten System von Analyseprozessen, die mit dem Geräteobjekt (Pumpe), mathematischen Modellierungsumgebungen (Python, R und Julia) interagieren und das Selbstlernen aller beteiligten AI / ML-Mechanismen ermöglichen - in Echtzeitdatenströmen ...





Abbildung 9 Die Hauptfunktionalität einer Echtzeit-AI / ML-Lösung in InterSystems IRIS Das



praktische Ergebnis unseres Prototyps:



  • Vom Modell erkanntes Fehlermuster (12. Januar):




  • Ein vom Modell erkannter Entwicklungsfehler, der nicht in der Stichprobe enthalten war (am 11. September wurde der Fehler selbst nur zwei Tage später - am 13. September - vom Reparaturteam festgestellt):




Die Simulation realer Daten mit mehreren Episoden desselben Fehlers hat gezeigt, dass unsere auf der IRIS-Plattform von InterSystems implementierte Lösung es uns ermöglicht, die Entwicklung von Fehlern dieses Typs mehrere Tage vor ihrer Entdeckung durch das Reparaturteam zu erkennen.



InterSystems IRIS ist eine vielseitige Echtzeit-AI / ML-Computerplattform



Die InterSystems IRIS-Plattform vereinfacht die Entwicklung, Bereitstellung und den Betrieb von Echtzeitdatenlösungen. InterSystems IRIS kann gleichzeitig Transaktions- und Analysedaten verarbeiten. Pflege synchronisierter Datenansichten gemäß mehreren Modellen (einschließlich relationaler, hierarchischer, Objekt- und Dokumentansichten); als Plattform für die Integration einer Vielzahl von Datenquellen und einzelnen Anwendungen fungieren; Bieten Sie erweiterte Analysen in Echtzeit für strukturierte und unstrukturierte Daten. InterSystems IRIS bietet auch Mechanismen für die Verwendung externer Analysetools, mit denen Sie das Hosting in der Cloud und auf lokalen Servern flexibel kombinieren können.



Auf der IRIS-Plattform von InterSystems basierende Anwendungen wurden in einer Vielzahl von Branchen eingesetzt, um Unternehmen dabei zu helfen, aus strategischer und operativer Sicht einen erheblichen wirtschaftlichen Wert zu erzielen, das Bewusstsein für Entscheidungen zu stärken und die Lücke zwischen Ereignis, Analyse und Aktion zu schließen.





Abbildung 10 InterSystems IRIS-Architektur im Echtzeit-AI / ML-Kontext



Wie im vorherigen Diagramm kombiniert das folgende Diagramm das neue "Koordinatensystem" (CD / CI / CT) mit dem Informationsfluss zwischen Plattformarbeitselementen. Die Bildgebung beginnt mit dem CD-Makromechanismus und setzt sich mit den CI- und CT-Makromechanismen fort.





Abbildung 11 Diagramm des Informationsflusses zwischen AI / ML-Elementen der InterSystems IRIS-Plattform



Das Wesentliche des CD-Mechanismus in InterSystems IRIS: Plattformbenutzer (Entwickler von AI / ML-Lösungen) passen vorhandene an und / oder erstellen neue AI / ML-Entwicklungen mit einem speziellen Editor des Programmcodes für AI / ML-Mechanismen: Jupyter (vollständiger Name: Jupyter Notebook; der Kürze halber werden die in diesem Editor erstellten Dokumente manchmal auch als) bezeichnet. In Jupyter kann ein Entwickler schreiben, debuggen und sicherstellen, dass eine bestimmte AI / ML-Entwicklung funktioniert (einschließlich der Verwendung von Grafiken), bevor sie in InterSystems IRIS bereitgestellt („bereitgestellt“) wird. Es ist klar, dass die auf diese Weise erstellte Neuentwicklung nur ein grundlegendes Debugging erhält (da Jupyter insbesondere nicht mit Echtzeitdatenströmen arbeitet) - dies ist an der Tagesordnung.Schließlich ist das Hauptergebnis der Entwicklung in Jupyter die Bestätigung der grundlegenden Leistung eines separaten AI / ML-Mechanismus ("zeigt das erwartete Ergebnis an einer Datenprobe"). In ähnlicher Weise kann ein Mechanismus, der bereits vor dem Debuggen in Jupyter in der Plattform platziert wurde (siehe die folgenden Makromechanismen), ein "Rollback" auf eine "Vorplattform" -Ansicht erfordern (Lesen von Daten aus Dateien, Arbeiten mit Daten über xDBC anstelle von Tabellen, direkte Interaktion mit globalen Elementen - mehrdimensionale Datenarrays InterSystems IRIS - usw.).Arbeiten mit Daten über xDBC anstelle von Tabellen, direkte Interaktion mit Globals - mehrdimensionale Datenarrays von InterSystems IRIS - usw.).Arbeiten mit Daten über xDBC anstelle von Tabellen, direkte Interaktion mit Globals - mehrdimensionale Datenarrays von InterSystems IRIS - usw.).



Ein wichtiger Aspekt der CD-Implementierung in InterSystems IRIS: Zwischen der Plattform und Jupyter wird eine bidirektionale Integration implementiert, die die Übertragung von Inhalten auf die Plattform (und in Zukunft die Verarbeitung auf der Plattform) in Python, R und Julia ermöglicht (alle drei sind Programmiersprachen in den entsprechenden führenden Open-). Quellumgebungen der mathematischen Modellierung). Auf diese Weise können Entwickler von AI / ML-Inhalten diese Inhalte "kontinuierlich" auf der Plattform bereitstellen, indem sie in ihrem üblichen Jupyter-Editor mit den bekannten Bibliotheken in Python, R, Julia arbeiten und (falls erforderlich) grundlegende Debugging-Vorgänge außerhalb der Plattform durchführen ...



Weiter mit der CI-Makro-Engine in InterSystems IRIS. Das Diagramm zeigt den Makroprozess eines "Echtzeitroboters" (ein Komplex aus Datenstrukturen, Geschäftsprozessen und Codefragmenten, die von ihnen in den Mathred-Sprachen und ObjectScript - der Muttersprache der InterSystems IRIS-Entwicklung - orchestriert wurden). Die Aufgabe dieses Makroprozesses ist es, die Datenwarteschlangen aufrechtzuerhalten, die für den Betrieb von AI / ML-Mechanismen erforderlich sind (basierend auf Datenströmen, die in Echtzeit an die Plattform übertragen werden), Entscheidungen über die Reihenfolge der Anwendung und das "Sortiment" von AI / ML-Mechanismen zu treffen (sie sind auch "mathematische Algorithmen"). Modelle "usw. - können je nach Implementierungsspezifikationen und terminologischen Präferenzen unterschiedlich aufgerufen werden), halten Sie die Datenstrukturen für die Analyse der Ergebnisse von AI / ML-Mechanismen (Cubes, Tabellen, mehrdimensionale Datenarrays usw.) auf dem neuesten Stand.- für Berichte, Dashboards usw.).



Ein wichtiger Aspekt der CI-Implementierung in InterSystems IRIS: Es wird eine bidirektionale Integration zwischen der Plattform und mathematischen Modellierungsumgebungen implementiert, die die Ausführung von Inhalten ermöglicht, die auf der Plattform in Python, R und Julia in ihren jeweiligen Umgebungen platziert wurden, wobei die Ausführungsergebnisse zurückgegeben werden. Diese Integration wird sowohl im "Terminalmodus" (dh AI / ML-Inhalt wird als ObjectScript-Code formuliert, der die mathematische Umgebung aufruft) als auch im "Geschäftsprozessmodus" (dh AI / ML-Inhalt wird formuliert) implementiert als Geschäftsprozess mit einem grafischen Editor oder manchmal mit Jupyter oder mit IDE (IRIS Studio, Eclipse, Visual Studio Code). Die bearbeitbare Verfügbarkeit von Geschäftsprozessen in Jupyter spiegelt sich in der Verbindung zwischen IRIS auf CI-Ebene und Jupyter auf CD-Ebene wider.Eine detailliertere Übersicht über die Integration in mathematische Modellierungsumgebungen finden Sie unten. In dieser Phase gibt es unserer Meinung nach allen Grund, die Präsenz aller notwendigen Tools für die Implementierung der „kontinuierlichen Integration“ von AI / ML-Entwicklungen (aus der „kontinuierlichen Bereitstellung“) in AI / ML-Lösungen in Echtzeit auf der Plattform zu korrigieren.



Und der Hauptmakromechanismus: CT. Ohne sie funktioniert die AI / ML-Plattform nicht (obwohl "Echtzeit" über CD / CI implementiert wird). Die Essenz der CT ist die Arbeit der Plattform mit den „Artefakten“ des maschinellen Lernens und der künstlichen Intelligenz direkt in den Arbeitssitzungen mathematischer Modellierungsumgebungen: Modelle, Verteilungstabellen, Matrixvektoren, Schichten neuronaler Netze usw. Diese "Arbeit" besteht in den meisten Fällen in der Erstellung der genannten Artefakte in der Umgebung (bei Modellen besteht die "Erstellung" beispielsweise darin, die Spezifikation des Modells anzugeben und anschließend die Werte seiner Parameter auszuwählen - das sogenannte "Training" des Modells), deren Anwendung (z Modelle: die Berechnung mit Hilfe von "Modell" -Werten von Zielvariablen - Prognosen, Zugehörigkeit zu einer Kategorie, Wahrscheinlichkeit eines Ereignisses usw.) und die Verbesserung bereits erstellter und angewandter Artefakte (z. B. Neudefinition des Satzes von Eingabevariablen des Modells basierend auf den Ergebnissen der Anwendung - um optional die Genauigkeit der Vorhersage zu erhöhen). Der entscheidende Punkt für das Verständnis der Rolle der CT ist ihre "Abstraktion" von den Realitäten von CD und CI: Die CT wird alle Artefakte implementieren und sich auf die rechnerischen und mathematischen Besonderheiten einer AI / ML-Lösung innerhalb der von bestimmten Umgebungen bereitgestellten Funktionen konzentrieren. CD und CI sind für die „Bereitstellung von Inputs“ und die „Bereitstellung von Ergebnissen“ verantwortlich.Konzentration auf die rechnerischen und mathematischen Besonderheiten einer AI / ML-Lösung innerhalb der von bestimmten Umgebungen bereitgestellten Funktionen. CD und CI sind für die „Bereitstellung von Inputs“ und die „Bereitstellung von Ergebnissen“ verantwortlich.Konzentration auf die rechnerischen und mathematischen Besonderheiten einer AI / ML-Lösung innerhalb der von bestimmten Umgebungen bereitgestellten Funktionen. CD und CI sind für die „Bereitstellung von Inputs“ und „Bereitstellung von Ergebnissen“ verantwortlich.



Ein wichtiger Aspekt der CT-Implementierung in InterSystems IRIS: Durch die bereits erwähnte Integration in mathematische Modellierungsumgebungen kann die Plattform aus den von ihr kontrollierten Arbeitssitzungen in der mathematischen Umgebung die Artefakte extrahieren und (am wichtigsten) in Plattformdatenobjekte umwandeln. Beispielsweise kann eine Verteilungstabelle, die gerade in einer Python-Arbeitssitzung erstellt wurde, (ohne eine Sitzung in Python anzuhalten) beispielsweise in Form eines globalen (mehrdimensionalen Datenarrays InterSystems IRIS) auf die Plattform übertragen und für Berechnungen in einer anderen AI / ML- verwendet werden. Mechanismus (bereits in der Sprache einer anderen Umgebung implementiert - zum Beispiel in R) - oder eine virtuelle Tabelle. Ein weiteres Beispiel: Parallel zum "normalen Modus" des Modells (in einer Python-Arbeitssitzung) wird "auto-ML" für seine Eingabedaten ausgeführt:automatische Auswahl optimaler Eingangsvariablen und Parameterwerte. Und neben dem "Vollzeit" -Training erhält ein produktives Modell in Echtzeit auch einen "Vorschlag zur Optimierung" seiner Spezifikation - bei dem sich der Satz von Eingabevariablen ändert, die Werte der Parameter sich ändern (nicht mehr als Ergebnis des Trainings in Python, sondern als Ergebnis des Trainings einer "Alternative" ”Version davon selbst, zum Beispiel im H2O-Stack), die es der allgemeinen AI / ML-Lösung ermöglicht, unvorhergesehene Änderungen in der Art der Eingabedaten und der simulierten Phänomene autonom zu bewältigen.und als Ergebnis des Trainings einer "alternativen" Version davon selbst (z. B. im H2O-Stapel), die es der allgemeinen AI / ML-Lösung ermöglicht, autonom mit unvorhergesehenen Änderungen in der Art der Eingabedaten und den simulierten Phänomenen umzugehen.und als Ergebnis des Trainings einer "alternativen" Version davon (z. B. im H2O-Stapel), die es der allgemeinen AI / ML-Lösung ermöglicht, autonom mit unvorhergesehenen Änderungen in der Art der Eingabedaten und den simulierten Phänomenen umzugehen.



Lassen Sie uns am Beispiel eines realen Prototyps die Plattform-AI / ML-Funktionalität von InterSystems IRIS genauer kennenlernen.



In der folgenden Abbildung auf der linken Seite der Folie befindet sich ein Teil des Geschäftsprozesses, der die Ausführung von Skripten in Python und R implementiert. Im mittleren Teil gibt es visuelle Protokolle für die Ausführung einiger dieser Skripte in Python und R. Unmittelbar danach finden Sie Beispiele für Inhalte in einem und eine andere Sprache, die zur Ausführung in die entsprechenden Umgebungen übertragen wird. Am Ende rechts - Visualisierungen basierend auf den Ergebnissen der Skriptausführung. Die Visualisierungen oben werden in IRIS Analytics erstellt (die Daten werden von Python zur InterSystems IRIS-Datenplattform übertragen und von den Tools der Plattform im Dashboard angezeigt). Unten werden sie direkt in der R-Arbeitssitzung erstellt und von dort in Grafikdateien ausgegeben. Ein wichtiger Aspekt: ​​Das im Prototyp dargestellte Fragment ist für das Training des Modells (Klassifizierung der Gerätezustände) anhand von Daten verantwortlich, die in Echtzeit vom Gerätesimulatorprozess empfangen werden.auf Befehl des Prozessmonitors die Qualität der Klassifizierung, beobachtet während der Anwendung des Modells. Die Implementierung einer AI / ML-Lösung in Form einer Reihe interagierender Prozesse („Agenten“) wird nachstehend erörtert.





Abbildung 12 Die Interaktion mit Python, R und Julia in IRS



Platform-Prozessen von InterSystems (je nach Kontext sind dies auch „Geschäftsprozesse“, „Analyseprozesse“, „Pipelines“ usw.) kann zunächst in einem grafischen Editor bearbeitet werden Geschäftsprozesse in der Plattform selbst und so, dass sowohl das Blockdiagramm als auch der entsprechende AI / ML-Mechanismus (Programmcode) erstellt werden. Wenn wir sagen, dass "ein AI / ML-Mechanismus erhalten wird", meinen wir zunächst Hybridität (innerhalb eines Prozesses): Inhalt in mathematischen Modellierungssprachen grenzt an Inhalt in SQL (einschließlich Erweiterungen aus IntegratedML)) in InterSystems ObjectScript mit anderen unterstützten Sprachen. Darüber hinaus bietet der Plattformprozess sehr viele Möglichkeiten zum "Rendern" in Form von hierarchisch verschachtelten Fragmenten (wie im Beispiel im folgenden Diagramm zu sehen ist), wodurch es möglich wird, auch sehr komplexe Inhalte effektiv zu organisieren, ohne jemals aus dem Grafikformat "herauszufallen" (in "nicht grafisch") »Methoden / Klassen / Verfahren usw.). Das heißt, wenn nötig (und dies ist in den meisten Projekten vorgesehen), können absolut alle AI / ML-Lösungen in einem grafischen, selbst empfehlenden Format implementiert werden. Bitte beachten Sie, dass Sie im mittleren Teil des folgenden Diagramms, das eine höhere "Verschachtelungsebene" zeigt, sehen können, dass zusätzlich zu den eigentlichen Arbeiten zum Trainieren des Modells (mit Python und R) eine Analyse der sogenannten ROC-Kurve des trainierten Modells hinzugefügt wird.Ermöglichen der visuellen (und auch rechnerischen) Beurteilung der Qualität des Trainings - und diese Analyse wird in der Julia-Sprache implementiert (jeweils im Julia-Framework ausgeführt).





Abbildung 13 Visuelle Umgebung für die Zusammensetzung von AI / ML-Lösungen in InterSystems IRIS



Wie bereits erwähnt, kann / kann die anfängliche Entwicklung und (in einigen Fällen) Anpassung von AI / ML-Mechanismen, die bereits auf der Plattform implementiert sind, außerhalb der Plattform im Jupyter-Editor erfolgen. In der folgenden Abbildung sehen wir ein Beispiel für die Anpassung eines vorhandenen Plattformprozesses (wie in der obigen Abbildung). So sieht das Fragment aus, das für das Training des Modells in Jupyter verantwortlich ist. Python-Inhalte können direkt in Jupyter bearbeitet, debuggt und Grafiken ausgegeben werden. Änderungen (falls erforderlich) können mit sofortiger Synchronisierung des Plattformprozesses einschließlich der Produktionsversion vorgenommen werden. Ebenso können neue Inhalte auf die Plattform übertragen werden (ein neuer Plattformprozess wird automatisch generiert).





Abbildung 14 Verwenden von Jupyter Notebook zum Bearbeiten der AI / ML-Engine in der InterSystems IRIS-



Plattform Die Anpassung des Plattformprozesses kann nicht nur im Grafik- oder Notebook-Format, sondern auch im IDE-Format (Integrated Development Environment) erfolgen. Diese IDEs sind IRIS Studio (natives IRIS-Studio), Visual Studio Code (InterSystems IRIS-Erweiterung für VSCode) und Eclipse (Atelier-Plugin). In einigen Fällen kann ein Entwicklungsteam alle drei IDEs gleichzeitig verwenden. Das folgende Diagramm zeigt ein Beispiel für die Bearbeitung desselben Prozesses in IRIS Studio, in Visual Studio Code und in Eclipse. Es stehen absolut alle Inhalte zur Bearbeitung zur Verfügung: Python / R / Julia / SQL, ObjectScript und der Geschäftsprozess.





Abbildung 15 Entwickeln eines InterSystems IRIS-Geschäftsprozesses in verschiedenen IDEs



Besonders hervorzuheben sind die Mittel zur Beschreibung und Ausführung von InterSystems IRIS-Geschäftsprozessen in der Business Process Language (BPL). BPL ermöglicht die Verwendung von „vorgefertigten Integrationskomponenten“ (Aktivitäten) in Geschäftsprozessen. Dies gibt Anlass zu der Annahme, dass die „kontinuierliche Integration“ in InterSystems IRIS implementiert ist. Vorgefertigte Komponenten eines Geschäftsprozesses (Aktivitäten und Verbindungen zwischen ihnen) sind der leistungsstärkste Beschleuniger für die Zusammenstellung einer AI / ML-Lösung. Und nicht nur Baugruppen: Dank der Aktivitäten und Verbindungen zwischen ihnen erscheint eine "autonome Managementebene" über den unterschiedlichen AI / ML-Entwicklungen und -Mechanismen, die in der Lage sind, Entscheidungen je nach Situation in Echtzeit zu treffen.





Abbildung 16 Fertige Komponenten von Geschäftsprozessen für die kontinuierliche Integration (CI) auf der InterSystems IRIS-Plattform



Das Konzept der Agentensysteme (auch bekannt als „Multi-Agent-Systeme“) hat eine starke Position in der Robotisierung, und die IRIS-Plattform von InterSystems unterstützt es organisch durch das Konstrukt „Produktprozess“. Neben unbegrenzten Möglichkeiten, jeden Prozess mit der für eine allgemeine Lösung erforderlichen Funktionalität zu "füllen", können Sie durch die Ausstattung des Systems von Plattformprozessen mit der Eigenschaft "Agentur" effektive Lösungen für extrem instabile modellierte Phänomene (Verhalten von Sozial- / Biosystemen, teilweise beobachtbare technologische Prozesse usw.) erstellen.





Abbildung 17 Arbeit einer AI / ML-Lösung in Form eines agentenbasierten Systems von Geschäftsprozessen in InterSystems IRIS



Wir setzen unsere Überprüfung von InterSystems IRIS mit einer Geschichte über die angewandte Verwendung der Plattform zur Lösung ganzer Klassen von Echtzeitproblemen fort (eine ziemlich detaillierte Kenntnis einiger der Best Practices der Plattform AI / ML auf InterSystems IRIS findet sich in einem unserer vorherigen Webinare ).



Im Folgenden finden Sie ein detaillierteres Diagramm des Agentensystems. Das Diagramm zeigt den gleichen Prototyp, alle vier Agentenprozesse sind sichtbar, die Beziehungen zwischen ihnen sind schematisch dargestellt: GENERATOR - erstellt die Erstellung von Daten durch Gerätesensoren, BUFFER - verwaltet Datenwarteschlangen, ANALYZER - führt maschinelles Lernen selbst durch, MONITOR - steuert die Qualität des maschinellen Lernens und stellt bereit Signal über die Notwendigkeit, das Modell neu zu trainieren.





Abbildung 18 Aufbau einer AI / ML-Lösung in Form eines agentenbasierten Systems von Geschäftsprozessen in InterSystems IRIS



Das folgende Diagramm zeigt die autonome Funktionsweise eines anderen Roboterprototyps (Erkennung der emotionalen Färbung von Texten) für einige Zeit. Im oberen Teil - der Entwicklung des Lernqualitätsindikators des Modells (die Qualität wächst), im unteren Teil - der Dynamik des Qualitätsindikators des Modells und den Fakten des wiederholten Trainings (rote Balken). Wie Sie sehen, ist die Lösung effizient und autonom Autodidakt und arbeitet auf dem angegebenen Qualitätsniveau (die Qualitätsindikatorwerte fallen nicht unter 80%).





Abbildung 19 Kontinuierliches (Selbst-) Lernen (CT) auf der InterSystems IRIS-Plattform



Wir haben auch "Auto-ML" bereits erwähnt, aber das folgende Diagramm zeigt die Verwendung dieser Funktionalität im Detail am Beispiel eines anderen Prototyps. Das grafische Diagramm eines Fragments eines Geschäftsprozesses zeigt die Aktivität, mit der die Modellierung im H2O-Stapel gestartet wird, zeigt die Ergebnisse dieser Modellierung (die offensichtliche Dominanz des resultierenden Modells gegenüber den "künstlichen" Modellen gemäß dem Vergleichsdiagramm der ROC-Kurven sowie die automatisierte Identifizierung der "einflussreichsten Variablen", die in verfügbar sind Originaldatensatz). Ein wichtiger Punkt hierbei ist die Einsparung von Zeit und Expertenressourcen, die durch "Auto-ML" erreicht wird: Was unser Plattformprozess in einer halben Minute erledigt (Finden und Trainieren des optimalen Modells), kann einen Experten von einer Woche bis zu einem Monat in Anspruch nehmen.





Abbildung 20 Integration von "Auto-ML" in eine AI / ML-Lösung auf der Basis der InterSystems IRIS-Plattform



Das folgende Diagramm "bringt den Höhepunkt" ein wenig herunter, aber dies ist ein guter Weg, um die Geschichte über die Klassen der zu lösenden Echtzeitaufgaben zu vervollständigen: Wir erinnern Sie daran, dass mit allen Funktionen der InterSystems-Plattform IRIS, das Training von Modellen unter seiner Kontrolle ist optional. Die Plattform kann von außen die sogenannte PMML-Modellspezifikation abrufen, die in einem Tool außerhalb der Kontrolle der Plattform geschult ist - und dieses Modell ab dem Zeitpunkt des Imports der PMML-Spezifikation in Echtzeit anwenden .... Es ist wichtig zu beachten, dass nicht alle AI / ML-Artefakte auf die PMML-Spezifikation reduziert werden können, selbst wenn die meisten der häufigsten Artefakte dies zulassen. Somit ist die InterSystems IRIS-Plattform "Open Loop" und bedeutet für Benutzer nicht "Plattformsklaverei".





Abbildung 21 Anwendung des Modells gemäß der PMML-Spezifikation in der InterSystems IRIS-Plattform



Lassen Sie uns die zusätzlichen Plattformvorteile von InterSystems IRIS (aus Gründen der Klarheit in Bezug auf die Prozesssteuerung) auflisten, die für die Automatisierung künstlicher Intelligenz und maschinelles Lernen in Echtzeit von großer Bedeutung sind:



  • Erweiterte Integrationstools mit beliebigen Datenquellen und Verbrauchern (APCS / SCADA, Geräte, MRO, ERP usw.)
  • - (Hybrid Transaction/Analytical Processing, HTAP)
  • AI/ML- Python, R, Julia
  • - (-) AI/ML-
  • Business Intelligence AI/ML-
  • API AI/ML- /SCADA, - , . .


AI / ML-Lösungen, die auf der InterSystems IRIS-Plattform basieren, passen problemlos in die vorhandene IT-Infrastruktur. Die IRIS-Plattform von InterSystems bietet eine hohe Zuverlässigkeit von AI / ML-Lösungen, indem fehlertolerante und katastrophtolerante Konfigurationen sowie eine flexible Bereitstellung in virtuellen Umgebungen, auf physischen Servern, in privaten und öffentlichen Clouds sowie in Docker-Containern unterstützt werden.



Somit ist InterSystems IRIS eine vielseitige Echtzeit-AI / ML-Computerplattform. Die Vielseitigkeit unserer Plattform wird in der Praxis durch das Fehlen de facto Einschränkungen der Komplexität der implementierten Berechnungen, die Fähigkeit von InterSystems IRIS, (in Echtzeit) die Verarbeitung von Szenarien aus einer Vielzahl von Branchen zu kombinieren, die außergewöhnliche Anpassungsfähigkeit aller Funktionen und Mechanismen der Plattform an spezifische Benutzeranforderungen bestätigt.





Abbildung 22 InterSystems IRIS - eine universelle Echtzeit-AI / ML-Computerplattform



Für eine fundiertere Interaktion mit denjenigen unserer Leser, die an dem hier vorgestellten Material interessiert sind, empfehlen wir, dass Sie über das Lesen hinausgehen und den Dialog "live" fortsetzen. Wir sind bereit, Sie bei der Formulierung von Echtzeit-AI / ML-Szenarien in Bezug auf die Besonderheiten Ihres Unternehmens zu unterstützen. Wir führen gemeinsame Prototypen auf der InterSystems IRIS-Plattform durch und erstellen und implementieren in der Praxis eine Roadmap für die Einführung künstlicher Intelligenz und maschinellen Lernens in Ihre Produktions- und Managementprozesse. Die Kontakt-E-Mail-Adresse für unsere AI / ML-Expertengruppe lautet MLToolkit@intersystems.com .



All Articles