Författare: Sergey Lukyanchikov, konsultingenjör pÄ InterSystems
Utmaningar med AI/ML-berÀkningar i realtid
LÄt oss börja med exempel frÄn Data Science-erfarenheten hos InterSystems:
- Den 'överbelastade' kundportalen Àr ansluten till ett online rekommendationssystem. Omstrukturering av kampanjer över detaljhandelsnÀtet Àr nödvÀndig (lÄt sÀga att istÀllet för en 'platt' kampanjlinje kommer en 'segment-taktik'-matris att tillÀmpas). Vad hÀnder med de rekommendationsmekanismer? Vad hÀnder med inskick och uppdatering av data till rekommendationssystemet (ingÄngsdata har ökat 25 000 gÄnger)? Vad hÀnder med genereringen av rekommendationer (ett behov av att tusenfaldigt sÀnka filtreringströskeln för rekommendationsregler pÄ grund av en tusenfaldig ökning av deras antal och 'sortiment')?
- Det finns ett system för övervakning av sannolikheten för defekter i utrustningens noder. Det övervakningssystemet har fÄtt anslutning till ett automatisk kontrollsystem (ACS) som skickar tusentals parametrar frÄn den tekniska processen varje sekund. Vad hÀnder med övervakningssystemet, som tidigare arbetade med 'manuella urval' (kan det sÀkerstÀlla övervakning av sannolikheten varje sekund)? Vad kommer att hÀnda om det i ingÄngsdata dyker upp en ny block med ett par hundra kolumner frÄn nya sensordata, nyligen implementerade i ACS (kommer det att behöva stÀngas av och hur lÀnge för att inkludera nya sensorer i dataanalysen)?
- Ett komplex av AI/ML-mekanismer (rekommendations-, övervaknings- och prognossystem) har skapats, som anvÀnder varandras resultat. Hur mÄnga mÀnskliga timmar krÀvs varje mÄnad för att anpassa detta komplex till förÀndringar i ingÄngsdata? Vad Àr det totala 'fördröjningen' i det stödjande beslutsfattande systemet (frekvensen av ny stödinformation i förhÄllande till frekvensen av nya ingÄngsdata)?
Sammanfattande av dessa och mÄnga andra exempel har vi kommit fram till formuleringen av de utmaningar som uppstÄr vid övergÄngen till att anvÀnda system för maskininlÀrning och artificiell intelligens i realtid:
- Ăr vi nöjda med snabbheten i skapandet och anpassningen (till den förĂ€nderliga situationen) av AI/ML-utvecklingar i vĂ„rt företag?
- Hur stödjer vÄra AI/ML-lösningar affÀrsledning i realtid?
- Kan vÄra AI/ML-lösningar sjÀlva (utan utvecklare) anpassa sig till förÀndringar i data och affÀrsledning?
VÄr artikel Àr en grundlig översikt av plattformen InterSystems IRIS:s möjligheter nÀr det gÀller universellt stöd för implementering av AI/ML-mekanismer, integration av AI/ML-lösningar och trÀning av AI/ML-lösningar pÄ intensiva dataloggar. Vi kommer att titta pÄ marknadsundersökningar, praktiska exempel pÄ AI/ML-lösningar och konceptuella aspekter av det vi kallar AI/ML-plattformar i realtid i denna artikel.
Vad visar enkÀterna: realtidsapplikationer
Resultat , genomförda bland omkring 800 IT-professionella Är 2019 av Lightbend, talar för sig sjÀlva:

Figur 1 Ledande anvÀndare av realtidsdata
LÄt oss citera viktiga delar av rapporten om resultaten frÄn denna undersökning i vÄr översÀttning:
«⊠Trenderna kring populariteten av dataintegrationsverktyg och samtidigt stöd för berĂ€kningar i containrar ger ett synergistiskt svar pĂ„ marknadens krav pĂ„ mer snabba, rationella och dynamiska erbjudanden av effektiva lösningar. Datastreamar möjliggör snabbare informationsöverföring Ă€n traditionella batchdata. DĂ€rtill kommer möjligheten att snabbt tillĂ€mpa berĂ€kningsmetoder som, exempelvis, AI/ML-baserade rekommendationer, vilket skapar konkurrensfördelar genom ökad kundnöjdhet. Kappseglan om snabbhet pĂ„verkar ocksĂ„ alla roller inom DevOps-paradigm â och ökar effektiviteten i utveckling och implementering av applikationer. ⊠à ttahundrafyra IT-specialister gav information om anvĂ€ndningen av datastreamar i sina organisationer. Respondenterna fanns huvudsakligen i vĂ€sterlĂ€ndska lĂ€nder (41% i Europa och 37% i Nordamerika) och var i stort sett jĂ€mnt fördelade mellan smĂ„, medelstora och stora företag. âŠ
Artificiell intelligens Àr inget hype. FemtiotvÄ procent av dem som redan tillÀmpar datastream-behandling i produktiva AI/ML-applikationer bekrÀftar att deras anvÀndning inom AI/ML kommer att se den största tillvÀxten nÀsta Är (jÀmfört med andra applikationer).
- Enligt de flesta tillfrÄgade kommer anvÀndningen av datastreams i AI/ML-scenarier att fÄ den största tillvÀxten nÀsta Är.
- AnvÀndningen inom AI/ML kommer att öka inte bara pÄ grund av relativt nya typer av scenarier, utan Àven genom traditionella scenarier dÀr realtidsdata anvÀnds allt mer intensivt.
- Utöver AI/ML Ă€r entusiasmen bland anvĂ€ndare av IoT-datastreams imponerande â 48% av dem som redan har integrerat IoT-data hĂ€vdar att implementeringen av scenarier pĂ„ dessa data kommer att fĂ„ en betydande ökning inom en snar framtid.
Denna ganska intressanta undersökning visar att uppfattningen om maskininlÀrnings- och artificiell intelligens-scenarier som ledare inom datastream-konsumtion redan "Àr pÄ vÀg". Men en minst lika viktig observation blir uppfattningen av AI/ML i realtid ur DevOps-optik: hÀr kan man redan börja prata om en transformation av den fono fortfarande rÄdande kulturen "engÄngs-AI/ML med helt tillgÀnglig dataset".
Konceptet för en AI/ML-plattform i realtid
Ett typiskt tillÀmpningsomrÄde för AI/ML i realtid Àr styrning av teknologiska processer inom tillverkning. Med hÀnsyn till tidigare reflektioner kan vi formulera konceptet för en AI/ML-plattform i realtid.
AnvÀndningen av artificiell intelligens och maskininlÀrning inom styrning av teknologiska processer har flera sÀrdrag:
- Data om tillstÄndet i den teknologiska processen kommer in intensivt: med hög frekvens och över ett brett spektrum av parametrar (upp till tiotusentals parameteravlÀsningar som överförs per sekund frÄn processautomationssystems).
- Data om upptÀckta defekter, för att inte tala om data om deras utveckling, Àr Ä sin sida knapphÀndiga och oregelbundna, kÀnnetecknas av otillrÀcklig typisering av defekter och deras lokalisering över tid (ofta representerade med anteckningar pÄ papper).
- Ur praktisk synvinkel Àr endast "relevansfönstret" för de ursprungliga data tillgÀngligt för trÀning och tillÀmpning av modeller, vilket speglar dynamiken i den teknologiska processen under ett rimligt rörligt intervall, avslutande med de senaste lÀsta vÀrdena av processparametrarna.
Dessa egenskaper tvingar oss, förutom att ta emot och grundbehandla den intensiva "bredbandingĂ„ngssignalen" frĂ„n den teknologiska processen i realtid, att Ă€ven utföra (parallellt) tillĂ€mpning, trĂ€ning och kvalitetskontroll av resultaten frĂ„n AI/ML-modellerna â ocksĂ„ i realtid. Det "bildruta" som vĂ„ra modeller "ser" i det rörliga relevansfönstret förĂ€ndras stĂ€ndigt â och tillsammans med det förĂ€ndras Ă€ven kvaliteten pĂ„ resultaten frĂ„n AI/ML-modellerna, trĂ€nade pĂ„ en av "bilderna" i det förflutna. Vid försĂ€mring av kvaliteten pĂ„ resultaten frĂ„n AI/ML-modellerna (till exempel: klassifikationsfelet "alarmerad-norm" gĂ„r utanför de grĂ€nser vi definierat) mĂ„ste en automatisk omtrĂ€ning av modellerna pĂ„ en mer aktuell "bild" startas â och tidpunkten för att starta omtrĂ€ningen av modellerna mĂ„ste ta hĂ€nsyn till bĂ„de lĂ€ngden pĂ„ sjĂ€lva trĂ€ningen samt dynamiken i försĂ€mringen av kvaliteten pĂ„ den aktuella versionen av modellerna (eftersom de aktuella versionerna av modellerna fortsĂ€tter att tillĂ€mpas medan modellerna trĂ€nas, och tills deras "nytrĂ€nade" versioner har bildats).
InterSystems IRIS har nyckelfunktionalitet för att möjliggöra drift av AI/ML-lösningar vid styrning av teknologiska processer i realtid. Dessa funktioner kan delas in i tre huvudgrupper:
- Kontinuerlig utrullning (Continuous Deployment/Delivery, CD) av nya eller anpassade befintliga AI/ML-mekanismer till en produktionslösning som fungerar i realtid pÄ InterSystems IRIS-plattformen.
- Kontinuerlig integration (Continuous Integration, CI) av de inkommande datavströmmarna frÄn den teknologiska processen, dataköer för tillÀmpning/trÀning/kontroll av kvaliteten pÄ AI/ML-mekanismerna och databyten/kod/styrande ÄtgÀrder med miljöer för matematisk modellering, vars orkestrering sker i realtid av InterSystems IRIS-plattformen.
- Kontinuerlig (sjÀlv-)lÀrande (Continuous Training, CT) AI/ML-mekanismer, som utförs i matematiska simuleringsmiljöer med hjÀlp av data, kod och styrÄtgÀrder ("fattade beslut"), överförda av plattformen InterSystems IRIS
Klassificeringen av plattformens kapabiliteter relaterad till maskininlÀrning och artificiell intelligens Àr avsiktlig just i sÄdana grupper. LÄt oss citera den metodologiska metoden frÄn Google, dÀr den konceptuella grunden för denna klassificering lÀggs i vÄr översÀttning:
â⊠Den idag populĂ€ra konceptet DevOps omfattar utvecklingen och driften av storskaliga informationssystem. Fördelarna med att införa detta koncept inkluderar kortare utvecklingscykler, snabbare distribution av utveckling, och flexibilitet i planeringen av releaser. För att uppnĂ„ dessa fördelar förutsĂ€tter DevOps införandet av Ă„tminstone tvĂ„ praktiker:
- Continuous Integration (CI)
- Continuous Delivery (CD)
Dessa praktiker gĂ€ller Ă€ven för AI/ML-plattformar â för att sĂ€kerstĂ€lla en pĂ„litlig och produktiv byggnation av effektiva AI/ML-lösningar.
AI/ML-plattformar skiljer sig frÄn andra informationssystem pÄ följande sÀtt:
- Teamets kompetenser: NÀr man skapar en AI/ML-lösning inkluderar teamet vanligtvis data scientists eller akademiska experter inom datavetenskap, som genomför dataanalys, utveckling och testning av modeller. Dessa teammedlemmar behöver kanske inte vara professionella utvecklare av produktiv programkod.
- Utveckling: AI/ML-mekanismer Àr experimentella av sin natur. För att lösa ett problem pÄ det mest effektiva sÀttet krÀvs det att man prövar olika kombinationer av ingÄngsvariabler, algoritmer, modelleringsmetoder och modelparametrar. SvÄrigheten med denna prövning ligger i att spÄra "vad som fungerade / inte fungerade", sÀkerstÀlla reproducerbarhet av episoder och generalisera utvecklingen för upprepade implementeringar.
- Testning: Testningen av AI/ML-mekanismer krÀver ett bredare spektrum av tester Àn de flesta andra utvecklingar. Utöver typiska enhets- och integrationstester testas validiteten av data, kvaliteten pÄ resultaten av modellens tillÀmpning pÄ trÀnings- och kontrollgrupper.
- Distribution: Distribution of AI/ML solutions is not limited to predictive services using a once-trained model. AI/ML solutions are built around multi-stage pipelines that perform automated training and application of models. Deploying such pipelines involves automating non-trivial tasks traditionally performed manually by data scientists, in order to enable the training and testing of models.
- Productivity: AI/ML mechanisms can lack performance not only due to inefficient programming but also because of the constantly changing nature of input data. In other words, the performance of AI/ML mechanisms can degrade for a wider range of reasons than the performance of conventional developments. This leads to the necessity of monitoring (in 'real-time') the performance of our AI/ML mechanisms, as well as sending alerts or discarding results if performance metrics do not meet expectations.
AI/ML platforms are similar to other information systems in that both require continuous code integration with version control, modular testing, integration testing, and continuous deployment of developments. However, in the case of AI/ML, there are several important differences:
- CI (Continuous Integration) is no longer limited to testing and validating the code of deployed components â it also includes testing and validating data and AI/ML models.
- CD (Continuous Delivery/Deployment) is not limited to writing and releasing packages or services, but implies a platform for composing, training, and applying AI/ML solutions.
- CT (Continuous Training) â a new element [author's note: a new element in relation to the traditional DevOps concept, where CT is generally Continuous Testing], inherent to AI/ML platforms, responsible for autonomous management of the training and application mechanisms of AI/ML models. âŠ
Vi kan konstatera att maskininlÀrning och artificiell intelligens, som arbetar med realtidsdata, krÀver en bredare uppsÀttning verktyg och kompetenser (frÄn kodutveckling till orkestrering av miljöer för matematisk modellering), nÀrmare integration mellan alla funktionella och ÀmnesmÀssiga omrÄden samt en mer effektiv organisation av mÀnskliga och maskinella resurser.
Realtidsscenario: igenkÀnning av defektutveckling i nutritionspumpar
För att fortsÀtta med ett exempel inom omrÄdet för processtyrning, lÄt oss betrakta en specifik uppgift (som redan nÀmnts i början): att övervaka utvecklingen av defekter i pumpar i realtid baserat pÄ flödet av vÀrden för processteknikparametrar och rapporter frÄn underhÄllspersonal om upptÀckta defekter.

Bild 2 Formulering av uppgiften för övervakning av defektutveckling
En egenskap hos de flesta av dessa uppgifter i praktiken Ă€r att regelbundenheten och snabbheten i datainflödet (processkontrollsystem) mĂ„ste ses mot bakgrund av sporadiken och oregelbundenheten i uppkomsten (och registreringen) av olika typer av defekter. Med andra ord: data frĂ„n processkontrollsystemet kommer i sekunder som Ă€r korrekta och exakta, medan defekter registreras med en kemisk penna med datum i en gemensam anteckningsbok i verkstaden (till exempel: "12.01 â lĂ€ckage vid 3:e lagerhĂ„llare").
DĂ€rmed kan vi komplettera formuleringen av uppgiften med ett viktigt begrĂ€nsande villkor: "etiketten" för en specifik typ av defekt Ă€r endast en (det vill sĂ€ga ett exempel pĂ„ defekten av en specifik typ presenteras med data frĂ„n processtyrningssystemet pĂ„ ett specifikt datum â och vi har inga fler exempel pĂ„ just denna typ av defekt). Denna begrĂ€nsning för oss omedelbart utanför ramverket för klassisk maskininlĂ€rning (övervakad inlĂ€rning), dĂ€r det mĂ„ste finnas mĂ„nga "etiketter".

Bild 3 Förtydligande av uppgiften för övervakning av defektutveckling
Kan vi pĂ„ nĂ„got sĂ€tt "duplikera" den enda "etikett" vi har tillgĂ„ng till? Ja, det kan vi. Det nuvarande tillstĂ„ndet för pumpen karakteriseras av likhetsgraden med registrerade defekter. Ăven utan att anvĂ€nda kvantitativa metoder kan man, pĂ„ nivĂ„ av visuell uppfattning, lĂ€ra sig mycket genom att observera dynamiken i vĂ€rdena frĂ„n det automatiserade styrsystemet (ASUTP).

Figur 4 Pumpens tillstÄndsdynamik mot "etiketten" för den angivna typen av defekt
Men visuell uppfattning (Ätminstone för tillfÀllet) Àr inte den mest lÀmpliga generatorn för "etiketter" i vÄrt snabbt förÀnderliga scenario. Vi kommer att bedöma likheten mellan pumpens aktuella tillstÄnd och registrerade defekter med hjÀlp av ett statistiskt test.

Figur 5 TillÀmpning av statistiskt test pÄ inkommande data mot "etiketten" för defekten
Det statistiska testet bestÀmmer sannolikheten att poster med vÀrden av processparametrar i det 'flödespaket' som erhÄllits frÄn ASUTP liknar poster med "etiketten" för en viss typ av defekt. Det berÀknade sannolikhetsvÀrdet (statistiklikhetsindexet) transformerar till ett vÀrde mellan 0 och 1, vilket blir en "etikett" för maskininlÀrning i varje specifik post i det undersökta paketet. Det vill sÀga, efter att ha bearbetat det nya paketet med poster om pumpens status med det statistiska testet har vi möjlighet att (a) lÀgga till detta paket i trÀningsuppsÀttningen för att trÀna AI/ML-modellen och (b) utföra kvalitetskontroll av den aktuella modelversionen nÀr den tillÀmpas pÄ detta paket.

Figur 6 TillÀmpning av maskininlÀrningsmodellen pÄ inkommande data mot "etiketten" för defekten
I ett av vÄra tidigare Vi visar och förklarar hur plattformen InterSystems IRIS möjliggör implementering av vilken AI/ML-mekanism som helst som kontinuerligt körs i affÀrsprocesser, som kontrollerar noggrannheten hos simuleringsresultaten och anpassar modellparametrarna. NÀr vi realiserar prototypen av vÄrt scenario med pumpar anvÀnder vi hela den funktionalitet som presenterades under webbinariet frÄn InterSystems IRIS - genom att implementera en analysprocess i vÄr lösning inte med klassisk övervakad inlÀrning, utan snarare med förstÀrkningsinlÀrning som automatiskt styr urvalet för modellernas trÀning. I urvalet för trÀning placeras poster som uppnÄr "konsensusdetektion" efter tillÀmpning av bÄde den statistiska testen och den aktuella modellversionen - det vill sÀga att bÄde den statistiska testen (efter transformation av likhetsindexet till 0 eller 1) och modellen ger resultatet 1 pÄ sÄdana poster. Vid ny trÀning av modellen, under dess validering (den ÄtertrÀnade modellen tillÀmpas pÄ sin egen trÀningsuppsÀttning, med föregÄende tillÀmpning av den statistiska testen), tas poster som "inte behöll" resultatet 1 efter behandling med den statistiska testen (pÄ grund av den stÀndiga nÀrvaron av poster frÄn den ursprungliga "mÀrket" av defekten i trÀningsuppsÀttningen) bort frÄn trÀningsuppsÀttningen, och den nya versionen av modellen trÀnas pÄ "mÀrket" av defekten plus de poster som "behölls" frÄn strömmen.

Bild 7 Robotisering av AI/ML-berÀkningar i InterSystems IRIS
Om behovet av en slags "andra Äsikt" uppstÄr angÄende kvaliteten pÄ detektionen som erhÄlls vid lokala berÀkningar i InterSystems IRIS, skapas en processrÄdgivare för att genomföra trÀning-tillÀmpning av modeller pÄ en kontroll datamÀngd med hjÀlp av molntjÀnster (t.ex. Microsoft Azure, Amazon Web Services, Google Cloud Platform osv.):

Bild 8 "Andra Äsikt" frÄn Microsoft Azure under orkestrering av InterSystems IRIS
Prototypen av vÄrt scenario i InterSystems IRIS Àr utformad som ett agentbaserat system av analytiska processer som interagerar med objektet av utrustning (pumpen), miljöer för matematisk modellering (Python, R och Julia), och som möjliggör sjÀlvlÀrande av alla involverade AI/ML-mekanismer - pÄ dataflöden i realtid.

Bild 9 Huvudfunktionalitet för AI/ML-lösningen i realtid i InterSystems IRIS
Det praktiska resultatet av vÄrt prototyparbete:
- Den modell som identifierats som ett defektmönster (12 januari):

- Den modell som identifierat en utvecklande defekt, som inte ingick i mönstret (11 september, defekten konstaterades av reparationsgruppen först efter tvĂ„ dagar â 13 september):

Simuleringen pÄ verkliga data, som innehöll flera episoder av samma defekt, visade att vÄr lösning, implementerad pÄ InterSystems IRIS-plattformen, gör det möjligt att upptÀcka utvecklingen av denna typ av defekter flera dagar innan de upptÀcks av reparationsgruppen.
InterSystems IRIS â en universell plattform för AI/ML-berĂ€kningar i realtid
InterSystems IRIS-plattformen förenklar utvecklingen, distributionen och driften av lösningar med verkliga data. InterSystems IRIS kan samtidigt utföra transaktions- och analytisk databehandling; stödja synkroniserade datavyer enligt flera modeller (inklusive relations-, hierarkiska, objekt- och dokumentmodeller); fungera som en integrationsplattform för ett brett spektrum av datakÀllor och individuella applikationer; samt erbjuda avancerad realtidsanalys pÄ strukturerade och ostrukturerade data. InterSystems IRIS tillhandahÄller ocksÄ verktyg för att anvÀnda extern analytisk programvara och möjliggör en flexibel kombination av moln- och lokala serverlösningar.
Applikationer byggda pÄ InterSystems IRIS-plattformen har implementerats inom olika branscher, vilket hjÀlper företag att uppnÄ betydande ekonomiska fördelar ur bÄde strategisk och operativ synvinkel, öka beslutsfattande insyn och eliminera "gap" mellan hÀndelse, analys och ÄtgÀrd.

Figur 10 InterSystems IRIS-arkitektur i sammanhanget av AI/ML i realtid
Precis som föregÄende diagram kombinerar nedanstÄende diagram det nya "koordinatsystemet" (CD/CI/CT) med informationsflödes schemat mellan plattformens arbetskomponenter. Visualiseringen börjar med makromekanismerna CD och fortsÀtter med makromekanismerna CI och CT.

Figur 11 Informationsflödes schema mellan AI/ML-komponenterna pÄ InterSystems IRIS-plattformen
KĂ€rnan i CD-mekanismen i InterSystems IRIS: anvĂ€ndarna av plattformen (utvecklare av AI/ML-lösningar) anpassar redan existerande och/eller skapar nya AI/ML-applikationer med hjĂ€lp av en specialiserad kodredigerare för AI/ML-mekanismer: Jupyter (fullstĂ€ndigt namn: Jupyter Notebook; ibland kallas Ă€ven de dokument som skapats i denna redigerare för korthet). I Jupyter har utvecklaren möjligheten att skriva, debugga och verifiera funktionaliteten (inklusive med grafik) av en specifik AI/ML-utveckling innan den distribueras i InterSystems IRIS. Det Ă€r förstĂ„eligt att den nya utvecklingen som skapas pĂ„ detta sĂ€tt endast fĂ„r grundlĂ€ggande felsökning (eftersom Jupyter bland annat inte arbetar med realtidsdatastreams) â detta Ă€r som det ska vara, eftersom huvudresultatet av utvecklingen i Jupyter blir att bekrĂ€fta den principiella funktionaliteten hos enskilda AI/ML-mekanismer ("visar förvĂ€ntat resultat pĂ„ datamĂ€ngden"). PĂ„ liknande sĂ€tt kan en redan distribuerad mekanism (se följande makromekanism) innan felsökning i Jupyter krĂ€va en "Ă„tergĂ„ng" till "doplatforms"-lĂ€get (lĂ€sning av data frĂ„n filer, arbete med data via xDBC istĂ€llet för tabeller, direkt interaktion med globala variabler â multidimensionella datamatriser i InterSystems IRIS â etc.).
En viktig aspekt av CD-implementeringen just i InterSystems IRIS: mellan plattformen och Jupyter finns en tvÄvÀgsintegration som möjliggör överföring av innehÄll pÄ sprÄken Python, R och Julia (alla tre Àr programmeringssprÄk i relevanta ledande open-source miljöer för matematisk modellering) till plattformen (och, i framtiden, bearbetning inom plattformen). SÄledes har utvecklare av AI/ML-innehÄll möjlighet att genomföra "kontinuerlig distribution" av detta innehÄll i plattformen, arbetandes i sin vanliga redigerare Jupyter, med bekanta bibliotek som Àr tillgÀngliga i Python, R, Julia och genomföra grundlÀggande felsökning (vid behov) utanför plattformen.
Vi gĂ„r vidare till makromekanismen CI i InterSystems IRIS. Diagrammet visar makroprocessen för "real-tidsroboten" (ett komplex av datatyper, affĂ€rsprocesser och de kodfragment som orkestreras av dessa pĂ„ sprĂ„k som matematikmiljöer och ObjectScript - det inhemska utvecklingssprĂ„ket för InterSystems IRIS). Syftet med denna makroprocess Ă€r att upprĂ€tthĂ„lla de nödvĂ€ndiga dataköerna för AI/ML-mekanismer (baserat pĂ„ datastreams som överförs till plattformen i realtid), fatta beslut om sekvenserna av tillĂ€mpning och "utbudet" av AI/ML-mekanismer (de som kallas "matematiska algoritmer", "modeller" osv. â kan benĂ€mnas olika beroende pĂ„ konkret implementation och terminologiska preferenser), samt att hĂ„lla datatyperna aktuella för analys av resultaten frĂ„n AI/ML-mekanismerna (kub, tabeller, multidimensionella datamĂ€ngder osv. â för rapporter, dashboards osv.).
En viktig aspekt av implementeringen av CI just i InterSystems IRIS: mellan plattformen och de matematiska modelleringsmiljöerna har en tvĂ„vĂ€gsintegration realiserats, vilket gör det möjligt att exekvera innehĂ„llet pĂ„ plattformen skrivet i Python, R och Julia i sina respektive miljöer och fĂ„ resultaten tillbaka. Denna integration genomförs bĂ„de i "terminal-lĂ€ge" (d.v.s. AI/ML-innehĂ„llet formuleras som kod i ObjectScript som gör anrop till matematikmiljöerna), samt i "affĂ€rsprocess-lĂ€ge" (d.v.s. AI/ML-innehĂ„llet formuleras som en affĂ€rsprocess med hjĂ€lp av en grafisk redigerare, eller ibland med Jupyter, eller med IDE â IRIS Studio, Eclipse, Visual Studio Code). TillgĂ€ngligheten av affĂ€rsprocesser för redigering i Jupyter Ă„terspeglas genom kopplingen mellan IRIS pĂ„ CI-nivĂ„ och Jupyter pĂ„ CD-nivĂ„. En mer detaljerad översikt av integrationen med matematiska modelleringsmiljöer ges senare. Vid detta stadium anser vi att det finns alla skĂ€l att fastslĂ„ att plattformen har alla nödvĂ€ndiga verktyg för att genomföra "kontinuerlig integration" av AI/ML-utvecklingar (som kommer frĂ„n "kontinuerlig distribution") till AI/ML-lösningar i realtid.
Och den viktigaste makromekanismen: CT. Utan den blir det ingen AI/ML-plattform (Àven om "real-time" kommer att implementeras via CD/CI). KÀrnan i CT Àr plattformens arbete med "artefakter" frÄn maskininlÀrning och artificiell intelligens direkt i arbetssessioner av matematiska modelleringsmiljöer: modeller, distributionsmatriser, vektorer-matrisar, lager av neurala nÀtverk, etc. Detta "arbete" bestÄr i de flesta fall av att skapa de nÀmnda artefakterna i miljöerna (för modeller, till exempel, innebÀr "skapandet" att specificera modellens specifikation och dÀrefter vÀlja vÀrden för dess parametrar - den sÄ kallade "trÀningsprocessen" av modellen), deras tillÀmpning (för modeller: berÀkning av "modell"-vÀrden för de mÄlvariabler - prognoser, tillhörighet till kategorier, sannolikhet för hÀndelser, etc.) och förbÀttring av redan skapade och tillÀmpade artefakter (till exempel omdefiniera satsen av ingÄngsvariabler för modellen baserat pÄ resultat av tillÀmpning - för att öka precisionen i prognoserna, som ett alternativ). En nyckelpunkt för att förstÄ rollen av CT Àr dess "abstrakthet" frÄn realiteterna i CD och CI: CT kommer att implementera alla artefakter med hÀnsyn till den berÀknings- och matematiska specifikationen för AI/ML-lösningen inom ramen för de möjligheter som tillhandahÄlls av specifika miljöer. Ansvarigheten för "att förse med input-data" och "att leverera resultat" kommer att ligga pÄ CD och CI.
En viktig aspekt av implementeringen av CT i InterSystems IRIS: genom att anvÀnda den tidigare nÀmnda integrationen med matematiska modelleringsmiljöer har plattformen möjlighet att extrahera artefakter frÄn arbets sessioner som körs under dess hantering i matematiska miljöer och (det mest viktiga) omvandla dem till databasobjekt pÄ plattformen. Till exempel kan en distributions tabell som just har skapats i en arbets session i Python överföras till plattformen i form av en global (en flerdimensionell datamÀngd i InterSystems IRIS) - utan att stoppa sessionen i Python - och anvÀndas för berÀkningar i en annan AI/ML-mekanism (genomförd i ett annat sprÄk - till exempel R) - eller en virtuell tabell. Ett annat exempel: parallellt med den
LÄt oss titta nÀrmare pÄ AI/ML-funktionaliteten pÄ plattformen InterSystems IRIS, med hjÀlp av ett verkligt prototypexempel.
I den nedan angivna diagrammet, pĂ„ vĂ€nster sida av bilden â en del av affĂ€rsprocessen som implementerar körningen av skript i Python och R. I mitten â visuella loggar för verkstĂ€llandet av nĂ„gra av dessa skript, respektive, i Python och R. Direkt efter dem â exempel pĂ„ innehĂ„ll pĂ„ bĂ„da sprĂ„ken som överförts för körning i de respektive miljöerna. LĂ€ngst till höger â visualiseringar baserade pĂ„ resultaten av skriptens körning. Visualiseringarna ovan â gjordes i IRIS Analytics (data hĂ€mtades frĂ„n Python till InterSystems IRIS dataplattform och visades i en dashboard med plattformens verktyg), nedan â gjordes direkt i arbets-sessionen R och exporterades dĂ€rifrĂ„n till grafiska filer. En viktig aspekt: den presenterade delen i prototypen ansvarar för modellens trĂ€ning (klassificering av utrustningens tillstĂ„nd) baserat pĂ„ data som kommer i realtid frĂ„n en simuleringsprocess av utrustningen, pĂ„ kommando frĂ„n processen för kvalitetsövervakning av klassificeringen, som observeras under anvĂ€ndningen av modellen. Om implementeringen av AI/ML-lösningen som en uppsĂ€ttning interagerande processer ("agenter") kommer att diskuteras senare.

Figur 12 Interaktion med Python, R och Julia i InterSystems IRIS
Plattformsprocesser (Ă€ven kallade "affĂ€rsprocesser", "analysprocesser", "pipelines" etc. â beroende pĂ„ kontexten) Ă€r frĂ€mst redigerbara i den grafiska redigeraren för affĂ€rsprocesser i plattformen, pĂ„ sĂ„ sĂ€tt att bĂ„de dess flödesschema och motsvarande AI/ML-mekanism (programkod) skapas samtidigt. NĂ€r vi sĂ€ger att "det skapas en AI/ML-mekanism" syftar vi frĂ„n början pĂ„ hybriditet (inom en och samma process): innehĂ„llet pĂ„ matematiska modelleringssprĂ„k samexisterar med innehĂ„llet pĂ„ SQL (inklusive tillĂ€gg frĂ„n ), i InterSystems ObjectScript, med andra stödda sprĂ„k. Dessutom ger plattformens process mycket stora möjligheter för "ritning" i form av hierarkiskt inbĂ€ddade fragment (som visas i exemplet pĂ„ diagrammet nedan), vilket gör det möjligt att effektivt organisera Ă€ven mycket komplexa innehĂ„ll, utan att "falla ut" ur det grafiska formatet (i "icke-grafiska" metoder/klasser/procedurer etc.). Det vill sĂ€ga, vid behov (och detta förvĂ€ntas i de flesta projekt) kan hela AI/ML-lösningen implementeras i ett grafiskt sjĂ€lvkommenterande format. Vi uppmĂ€rksammar att i den centrala delen av diagrammet nedan, dĂ€r en högre "nivĂ„ av inbĂ€ddning" presenteras, syns att förutom det faktiska arbetet med att trĂ€na modellen (med hjĂ€lp av Python och R), lĂ€ggs Ă€ven analysen av den sĂ„ kallade ROC-kurvan för den trĂ€nade modellen till, vilket gör det möjligt att visuellt (och ocksĂ„ berĂ€kningsmĂ€ssigt) utvĂ€rdera kvaliteten pĂ„ trĂ€ningen - och denna analys Ă€r genomförd pĂ„ sprĂ„ket Julia (körs, av sĂ„ledes i Matlab-miljö Julia).

Figur 13 Visuell miljö för komposition av AI/ML-lösningar i InterSystems IRIS
Som nĂ€mnts tidigare kommer den initiala utvecklingen och (i vissa fall) anpassningen av redan implementerade AI/ML-mekanismer pĂ„ plattformen att kunna utföras utanför plattformen i Jupyter-redigeraren. I diagrammet nedan ser vi ett exempel pĂ„ anpassning av den existerande plattformsprocessen (den samma som pĂ„ diagrammet ovan) - sĂ„ hĂ€r ser den delen ut i Jupyter som ansvarar för att trĂ€na modellen. InnehĂ„llet pĂ„ Python-sprĂ„ket Ă€r tillgĂ€ngligt för redigering, felsökning och visning av grafik direkt i Jupyter. Ăndringar (vid behov) kan göras med omedelbar synkronisering med plattformens process, inklusive dess produktionsversion. PĂ„ liknande sĂ€tt kan nytt innehĂ„ll överföras till plattformen (ny plattformsprocess skapas automatiskt).

Figur 14 AnvÀndning av Jupyter Notebook för redigering av AI/ML-mekanismen i plattformen InterSystems IRIS
Anpassningen av plattformsprocessen kan utföras inte bara i grafisk eller bĂ€rbar format â utan ocksĂ„ i ett "totalt" IDE-format (Integrated Development Environment). SĂ„dana IDE Ă€r IRIS Studio (den inbyggda studio IRIS), Visual Studio Code (tillĂ€gget InterSystems IRIS för VSCode) och Eclipse (plugin Atelier). I vissa fall kan hela utvecklingsteamet anvĂ€nda alla tre IDE:er samtidigt. Diagrammet nedan visar ett exempel pĂ„ redigering av samma process i IRIS-studion, Visual Studio Code och Eclipse. Allt innehĂ„ll Ă€r tillgĂ€ngligt för redigering: bĂ„de Python/R/Julia/SQL, ObjectScript och affĂ€rsprocesser.

Figur 15 Utveckling av affÀrsprocessen InterSystems IRIS i olika IDE:er
Det Ă€r vĂ€rt att nĂ€mna verktygen för beskrivning och genomförande av affĂ€rsprocesser i InterSystems IRIS med hjĂ€lp av Business Process Language (BPL). BPL gör det möjligt att anvĂ€nda "fĂ€rdiga integrationskomponenter" (activities) i affĂ€rsprocesser â vilket i sin tur ger fulla skĂ€l att pĂ„stĂ„ att "kontinuerlig integration" Ă€r implementerad i InterSystems IRIS. FĂ€rdiga komponenter av affĂ€rsprocessen (aktiviteter och kopplingar mellan dem) Ă€r en kraftfull accelerator för byggandet av AI/ML-lösningar. Och inte bara byggandet: tack vare aktiviteterna och kopplingarna mellan dem uppstĂ„r ett "autonomt ledningslager" över Ă„tskilda AI/ML-utvecklingar och mekanismer, vilket möjliggör beslutstagande i realtid beroende pĂ„ situationen.

Figur 16 FÀrdiga komponenter av affÀrsprocesser för kontinuerlig integration (CI) pÄ InterSystems IRIS-plattformen
Konceptet agentbaserade system (Àven kallade "multi-agent system") har en stark stÀllning inom robotisering, och plattformen InterSystems IRIS stöder det organiskt genom konstruktet "produkt-process". Förutom de obegrÀnsade möjligheterna att utrusta varje process med nödvÀndig funktionalitet för den övergripande lösningen, gör det att tilldela plattformsprocesserna egenskapen "agentlighet" att skapa effektiva lösningar för extremt instabila modellerade fenomen (beteende hos sociala/biosystem, delvis observerade teknologiska processer osv.).

Figur 16 Arbetet av AI/ML-lösningen i form av ett agentbaserat system för affÀrsprocesser i InterSystems IRIS
Vi fortsÀtter vÄr översikt av InterSystems IRIS med en berÀttelse om tillÀmpningen av plattformen för att lösa hela klasser av realtidsuppgifter (en ganska detaljerad introduktion till nÄgra av de bÀsta metoderna för plattforms-AI/ML pÄ InterSystems IRIS finner du i en av vÄra tidigare artiklar. ).
Som en uppföljning av den föregĂ„ende diagrammet följer hĂ€r ett mer detaljerat diagram över agent-systemet. Diagrammet visar samma prototyp, med alla fyra agentprocesser skisserade och relationerna mellan dem: GENERATOR â hanterar datautvinning frĂ„n utrustningens sensorer, BUFFER â hanterar dataköer, ANALYZER â utför sjĂ€lva maskininlĂ€rningen, MONITOR â övervakar kvaliteten pĂ„ maskininlĂ€rningen och signalerar behovet av att Ă„tertrĂ€na modellen.

Figur 17 Kompositionen av AI/ML-lösningen som en agentbaserad affÀrsprocess i InterSystems IRIS.
I diagrammet nedan illustreras det autonoma arbetet hos en annan robotprototyp (igenkĂ€nning av kĂ€nslomĂ€ssig ton i texter) under en viss tid. I den övre delen â utvecklingen av kvaliteten pĂ„ modellens inlĂ€rning (kvaliteten ökar), i den nedre delen â dynamiken av kvaliteten pĂ„ modellens tillĂ€mpning och fakta om Ă„tertrĂ€ning (de röda staplarna). Som kan ses har lösningen effektivt och autonomt sjĂ€lvlĂ€rt sig och fungerar pĂ„ ett angivet kvalitetsnivĂ„ (kvalitetsvĂ€rdena sjunker inte under 80%).

Figur 18 Kontinuerlig (sjÀlv-)inlÀrning (CT) pÄ plattformen InterSystems IRIS.
Vi har ocksÄ nÀmnt "auto-ML" tidigare, men i diagrammet nedan visas tillÀmpningen av denna funktionalitet i detalj med ett annat prototyp-exempel. I det grafiska schemat för affÀrsprocessens fragment visas aktiviteten som utlöser modellberÀkningen i H2O-stacken, resultaten av denna modellberÀkning visas (uppenbar dominans av den erhÄllna modellen över "manuellt skapade" modeller, enligt den jÀmförande diagrammet av ROC-kurvorna, samt automatiserad identifiering av "de mest inflytelserika variablerna" frÄn de tillgÀngliga i datauppsÀttningen). En viktig punkt hÀr Àr den tids- och expertresursbesparing som uppnÄs genom "auto-ML": vad vÄr plattform gör pÄ en halvmiljön (att hitta och trÀna den optimala modellen) kan ta en expert mellan en vecka och en mÄnad.

Figur 19 Integrering av "auto-ML" i AI/ML-lösningen pÄ InterSystems IRIS-plattformen
Diagrammet nedan "tar bort spÀnningen", men det Àr ett bra sÀtt att avsluta berÀttelsen om de klasser av problem som löses i realtid: vi pÄminner om att trots alla möjligheter med InterSystems IRIS-plattformen, Àr modelltrÀning specifikt under dess styrning inte obligatorisk. Plattformen kan ta emot en sÄ kallad PMML-specifikation för en modell, trÀnad i ett verktyg som inte Àr under plattformens kontroll - och tillÀmpa denna modell i realtid frÄn och med importen av den. . Det Àr ocksÄ viktigt att beakta att lÄngt ifrÄn alla AI/ML-artiklar kan reduceras till en PMML-specifikation, Àven om de flesta av de vanligaste artiklarna gör det möjligt att göra sÄ. SÄledes har InterSystems IRIS-plattformen en "öppen kontur" och innebÀr inte "plattformsslaveri" för anvÀndarna.

Figur 20 Integrering av "auto-ML" i AI/ML-lösningen pÄ InterSystems IRIS-plattformen
LÄt oss lista ytterligare plattformsfördelar med InterSystems IRIS (för tydlighetens skull, tillÀmpat pÄ hantering av teknologiska processer), som Àr av stor betydelse vid automatisering av artificiell intelligens och maskininlÀrning i realtid:
- Utvecklade integrationsverktyg med alla datakÀllor och mottagare (Automatiserade system för kontroll och datainsamling/SCADA, utrustning, underhÄll, ERP etc.)
- Inbyggd för högpresterande hybrid transaktions-analytisk bearbetning (Hybrid Transaction/Analytical Processing, HTAP) av alla datavolymer inom teknologiska processer
- Utvecklingsverktyg för kontinuerlig implementering av AI/ML-mekanismer för realtidslösningar baserade pÄ Python, R, Julia
- Adaptiva affÀrsprocesser för kontinuerlig integration och (sjÀlv)inlÀrning av AI/ML-lösningar i realtid
- Inbyggda verktyg för Business Intelligence för visualisering av data frÄn teknologiska processer och resultat frÄn AI/ML-lösningar
- för att leverera resultat frÄn AI/ML-lösningar till styrsystem/SCADA, informationsanalysystem, aviseringar med mera
AI/ML-lösningar pÄ InterSystems IRIS-plattformen integreras enkelt i existerande IT-infrastruktur. InterSystems IRIS-plattformen ger hög tillförlitlighet för AI/ML-lösningar genom att stödja redundanta och katastrofresistenta konfigurationer samt flexibel implementering i virtuella miljöer, pÄ fysiska servrar, i privata och offentliga moln och Docker-containrar.
DÀrmed Àr InterSystems IRIS en universell plattform för AI/ML-berÀkningar i realtid. Plattformens mÄngsidighet bekrÀftas praktiskt genom avsaknaden av de facto-grÀnser för komplexiteten av implementerade berÀkningar, och InterSystems IRIS har förmÄgan att kombinera (i realtid) bearbetning av scenarier frÄn olika branscher samt en exceptionell anpassningsförmÄga för alla funktioner och mekanismer i plattformen efter specifika anvÀndarbehov.

Bild 21 InterSystems IRIS â en universell plattform för AI/ML-berĂ€kningar i realtid
För en mer specifik interaktion med dem av vÄra lÀsare som Àr intresserade av materialet som presenteras hÀr, rekommenderar vi att inte bara begrÀnsa sig till att lÀsa det utan att fortsÀtta dialogen "live". Vi Àr redo att erbjuda stöd för formuleringen av realtids AI/ML-scenarier anpassade till din företags specifika behov, genomföra gemensam prototyptillverkning pÄ InterSystems IRIS-plattformen, samt formulera och praktiskt genomföra en vÀgkarta för implementering av artificiell intelligens och maskininlÀrning i dina produktions- och ledningsprocesser. E-postadressen till vÄr expertgrupp för AI/ML Àr .
KĂ€lla: habr.com
