InterSystems IRIS - universeel realtime AI/ML-platform

Auteur: Sergey Lukyanchikov, adviserend ingenieur van InterSystems

Realtime AI/ML-computeruitdagingen

Laten we beginnen met voorbeelden uit de ervaring van de Data Science-praktijk bij InterSystems:

  • Het "geladen" kopersportaal is verbonden met een online aanbevelingssysteem. Herstructurering van promoties op de schaal van het retailnetwerk komt eraan (in plaats van een “platte” lijn van promoties zal nu bijvoorbeeld de “segment-tactiek”-matrix worden gebruikt). Wat gebeurt er met aanbevelers? Wat gebeurt er met het indienen en bijwerken van gegevens bij het aanbevelingsmechanisme (het volume aan invoergegevens is 25000 keer toegenomen)? Wat gebeurt er met de ontwikkeling van aanbevelingen (de noodzaak van een duizendvoudige verlaging van de filterdrempel van aanbevelingsregels vanwege een duizendvoudige toename van hun aantal en "bereik")?
  • Er is een systeem voor het bewaken van de waarschijnlijkheid van ontwikkeling van defecten in apparatuurknooppunten. Een procescontrolesysteem was verbonden met het monitoringsysteem, dat elke seconde duizenden procesparameters doorstuurde. Wat gebeurt er met het monitoringsysteem dat voorheen werkte aan "handmatige steekproeven" (kan het tweede tot tweede waarschijnlijkheidsmonitoring bieden)? Wat gebeurt er als er een nieuw blok met enkele honderden kolommen verschijnt in de invoergegevens met de uitlezingen van sensoren die onlangs aan het procesbesturingssysteem zijn toegevoegd (of en hoe lang het nodig zal zijn om het monitoringsysteem te stoppen om gegevens van nieuwe sensoren in de analyse)?
  • Er is een reeks AI/ML-mechanismen (aanbevelend, monitorend, voorspellend) gecreëerd, gebruikmakend van de resultaten van elkaars werk. Hoeveel manuren zijn er maandelijks nodig om de werking van dit complex aan te passen aan veranderingen in de invoergegevens? Wat is de algehele "vertraging" die wordt ondersteund door het besluitvormingscomplex (frequentie van optreden van nieuwe ondersteunende informatie in verhouding tot de frequentie van voorkomen van nieuwe invoergegevens)?

Door deze en vele andere voorbeelden samen te vatten, kwamen we tot de formulering van de uitdagingen die zich voordoen bij de overgang naar het gebruik van machine learning en real-time kunstmatige-intelligentiemechanismen:

  • Zijn we tevreden over de snelheid van creatie en aanpassing (aan de veranderende situatie) van AI/ML-ontwikkelingen in ons bedrijf?
  • In hoeverre ondersteunen de AI/ML-oplossingen die we gebruiken real-time bedrijfsvoering?
  • Zijn de AI/ML-oplossingen die we gebruiken in staat om zich zelfstandig (zonder ontwikkelaars) aan te passen aan veranderingen in data en bedrijfsvoering?

Ons artikel is een gedetailleerd overzicht van de mogelijkheden van het InterSystems IRIS-platform op het gebied van universele ondersteuning voor de inzet van AI/ML-mechanismen, assemblage (integratie) van AI/ML-oplossingen en training (testen) van AI/ML-oplossingen op intensieve data stroomt. In dit artikel gaan we in op marktonderzoek, casestudy's van AI/ML-oplossingen en conceptuele aspecten van wat we een real-time AI/ML-platform noemen.

Wat we weten uit enquêtes: real-time toepassingen

Bevindingen overzichtuitgevoerd onder ongeveer 800 IT-professionals in 2019 door Lightbend spreken voor zich:

InterSystems IRIS - universeel realtime AI/ML-platform
Figuur 1 Toonaangevende consumenten van real-time data

Laten we de fragmenten van het rapport over de resultaten van deze enquête citeren die voor ons belangrijk zijn in onze vertaling:

“...Trends in de populariteit van dataflow-integratietools en tegelijkertijd ondersteuning voor gecontaineriseerd computergebruik bieden een synergetisch antwoord op de marktvraag naar een efficiënter, rationeler en dynamischer voorstel van effectieve oplossingen. Met gegevensstromen kan informatie sneller worden overgedragen dan traditionele pakketgegevens. Daarbij komt nog de mogelijkheid om snel rekenmethoden toe te passen, zoals op AI/ML gebaseerde aanbevelingen, om concurrentievoordelen te creëren door een grotere klanttevredenheid. De race om flexibiliteit heeft ook invloed op alle rollen in het DevOps-paradigma, waardoor de ontwikkeling en implementatie van applicaties efficiënter wordt. … Achthonderdvier IT-professionals gaven voorlichting over het gebruik van datastromen in hun organisaties. De respondenten waren voornamelijk gevestigd in westerse landen (41% in Europa en 37% in Noord-Amerika) en waren bijna gelijk verdeeld over kleine, middelgrote en grote bedrijven. …

… Kunstmatige intelligentie is geen hype. Achtenvijftig procent van degenen die al dataflowverwerking gebruiken in productieve AI/ML-toepassingen, bevestigt dat hun gebruik in AI/ML volgend jaar de grootste winst zal opleveren (vergeleken met andere toepassingen).

  • Volgens de meerderheid van de respondenten zal het gebruik van datastromen in AI/ML-scenario's het komende jaar de grootste stijging krijgen.
  • Toepassingen in AI/ML zullen niet alleen groeien door relatief nieuwe soorten scenario's, maar ook door traditionele scenario's, waarbij steeds meer gebruik wordt gemaakt van real-time data.
  • Naast AI/ML is het enthousiasme onder gebruikers van IoT-datapijplijnen indrukwekkend - 48% van degenen die al IoT-data hebben geïntegreerd, zegt dat de implementatie van scenario's op deze data in de nabije toekomst aanzienlijk zal toenemen. … »

Uit dit nogal interessante onderzoek blijkt dat de perceptie van machine learning en kunstmatige intelligentie-scenario's als leiders in de consumptie van datastromen al "onderweg" is. Maar de perceptie van real-time AI/ML via DevOps-optiek wordt een even belangrijke observatie: hier kunnen we al beginnen te praten over de transformatie van de nog steeds dominante cultuur van “eenmalige AI/ML met een volledig toegankelijke dataset”.

Realtime AI/ML-platformconcept

Een typische toepassing voor real-time AI/ML is de controle van het fabricageproces. Op basis van zijn voorbeeld en rekening houdend met eerdere reflecties, zullen we het concept van een real-time AI / ML-platform formuleren.
Het gebruik van kunstmatige intelligentie en machine learning bij procesbeheersing heeft een aantal kenmerken:

  • Gegevens over de status van het technologische proces worden intensief ontvangen: met een hoge frequentie en over een breed scala aan parameters (tot tienduizenden parameterwaarden die per seconde worden verzonden vanuit het procesbesturingssysteem)
  • Gegevens over de detectie van defecten, om nog maar te zwijgen van gegevens over hun ontwikkeling, integendeel, zijn schaars en onregelmatig, gekenmerkt door onvoldoende typering van defecten en hun lokalisatie in de tijd (vaak weergegeven door records op papier)
  • Vanuit praktisch oogpunt is alleen het "relevantievenster" van de initiële gegevens beschikbaar voor het trainen en toepassen van modellen, die de dynamiek van het technologische proces weerspiegelen voor een redelijk glijdend interval, eindigend met de laatst gelezen waarden van de procesparameters

Deze functies dwingen ons, naast het ontvangen en in realtime verwerken van intense "breedbandinvoer" van het proces, om (parallel) de toepassing, training en kwaliteitscontrole uit te voeren van de resultaten van het werk van AI / ML-modellen - ook in realtime. Het "frame" dat onze modellen "zien" in het glijdende venster van relevantie verandert voortdurend - en daarmee verandert ook de kwaliteit van de resultaten van het werk van AI / ML-modellen die in het verleden op een van de "frames" zijn getraind . Als de kwaliteit van de resultaten van het werk van AI / ML-modellen verslechtert (bijvoorbeeld: de waarde van de classificatiefout "alarmnorm" heeft de door ons gedefinieerde grenzen overschreden), moet het opnieuw trainen van modellen automatisch worden gestart op een meer relevante "frame" - en de keuze van het moment om te beginnen met het omscholen van modellen moet rekening houden met hoe de duur van de training zelf, evenals de dynamiek van verslechtering van de kwaliteit van de huidige versie van de modellen (sinds de huidige versies van de modellen wordt nog steeds toegepast terwijl de modellen worden getraind en totdat hun "opnieuw getrainde" versies worden gegenereerd).

InterSystems IRIS heeft belangrijke platformmogelijkheden om real-time AI/ML-oplossingen voor procescontrole mogelijk te maken. Deze mogelijkheden zijn onder te verdelen in drie hoofdgroepen:

  • Continue implementatie (Continuous Deployment / Delivery, CD) van nieuwe of aangepaste bestaande AI / ML-mechanismen in een productieve oplossing die in realtime werkt op het InterSystems IRIS-platform
  • Continuous Integration (CI) tot één productieve oplossing van inkomende procesdatastromen, datawachtrijen voor de toepassing / training / kwaliteitscontrole van AI / ML-mechanismen en data / code / controle-uitwisselingen met wiskundige modelleringsomgevingen, die in realtime worden georkestreerd InterSystems IRIS-platform
  • Continu (zelf) leren (Continuous Training, CT) van AI / ML-mechanismen uitgevoerd in wiskundige modelleringsomgevingen met behulp van gegevens, code en besturingsacties ("beslissingen gemaakt") verzonden door het InterSystems IRIS-platform

De indeling van platformcapaciteiten in relatie tot machine learning en kunstmatige intelligentie in precies zulke groepen is niet toevallig. Laten we de methodologische citeren publicatie Google, dat een conceptuele basis biedt voor deze classificatie, in onze vertaling:

“…Het tegenwoordig populaire DevOps-concept omvat de ontwikkeling en exploitatie van grootschalige informatiesystemen. De voordelen van het implementeren van dit concept zijn de verkorting van de duur van ontwikkelingscycli, de versnelling van de ontwikkelingsimplementatie, de flexibiliteit van releaseplanning. Om deze voordelen te behalen, omvat DevOps de implementatie van ten minste twee praktijken:

  • Continue integratie (CI)
  • Continue levering (CD)

Deze praktijken zijn ook van toepassing op AI/ML-platforms om te zorgen voor robuuste en krachtige builds van productieve AI/ML-oplossingen.

AI/ML-platforms verschillen op de volgende punten van andere informatiesystemen:

  • Teamcompetenties: bij het bouwen van een AI/ML-oplossing bestaat het team doorgaans uit datawetenschappers of datawetenschappers die data-analyse, modelontwikkeling en validatie uitvoeren. Deze teamleden zijn mogelijk geen professionele ontwikkelaars van productieve code.
  • Ontwikkeling: AI/ML-mechanismen zijn experimenteel van aard. Om het probleem op de meest efficiënte manier op te lossen, is het nodig om verschillende combinaties van invoervariabelen, algoritmen, modelleringsmethoden en modelparameters te doorzoeken. De complexiteit van een dergelijke zoektocht ligt in het traceren van "wat werkte / niet werkte", het waarborgen van reproduceerbaarheid van afleveringen, het generaliseren van ontwikkelingen voor terugkerende implementaties.
  • Testen: het testen van AI/ML-mechanismen vereist een groter aantal tests dan de meeste andere ontwikkelingen. Naast typische eenheids- en integratietests worden de validiteit van de gegevens en de kwaliteit van de resultaten van het toepassen van het model op trainings- en controlemonsters getest.
  • Implementatie: De implementatie van AI/ML-oplossingen is niet beperkt tot voorspellende services die een eenmaal getraind model toepassen. AI / ML-oplossingen zijn gebouwd rond pijplijnen met meerdere fasen die geautomatiseerde training en toepassing van modellen uitvoeren. Het implementeren van dergelijke pijplijnen omvat het automatiseren van niet-triviale stappen die traditioneel handmatig door datawetenschappers worden uitgevoerd om modellen te kunnen trainen en testen.
  • Productief: AI/ML-engines kunnen prestatieverlies lijden, niet alleen vanwege inefficiënte programmering, maar ook vanwege de steeds veranderende aard van de invoergegevens. Met andere woorden, de prestaties van AI/ML-mechanismen kunnen verslechteren vanwege een breder scala aan redenen dan de prestaties van conventionele ontwikkelingen. Dit resulteert in de noodzaak om (online) de prestaties van onze AI/ML-engines te monitoren en waarschuwingen te sturen of resultaten af ​​te wijzen als de prestaties niet aan de verwachtingen voldoen.

AI/ML-platforms zijn vergelijkbaar met andere informatiesystemen in die zin dat beide continue code-integratie vereisen met versiebeheer, testen van eenheden, integratietesten, continue ontwikkelingsimplementatie. In het geval van AI/ML zijn er echter enkele belangrijke verschillen:

  • CI (Continuous Integration) is niet langer beperkt tot het testen en valideren van de code van geïmplementeerde componenten – het omvat ook het testen en valideren van data en AI/ML-modellen.
  • CD (Continuous Delivery/Deployment, continuous deployment) beperkt zich niet tot het schrijven en uitbrengen van pakketten of diensten, maar impliceert een platform voor het samenstellen, aanleren en toepassen van AI/ML-oplossingen.
  • CT (Continuous Training, continu leren) - een nieuw element [ca. door de auteur van het artikel: een nieuw element ten opzichte van het traditionele concept van DevOps, waarin CT meestal Continuous Testing is], inherent aan AI / ML-platforms, verantwoordelijk voor het autonoom beheren van de mechanismen voor het leren en toepassen van AI / ML-modellen. ... "

We kunnen stellen dat machine learning en kunstmatige intelligentie die werken aan real-time data een bredere set tools en competenties vereisen (van code-ontwikkeling tot orkestratie van wiskundige modelleringsomgevingen), een nauwere integratie tussen alle functionele en vakgebieden, een efficiëntere organisatie van menselijke en machine middelen.

Realtime scenario: herkennen van de ontwikkeling van defecten in toevoerpompen

Als we het gebied van procesbesturing als voorbeeld blijven gebruiken, overweeg dan een specifieke taak (al aan het begin door ons genoemd): het is vereist om real-time monitoring te bieden van de ontwikkeling van defecten in pompen op basis van de stroom van procesparameters en rapporten van onderhoudspersoneel over geconstateerde defecten.

InterSystems IRIS - universeel realtime AI/ML-platform
Figuur 2 Formulering van de taak van het monitoren van de ontwikkeling van defecten

De eigenaardigheid van de meeste taken die in de praktijk op deze manier worden uitgevoerd, is dat de regelmaat en efficiëntie van gegevensontvangst (APCS) moet worden beschouwd tegen de achtergrond van het incidenteel en onregelmatig optreden (en registreren) van verschillende soorten defecten. Met andere woorden: de gegevens uit het procesbesturingssysteem komen eens per seconde goed-nauwkeurig, en defecten worden met een onuitwisbaar potlood met datum vastgelegd in het algemene notitieboek in de werkplaats (bijvoorbeeld: “12.01 - lek in de omslag van de zijde van het 3e lager”).

Het is dus mogelijk om de formulering van het probleem aan te vullen met de volgende belangrijke beperking: we hebben slechts één "label" van een defect van een bepaald type (d.w.z. een voorbeeld van een defect van een bepaald type wordt weergegeven door gegevens uit de procescontrolesysteem voor een specifieke datum - en we hebben niet meer voorbeelden van een defect van dit specifieke type). Deze beperking brengt ons meteen buiten de reikwijdte van klassiek machinaal leren (supervised learning), waarvoor heel wat “labels” zouden moeten bestaan.

InterSystems IRIS - universeel realtime AI/ML-platform
Figuur 3 Verfijning van de taak om de ontwikkeling van defecten te monitoren

Kunnen we op de een of andere manier het enige 'label' waarover we beschikken 'vermenigvuldigen'? Ja dat kunnen we. De huidige staat van de pomp kenmerkt zich door de mate van overeenkomst met geregistreerde gebreken. Zelfs zonder het gebruik van kwantitatieve methoden, kun je op het niveau van visuele perceptie al veel leren door de dynamiek van de gegevenswaarden die uit het procesbesturingssysteem komen te observeren:

InterSystems IRIS - universeel realtime AI/ML-platform
Figuur 4 Dynamiek van de toestand van de pomp tegen de achtergrond van het "merkteken" van een defect van een bepaald type

Maar visuele waarneming is (althans voorlopig) niet de meest geschikte generator van "tags" in ons snel veranderende scenario. We zullen de overeenkomst van de huidige staat van de pomp met de gemelde defecten evalueren met behulp van een statistische test.

InterSystems IRIS - universeel realtime AI/ML-platform
Figuur 5 Een statistische test toepassen op binnenkomende gegevens tegen de achtergrond van een “label” van een defect

De statistische test bepaalt de waarschijnlijkheid dat de records met de waarden van de technologische procesparameters in het "flow-pakket" ontvangen van het procesbesturingssysteem vergelijkbaar zijn met de "label" -records van een bepaald type defect. De waarschijnlijkheidswaarde die wordt berekend als resultaat van het toepassen van een statistische test (statistische gelijkenis-index) wordt geconverteerd naar een waarde van 0 of 1, en wordt een "label" voor machine learning in elk specifiek record in het gelijkenispakket. Dat wil zeggen, na het verwerken van het nieuw ontvangen pakket pompstatusrecords met een statistische test, hebben we de mogelijkheid om (a) dit pakket toe te voegen aan het trainingsvoorbeeld voor het trainen van het AI / ML-model en (b) de kwaliteit van de huidige versie van het model wanneer het wordt toegepast op dit pakket.

InterSystems IRIS - universeel realtime AI/ML-platform
Afbeelding 6 Een machine learning-model toepassen op binnenkomende gegevens tegen de achtergrond van een "label" van een defect

In een van onze vorige webinars we laten zien en leggen uit hoe u met het InterSystems IRIS-platform elk AI/ML-mechanisme kunt implementeren in de vorm van het continu uitvoeren van bedrijfsprocessen die de betrouwbaarheid van simulatieresultaten controleren en modelparameters aanpassen. Bij het implementeren van het prototype van ons scenario met pompen, gebruiken we alle InterSystems IRIS-functionaliteit die tijdens het webinar is gepresenteerd - implementatie in het analyseproces als onderdeel van onze oplossing, niet klassiek begeleid leren, maar eerder versterkend leren, dat automatisch het monster voor training bestuurt modellen. Er worden records in de trainingssteekproef geplaatst waarop een "detectieconsensus" ontstaat na toepassing van zowel de statistische test als de huidige versie van het model - d.w.z. zowel de statistische test (na transformatie van de gelijkenisindex naar 0 of 1), als de model produceerde een resultaat op dergelijke records 1. Met een nieuwe training van het model, tijdens de validatie (het nieuw getrainde model wordt toegepast op zijn eigen trainingssteekproef, met een voorafgaande toepassing van een statistische test erop), de records die "deed het resultaat niet vasthouden 1 na verwerking door de statistische test (vanwege de constante aanwezigheid in de training wordt de steekproef van records van het originele "label" van het defect) verwijderd uit de trainingssteekproef en leert de nieuwe versie van het model van het "label" van het defect plus de "vastgehouden" records van de stream.

InterSystems IRIS - universeel realtime AI/ML-platform
Figuur 7 Robotisering van AI/ML-berekeningen in InterSystems IRIS

Als er behoefte is aan een soort "second opinion" over de kwaliteit van de detectie verkregen door lokaal computergebruik in InterSystems IRIS, wordt een adviesproces gecreëerd om modellen voor het toepassen van trainingen uit te voeren op een besturingsdataset met behulp van cloudservices (bijvoorbeeld Microsoft Azure , Amazon Web Services , Google Cloud Platform, enz.):

InterSystems IRIS - universeel realtime AI/ML-platform
Figuur 8 Second Opinion van Microsoft Azure georkestreerd door InterSystems IRIS

Het prototype van ons scenario in InterSystems IRIS is gemaakt in de vorm van een agent-gebaseerd systeem van analytische processen die interageren met het apparatuurobject (pomp), wiskundige modelleringsomgevingen (Python, R en Julia), en zorgen voor zelfstudie van alle betrokken AI / ML-mechanismen - op realtime gegevensstromen.

InterSystems IRIS - universeel realtime AI/ML-platform
Afbeelding 9 Hoofdfunctionaliteit van real-time AI/ML-oplossing in InterSystems IRIS

Het praktische resultaat van ons prototype:

  • Defect patroon herkend door het model (12 januari):

InterSystems IRIS - universeel realtime AI/ML-platform

  • Een zich ontwikkelend defect dat door het model wordt herkend en dat niet in het monster was opgenomen (11 september, het defect zelf werd pas twee dagen later - 13 september) door het reparatieteam vastgesteld:

InterSystems IRIS - universeel realtime AI/ML-platform
Simulatie op echte gegevens met verschillende afleveringen van hetzelfde defect toonde aan dat onze oplossing, geïmplementeerd op het InterSystems IRIS-platform, ons in staat stelt om de ontwikkeling van defecten van dit type enkele dagen voordat ze door het reparatieteam worden ontdekt, te detecteren.

InterSystems IRIS - universeel realtime AI/ML-computerplatform

Het InterSystems IRIS-platform vereenvoudigt de ontwikkeling, implementatie en werking van real-time data-oplossingen. InterSystems IRIS is in staat om gelijktijdig transactionele en analytische gegevensverwerking uit te voeren; onderhouden van gesynchroniseerde weergaven van gegevens in overeenstemming met verschillende modellen (waaronder relationeel, hiërarchisch, object en document); fungeren als een integratieplatform voor een breed scala aan gegevensbronnen en individuele toepassingen; bieden geavanceerde realtime analyses van gestructureerde en ongestructureerde gegevens. InterSystems IRIS biedt ook mechanismen voor het gebruik van externe analytische tools, biedt de flexibiliteit om hosting in de cloud en op lokale servers te combineren.

Applicaties die op het InterSystems IRIS-platform zijn gebouwd, zijn in verschillende sectoren ingezet, waardoor bedrijven aanzienlijke economische waarde kunnen behalen vanuit een strategisch en operationeel perspectief, de besluitvorming verbeteren en de hiaten tussen gebeurtenis, analyse en actie dichten.

InterSystems IRIS - universeel realtime AI/ML-platform
Figuur 10 InterSystems IRIS-architectuur in de context van real-time AI/ML

Net als het vorige diagram combineert het onderstaande diagram het nieuwe "coördinatensysteem" (CD/CI/CT) met de informatiestroom tussen platformwerkitems. Visualisatie begint met het CD-macromechanisme en gaat verder met de CI- en CT-macromechanismen.

InterSystems IRIS - universeel realtime AI/ML-platform
Figuur 11 Schema van informatiestromen tussen AI/ML-elementen van het InterSystems IRIS-platform

De essentie van het CD-mechanisme in InterSystems IRIS: platformgebruikers (AI/ML-oplossingsontwikkelaars) passen bestaande en/of creëren nieuwe AI/ML-ontwikkelingen aan met behulp van een gespecialiseerde AI/ML-mechanismecode-editor: Jupyter (volledige naam: Jupyter Notebook; ook, kortheidshalve worden documenten die in deze editor zijn gemaakt soms genoemd). In Jupyter heeft een ontwikkelaar de mogelijkheid om de prestaties (inclusief het gebruik van afbeeldingen) van een specifieke AI / ML-ontwikkeling te schrijven, te debuggen en te verifiëren voordat deze wordt gehost ("geïmplementeerd") in InterSystems IRIS. Het is duidelijk dat een op deze manier gecreëerde nieuwe ontwikkeling alleen elementaire debugging zal krijgen (omdat Jupyter met name niet werkt met realtime datastromen) - dit is in de volgorde van zaken, omdat het belangrijkste resultaat van ontwikkeling in Jupyter is een bevestiging van de fundamentele werking van een afzonderlijk AI / ML-mechanisme ("toont het verwachte resultaat op het gegevensmonster"). Evenzo kan een mechanisme dat al in het platform is geplaatst (zie de volgende macromechanismen) voordat er in Jupyter wordt gedebugd, een "rollback" naar het "pre-platform"-formulier vereisen (gegevens uit bestanden lezen, met gegevens werken via xDBC in plaats van tabellen, directe interactie met globals - multidimensionale arrays van gegevens InterSystems IRIS - enz.).

Een belangrijk aspect van CD-implementatie in InterSystems IRIS is dat bidirectionele integratie wordt geïmplementeerd tussen het platform en Jupyter, waardoor u inhoud naar het platform kunt overbrengen (en verder kunt verwerken in het platform) in Python, R en Julia (alle drie zijn programmeertalen in de corresponderende toonaangevende open-source source-omgevingen van wiskundige modellering). Aldus hebben ontwikkelaars van AI/ML-inhoud de mogelijkheid om deze inhoud "continu op het platform te implementeren", werkend in hun vertrouwde Jupyter-editor, met bekende bibliotheken die beschikbaar zijn in Python, R, Julia, en het uitvoeren van elementaire debugging (indien nodig) buiten het platform. .

Laten we verder gaan met het macromechanisme van CI in InterSystems IRIS. Het diagram toont het macroproces van de "real-time robot" (een complex van datastructuren, bedrijfsprocessen en codefragmenten die door hen zijn georkestreerd in de talen van mats en de ObjectScript-taal - de moedertaal van InterSystems IRIS). De taak van dit macroproces is om de gegevenswachtrijen te onderhouden die nodig zijn voor de werking van AI / ML-mechanismen (gebaseerd op gegevensstromen die in realtime naar het platform worden verzonden), beslissingen te nemen over de volgorde van toepassing en het "bereik" van AI / ML-mechanismen (het zijn ook "wiskundige algoritmen", "modellen", enz. - kunnen anders worden genoemd, afhankelijk van de implementatiespecificaties en terminologische voorkeuren), gegevensstructuren up-to-date houden voor het analyseren van de resultaten van het werk van AI / ML-mechanismen (kubussen, tabellen, multidimensionale gegevensarrays, enz.) enz. - voor rapporten, dashboards, enz.).

Een belangrijk aspect van de implementatie van CI in InterSystems IRIS is dat bidirectionele integratie wordt geïmplementeerd tussen het platform en wiskundige modelleringsomgevingen, waardoor de inhoud die op het platform wordt gehost in Python, R en Julia in hun respectieve omgevingen kan worden uitgevoerd met de terugkeer van uitvoeringsresultaten . Deze integratie is geïmplementeerd in zowel "terminalmodus" (d.w.z. AI/ML-inhoud wordt geformuleerd als ObjectScript-code die mats aanroept) als "bedrijfsprocesmodus" (d.w.z. AI/ML-inhoud wordt geformuleerd als een bedrijfsproces met behulp van een grafische editor, of soms met behulp van Jupyter, of met behulp van een IDE - IRIS Studio, Eclipse, Visual Studio Code). De bewerkbaarheid van bedrijfsprocessen in Jupyter wordt weerspiegeld door de relatie tussen IRIS op CI-niveau en Jupyter op CD-niveau. Hieronder vindt u een meer gedetailleerd overzicht van de integratie met wiskundige modelleringsomgevingen. In dit stadium is er naar onze mening alle reden om de aanwezigheid in het platform van alle benodigde tools te verbeteren om de "continue integratie" van AI / ML-ontwikkelingen (afkomstig van "continue implementatie") te implementeren in realtime AI / ML-oplossingen.

En het belangrijkste macromechanisme: CT. Zonder dit zal er geen AI / ML-platform zijn (hoewel "realtime" zal worden geïmplementeerd via CD / CI). De essentie van CT is het werk van het platform met de "artefacten" van machine learning en kunstmatige intelligentie direct in de werksessies van wiskundige modelleringsomgevingen: modellen, distributietabellen, matrixvectoren, lagen van neurale netwerken, enz. Dit "werk" bestaat in de meeste gevallen uit het creëren van de genoemde artefacten in de omgevingen (in het geval van modellen bestaat "creatie" bijvoorbeeld uit het instellen van de modelspecificatie en de daaropvolgende selectie van de waarden van de parameters - de zogenaamde "training" van het model), hun toepassing (voor modellen: ze gebruiken om "model" -waarden van doelvariabelen te berekenen - prognoses, behorend tot een categorie, de waarschijnlijkheid dat een gebeurtenis zich voordoet, enz.) en verbetering reeds gecreëerde en toegepaste artefacten (bijvoorbeeld het herdefiniëren van de set modelinvoervariabelen op basis van de resultaten van de toepassing - om de voorspellingsnauwkeurigheid te vergroten, als optie). Het belangrijkste punt bij het begrijpen van de rol van CT is de "abstractie" van de realiteit van CD en CI: CT zal alle artefacten implementeren, met de nadruk op de computationele en wiskundige details van de AI / ML-oplossing binnen de mogelijkheden van specifieke omgevingen . De verantwoordelijkheid voor "aanleveren van inputgegevens" en "leveren van resultaten" zal de verantwoordelijkheid zijn van CD en CI.

Een belangrijk aspect van CT-implementatie in InterSystems IRIS: door gebruik te maken van de integratie met wiskundige modelleringsomgevingen die hierboven al zijn genoemd, heeft het platform de mogelijkheid om dezelfde artefacten te extraheren uit werksessies die onder zijn controle in de omgevingen draaien en (het belangrijkste) om te zetten in platform gegevens objecten. Zo kan een distributietabel die net is gemaakt in een werkende Python-sessie (zonder de sessie in Python te stoppen) worden overgebracht naar het platform in de vorm van bijvoorbeeld een globale (multidimensionale InterSystems IRIS data-array) - en gebruikt voor berekeningen in een ander AI/ML-mechanisme (reeds geïmplementeerd in de taal van een andere omgeving - bijvoorbeeld in R) - of een virtuele tabel. Een ander voorbeeld: parallel aan de "normale modus" van de modelbewerking (in de Python-werksessie), wordt "auto-ML" uitgevoerd op de invoergegevens: automatische selectie van optimale invoervariabelen en parameterwaarden. En naast de "gewone" training krijgt het productieve model in realtime ook een "optimalisatievoorstel" voor zijn specificatie - waarin de set invoervariabelen verandert, de parameterwaarden veranderen (niet als resultaat van training in Python , maar als resultaat van het trainen van een “alternatieve versie van zichzelf, zoals in de H2O-stack), waardoor de algehele AI/ML-oplossing autonoom kan omgaan met onvoorziene veranderingen in de aard van de invoergegevens en de fenomenen die worden gemodelleerd.

Laten we meer in detail kennis maken met de platform AI / ML-functionaliteit van InterSystems IRIS, aan de hand van het voorbeeld van een real-life prototype.

In het onderstaande diagram, aan de linkerkant van de dia, is er een deel van het bedrijfsproces dat de verwerking van scripts in Python en R implementeert. In het centrale deel zijn er visuele logboeken voor de uitvoering van sommige van deze scripts, respectievelijk in Python en R. Direct erachter staan ​​voorbeelden van inhoud in de ene en de andere taal, ingediend voor uitvoering in de juiste omgevingen. Aan het einde aan de rechterkant staan ​​visualisaties op basis van de resultaten van scriptuitvoering. De visualisaties bovenaan zijn gemaakt op IRIS Analytics (de gegevens worden van Python naar het InterSystems IRIS-dataplatform gehaald en weergegeven op het dashboard met behulp van het platform), onderaan worden ze rechtstreeks in de R-werksessie gemaakt en van daaruit uitgevoerd naar grafische bestanden. Een belangrijk aspect: het gepresenteerde fragment in het prototype is verantwoordelijk voor het trainen van het model (classificatie van apparatuurstatussen) op gegevens die in realtime afkomstig zijn van de processimulator van de apparatuur, op commando van de procesmonitor van de kwaliteit van de classificatie waargenomen tijdens de toepassing van het model. De implementatie van een AI/ML-oplossing als een reeks op elkaar inwerkende processen ("agenten") zal verder worden besproken.

InterSystems IRIS - universeel realtime AI/ML-platform
Afbeelding 12 Interactie met Python, R en Julia in InterSystems IRIS

Platformprocessen (het zijn ook "bedrijfsprocessen", "analytische processen", "pijplijnen", enz. - afhankelijk van de context) worden voornamelijk in een grafische bedrijfsproceseditor in het platform zelf bewerkt, en wel zo dat beide het blokschema en het bijbehorende AI/ML-mechanisme (programmacode) worden gelijktijdig gemaakt. Sprekend over het feit dat “een AI/ML-mechanisme wordt verkregen”, bedoelen we in eerste instantie hybriditeit (binnen hetzelfde proces): inhoud in talen van wiskundige modelleringsomgevingen grenst aan inhoud in SQL (inclusief extensies van GeïntegreerdeML), in InterSystems ObjectScript, met andere ondersteunde talen. Bovendien biedt het platformproces zeer brede mogelijkheden om te "tekenen" in de vorm van hiërarchisch geneste fragmenten (zoals te zien is in het voorbeeld in het onderstaande diagram), waardoor u zelfs zeer complexe inhoud effectief kunt ordenen zonder uit het systeem te "vallen". het grafische formaat overal (in "niet-grafische" methoden/klassen/procedures, enz.). Dat wil zeggen, indien nodig (en dat wordt verwacht in de meeste projecten), kunnen absoluut alle AI / ML-oplossingen worden geïmplementeerd in een grafisch, zelfbecommentariërend formaat. Houd er rekening mee dat in het centrale deel van het onderstaande diagram, dat een hoger "nestniveau" laat zien, u kunt zien dat naast het daadwerkelijke werk van het trainen van het model (met behulp van Python en R), een analyse van de zogenaamde ROC curve van het getrainde model is toegevoegd, waardoor de kwaliteit van training visueel (en ook computationeel) kan worden beoordeeld - en deze analyse wordt geïmplementeerd in de Julia-taal (deze wordt respectievelijk uitgevoerd in de Julia-omgeving).

InterSystems IRIS - universeel realtime AI/ML-platform
Afbeelding 13 Visuele omgeving voor het samenstellen van AI/ML-oplossingen in InterSystems IRIS

Zoals eerder vermeld, zal / kan de initiële ontwikkeling en (in sommige gevallen) aanpassing van AI / ML-mechanismen die al in het platform zijn geïmplementeerd, buiten het platform worden gedaan in de Jupyter-editor. In het onderstaande diagram zien we een voorbeeld van het aanpassen van een bestaand platformproces (hetzelfde als in het bovenstaande diagram) - zo ziet het fragment dat verantwoordelijk is voor het trainen van het model eruit in Jupyter. Python-inhoud is beschikbaar voor bewerking, foutopsporing en grafische uitvoer rechtstreeks in Jupyter. Wijzigingen (indien nodig) kunnen worden aangebracht met onmiddellijke synchronisatie met het platformproces, inclusief de productieversie. Op dezelfde manier kan nieuwe inhoud naar het platform worden overgebracht (er wordt automatisch een nieuw platformproces gegenereerd).

InterSystems IRIS - universeel realtime AI/ML-platform
Afbeelding 14 Jupyter Notebook gebruiken om AI/ML-engine te bewerken in InterSystems IRIS Platform

Aanpassing van het platformproces kan niet alleen in grafisch of notebookformaat worden uitgevoerd, maar ook in het "totale" IDE-formaat (Integrated Development Environment). Deze IDE's zijn IRIS Studio (native IRIS studio), Visual Studio Code (InterSystems IRIS-extensie voor VSCode) en Eclipse (Atelier-plug-in). In sommige gevallen is het voor het ontwikkelteam mogelijk om alle drie de IDE's tegelijkertijd te gebruiken. Het onderstaande diagram toont een voorbeeld van het bewerken van hetzelfde proces in IRIS studio, in Visual Studio Code en in Eclipse. Absoluut alle inhoud is beschikbaar voor bewerking: Python / R / Julia / SQL, en ObjectScript, en een bedrijfsproces.

InterSystems IRIS - universeel realtime AI/ML-platform
Figuur 15 Ontwikkeling van het InterSystems IRIS-bedrijfsproces in verschillende IDE's

Speciale vermelding verdienen de InterSystems IRIS-tools voor de beschrijving en uitvoering van bedrijfsprocessen in de Business Process Language (BPL). BPL maakt het mogelijk om "kant-en-klare integratiecomponenten" (activiteiten) te gebruiken in bedrijfsprocessen - wat in feite alle reden geeft om te stellen dat "continue integratie" is geïmplementeerd in InterSystems IRIS. Kant-en-klare bedrijfsprocescomponenten (activiteiten en koppelingen daartussen) zijn de krachtigste versneller voor het samenstellen van een AI/ML-oplossing. En niet alleen assemblages: dankzij de activiteiten en verbindingen daartussen, over ongelijksoortige AI / ML-ontwikkelingen en mechanismen, verschijnt een "autonome managementlaag" die in staat is om beslissingen te nemen op basis van de situatie, in realtime.

InterSystems IRIS - universeel realtime AI/ML-platform
Afbeelding 16 Kant-en-klare bedrijfsprocescomponenten voor continue integratie (CI) op het InterSystems IRIS-platform

Het concept van agentsystemen (het zijn ook "multi-agentsystemen") heeft een sterke positie in robotica, en het InterSystems IRIS-platform ondersteunt dit organisch door middel van de "product-proces"-constructie. Naast onbeperkte mogelijkheden om elk proces te "vullen" met de functionaliteit die nodig is voor de algehele oplossing, kunt u door het systeem van platformprocessen de eigenschap "agency" te geven, effectieve oplossingen creëren voor extreem onstabiele gesimuleerde fenomenen (gedrag van sociale/biosystemen , gedeeltelijk waarneembare technologische processen, enz.).

InterSystems IRIS - universeel realtime AI/ML-platform
Afbeelding 16 Werking van AI/ML-oplossing als een bedrijfsprocesagentsysteem in InterSystems IRIS

We vervolgen onze bespreking van InterSystems IRIS met een verhaal over de toepassing van het platform voor het oplossen van hele klassen real-time problemen (een vrij gedetailleerde kennismaking met enkele van de best practices van platform AI / ML op InterSystems IRIS vindt plaats in een van onze vorige webinars).

In navolging van het vorige diagram, is hieronder een meer gedetailleerd diagram van het agentsysteem. Het diagram toont hetzelfde prototype, alle vier agentprocessen zijn zichtbaar, de relaties ertussen zijn schematisch getekend: GENERATOR - zorgt voor het creëren van gegevens door apparatuursensoren, BUFFER - beheert gegevenswachtrijen, ANALYZER - voert zelf machine learning uit, MONITOR - bestuurt de kwaliteit van machine learning en geeft een signaal dat het model opnieuw moet worden getraind.

InterSystems IRIS - universeel realtime AI/ML-platform
Afbeelding 17 Samenstelling van een AI/ML-oplossing als een bedrijfsprocesagentsysteem in InterSystems IRIS

Het onderstaande diagram illustreert de autonome werking van een ander robotachtig prototype (emotionele tekstherkenning) gedurende enige tijd. In het bovenste deel - de evolutie van de modelleerkwaliteitsindicator (de kwaliteit groeit), in het onderste deel - de dynamiek van de modeltoepassingskwaliteitsindicator en de feiten van herhaalde training (rode balken). Zoals u kunt zien, heeft de oplossing zichzelf efficiënt en autonoom geleerd en werkt op een bepaald kwaliteitsniveau (de waarden van de kwaliteitsindicator komen niet onder de 80%).

InterSystems IRIS - universeel realtime AI/ML-platform
Figuur 18 Continu (zelf)leren (CT) op het InterSystems IRIS-platform

We noemden eerder ook “auto-ML”, maar onderstaand schema geeft de toepassing van deze functionaliteit in detail weer aan de hand van een ander prototype als voorbeeld. Het grafische diagram van het bedrijfsprocesfragment toont de activiteit die de simulatie in de H2O-stack start, toont de resultaten van deze simulatie (duidelijke dominantie van het resulterende model over de "door de mens gemaakte" modellen, volgens de vergelijkende grafiek van ROC-curven , evenals geautomatiseerde identificatie van de "meest invloedrijke variabelen" uit de originele dataset). Het belangrijke punt hier is de besparing van tijd en deskundige middelen, die wordt bereikt door "auto-ML": wat ons platformproces in een halve minuut doet (het optimale model vinden en trainen), kan een expert een week tot een maand.

InterSystems IRIS - universeel realtime AI/ML-platform
Afbeelding 19 Auto-ML-integratie in AI/ML-oplossing op basis van InterSystems IRIS-platform

Het onderstaande diagram "haalt de climax een beetje naar beneden", maar dit is een goede manier om het verhaal over de klassen van real-time problemen die worden opgelost af te ronden: we herinneren u eraan dat met alle mogelijkheden van het InterSystems IRIS-platform, trainingsmodellen onder de controle ervan is niet verplicht. Het platform kan extern een zogenaamde PMML-modelspecificatie verkrijgen die is getraind in een tool die niet door het platform wordt beheerd - en dit model in realtime toepassen vanaf het moment dat het wordt geïmporteerd PMML-specificaties. Tegelijkertijd is het belangrijk om er rekening mee te houden dat niet alle AI/ML-artefacten kunnen worden gereduceerd tot een PMML-specificatie, zelfs als de meeste van de meest voorkomende artefacten dit wel toestaan. Het InterSystems IRIS-platform heeft dus een "open lus" en betekent niet "platformslavernij" voor gebruikers.

InterSystems IRIS - universeel realtime AI/ML-platform
Afbeelding 20 Auto-ML-integratie in AI/ML-oplossing op basis van InterSystems IRIS-platform

We sommen de aanvullende platformvoordelen van InterSystems IRIS op (voor de duidelijkheid, in relatie tot procesbeheersing), die van groot belang zijn bij de automatisering van kunstmatige intelligentie en real-time machine learning:

  • Geavanceerde integratietools met alle gegevensbronnen en consumenten (PCS/SCADA, apparatuur, MRO, ERP, enz.)
  • Ingebouwd DBMS met meerdere modellen voor krachtige transactie-analytische verwerking (Hybrid Transaction/Analytical Processing, HTAP) van alle hoeveelheden procesgegevens
  • Ontwikkeltools voor continue inzet van real-time AI/ML-beslissingsengines op basis van Python, R, Julia
  • Adaptieve bedrijfsprocessen voor continue integratie en (zelf)lerende mechanismen van realtime AI/ML-oplossingen
  • Geïntegreerde Business Intelligence-tools voor het visualiseren van procesgegevens en resultaten van AI/ML-oplossingen
  • API-beheer om de resultaten van de AI / ML-oplossing te leveren aan procescontrolesystemen / SCADA, informatie- en analytische systemen, het verzenden van waarschuwingen, enz.

AI/ML-oplossingen op basis van het InterSystems IRIS-platform passen eenvoudig in de bestaande IT-infrastructuur. Het IRIS-platform van InterSystems biedt een hoge betrouwbaarheid van AI/ML-oplossingen door ondersteuning voor fouttolerante en rampentolerante configuraties en flexibele implementatie in virtuele omgevingen, op fysieke servers, in private en publieke clouds, Docker-containers.

InterSystems IRIS is dus een universeel real-time AI/ML-computerplatform. De universaliteit van ons platform wordt in de praktijk bevestigd door de afwezigheid van de facto beperkingen op de complexiteit van geïmplementeerde berekeningen, het vermogen van InterSystems IRIS om (in realtime) de verwerking van scenario's uit een grote verscheidenheid aan industrieën te combineren, en het uitzonderlijke aanpassingsvermogen van alle functies en mechanismen van het platform aan specifieke gebruikersbehoeften.

InterSystems IRIS - universeel realtime AI/ML-platform
Afbeelding 21 InterSystems IRIS - Universeel real-time AI/ML-computerplatform

Voor een meer inhoudelijke interactie met onze lezers die geïnteresseerd zijn in het hier gepresenteerde materiaal, raden we u aan om u niet te beperken tot het lezen ervan en de dialoog "live" voort te zetten. We bieden graag ondersteuning bij het formuleren van real-time AI / ML-scenario's in relatie tot de specifieke kenmerken van uw bedrijf, het uitvoeren van gezamenlijke prototyping op het InterSystems IRIS-platform, het vormen en in de praktijk brengen van een roadmap voor de introductie van kunstmatige intelligentie en machine learning in uw productie- en beheerprocessen. Het e-mailadres voor contact van onze AI/ML-expertgroep is [e-mail beveiligd].

Bron: www.habr.com

Voeg een reactie