InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase

Autor: Sergej Luk'jančikov, inžinier-konzultant InterSystems

Výzvy AI/ML výpočtov v reálnom čase

Začnime s príkladmi z praxe Data Science spoločnosti InterSystems:

  • „Zatížený“ portál zákazníka je pripojený k online odporúčaciemu systému. Plánuje sa reorganizácia propagačných akcií v rozsahu maloobchodnej siete (predpokladajme, že namiesto „rovinnej“ línie propagačných akcií sa teraz bude používať matica „segment-taktika“). Čo sa deje s odporúčacími mechanizmami? Čo sa deje s predkladaním a aktualizáciou údajov v odporúčacom mechanizme (objem vstupných dát vzrástol 25000-krát)? Čo sa deje s generovaním odporúčaní (potreba tisícnásobného zníženia prahu filtrovania odporúčacích pravidiel vzhľadom na tisícnásobný nárast ich počtu a „sortimentu“)?
  • Existuje systém monitorovania pravdepodobnosti vývoja defektov v uzloch zariadenia. K systému monitorovania bola pripojená automatizovaná riadiaca systém (ASUTP), ktorá prenáša tisíce parametrov technologického procesu každú sekundu. Čo sa deje so systémom monitorovania, ktorý predtým pracoval na „ručne odobratých vzorkách“ (je schopný zabezpečiť každosekundové monitorovanie pravdepodobnosti)? Čo sa stane, ak sa vo vstupných údajoch objaví nový blok s niekoľkými stovkami stĺpcov s údajmi senzorov, ktoré boli nedávno zavedené do ASUTP (bude potrebné a ako dlho zastaviť systém monitorovania, aby sa zahrnuli do analýzy údaje od nových senzorov)?
  • Bol vytvorený komplex AI/ML mechanizmov (odporúčacie, monitorovacie, prediktívne), ktoré využívajú výsledky práce navzájom. Koľko človekohodín je potrebných mesačne na prispôsobenie tohto komplexu zmenám vo vstupných údajoch? Aké je celkové „spomalenie“ pri podpore prijímania manažérskych rozhodnutí týmto komplexom (frekvencia vzniku novej podpory informácií vzhľadom na frekvenciu vzniku nových vstupných údajov)?

Zhrnutím týchto a mnohých ďalších príkladov sme dospeli k formulácii výziev, ktoré vznikajú pri prechode na používanie mechanizmov strojového učenia a umelej inteligencie v reálnom čase:

  • Spĺňa nám rýchlosť vytvárania a prispôsobovania (na meniacu sa situáciu) AI/ML vývojov v našej spoločnosti?
  • Ako podporujú naše používané AI/ML riešenia riadenie podnikania v reálnom čase?
  • Sú schopné naše používané AI/ML riešenia samostatne (bez vývojárov) prispôsobovať sa zmenám v údajoch a praxi podnikateľského riadenia?

Náš článok je podrobný prehľad možností platformy InterSystems IRIS z hľadiska univerzálnej podpory nasadenia AI/ML mechanizmov, zostavovania (integrácie) AI/ML riešení a učenia (testovania) AI/ML riešení na intenzívnych prúdoch údajov. Odkážeme na prieskum trhu, praktické príklady AI/ML riešení a koncepčné aspekty toho, čo nazývame v tomto článku AI/ML platformou reálneho času.

Čo je známe z prieskumov: aplikácie v reálnom čase

Výsledky prieskumu, vykonaného medzi približne 800 IT profesionálmi v roku 2019 spoločnosťou Lightbend, hovorí samo za seba:

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 1 Vedúci spotrebitelia údajov v reálnom čase

Cituje dôležité úryvky správy o výsledkoch tohto prieskumu v našom preklade:

„… Trendy popularity nástrojov na integráciu prúdov údajov a zároveň podpora výpočtov v kontajneroch dávajú synergický odpoveď na požiadavku trhu na operatívnejšie, racionálnejšie, dynamickejšie ponuky efektívnych riešení. Prúdy údajov umožňujú rýchlejšie prenášať informácie ako tradičné dávkové údaje. K tomu sa pridáva možnosť operatívneho uplatnenia výpočtových metód, ako sú napríklad odporúčania založené na AI/ML, čím sa vytvárajú konkurenčné výhody vďaka rastu spokojnosti zákazníckej základne. Preteky o operatívnosť majú tiež vplyv na všetky úlohy v paradigme DevOps – zvyšujúc efektivitu vývoja a nasadenia aplikácií. … Osemsto štyria IT profesionáli poskytli informácie o používaní prúdov údajov vo svojich organizáciách. Respondenti boli väčšinou v západných krajinách (41 % v Európe a 37 % v Severnej Amerike) a boli prakticky rovnomerne rozdelení medzi malé, stredné a veľké spoločnosti. …

Umelá inteligencia nie je len hype. Päťdesiatosem percent tých, ktorí už používajú spracovanie dátových tokov v produktívnych AI/ML aplikáciách, potvrdzujú, že ich využitie v AI/ML prinesie najväčší nárast v budúcom roku (v porovnaní s inými aplikáciami).

  • Podľa väčšiny respondentov, využitie dátových tokov v scenároch AI/ML získa v budúcom roku najväčší nárast.
  • Využitie v AI/ML porastie nielen kvôli relatívne novým typom scenárov, ale aj kvôli tradičným scenárom, v ktorých sa dáta v reálnom čase používajú čoraz intenzívnejšie.
  • Okrem AI/ML, úroveň nadšenia medzi používateľmi IoT dátových pipeline je ohromujúca – 48% z tých, ktorí už integrovali IoT dáta, uvádza, že realizácia scenárov na týchto dátach získa významný nárast v blízkej budúcnosti.

Z tohto zaujímavého prieskumu vyplýva, že vnímanie scenárov strojového učenia a umelej inteligencie ako lídrov v spotrebe dátových tokov je už „na obzore“. Avšak nemenej dôležité je vnímanie AI/ML v reálnom čase optikou DevOps: tu sa už môžeme začať baviť o transformácii dominujúcej kultúry „jednorazového AI/ML s plne dostupným súborom dát“.

Koncept AI/ML platformy v reálnom čase

Jednou z typických oblastí využitia AI/ML v reálnom čase je riadenie technologických procesov na výrobných linkách. Na jej príklade a s ohľadom na predchádzajúce úvahy, formulujeme koncept AI/ML platformy v reálnom čase.
Využívanie umelej inteligencie a strojového učenia v riadení technologických procesov má niekoľko špecifík:

  • Údaje o stave technologického procesu prichádzajú intenzívne: s veľkou frekvenciou a na širokom spektre parametrov (až po desiatky tisíc hodnôt parametrov prenášaných za sekundu z AСУТП).
  • Údaje o zistení chýb, nehovoriac o údajoch o ich vývoji, sú naopak chudobné a nepravidelné, charakterizované nedostatočnosťou typizácie chýb a ich lokalizácie v čase (často sú prezentované záznamami na papierových nosičoch).
  • Z praktického hľadiska je na učenie a aplikáciu modelov k dispozícii len «okno relevancie» vstupných údajov, ktoré odráža dynamiku technologického procesu za primeraný posuvný interval, končiaci poslednými prečítanými hodnotami parametrov procesu.

Tieto charakteristiky nás nútia, okrem prijímania a základného spracovania v reálnom čase intenzívneho «širokopásmového vstupného signálu» z technologického procesu, vykonávať (paralelne) aplikáciu, učenie a kontrolu kvality výsledkov práce AI/ML modelov – taktiež v reálnom čase. Ten «rám», ktorý naše modely «vidia» v posuvnom okne relevancie, sa neustále mení – a spolu s ním sa mení aj kvalita výsledkov práce AI/ML modelov, ktoré boli vycvičené na jednom z «rámov» v minulosti. Pri zhoršení kvality výsledkov práce AI/ML modelov (napríklad: hodnota chybovosti klasifikácie «alarm-norma» prekročila stanovené hranice) by malo byť automaticky spustené doučenie modelov na aktuálnejšom «rám» — a voľba okamihu na spustenie doučenia modelov by mala zohľadňovať ako dĺžku samotného učenia, tak aj dynamiku zhoršovania kvality práce aktuálnej verzie modelov (keďže aktuálne verzie modelov pokračujú v aplikácii, kým sa modely učia a kým nie sú vytvorené ich «znova vycvičené» verzie).

InterSystems IRIS disponuje kľúčovými platformovými možnosťami na zabezpečenie fungovania AI/ML riešení pri riadení technologických procesov v reálnom čase. Tieto možnosti môžeme rozdeliť do troch hlavných skupín:

  • Neprerušené nasadenie (Continuous Deployment/Delivery, CD) nových alebo prispôsobených existujúcich AI/ML mechanizmov do produktového riešenia, ktoré funguje v reálnom čase na platforme InterSystems IRIS.
  • Neprerušená integrácia (Continuous Integration, CI) do jedného produktového riešenia prichádzajúcich tokov údajov technologického procesu, frontov údajov na aplikáciu/učenie/kontrolu kvality práce AI/ML mechanizmov a výmeny údajov/kódu/riadiacich zásahov s prostrediami matematického modelovania, ktorých orchestráciu uskutočňuje v reálnom čase platforma InterSystems IRIS.
  • Nepretržité (samo-)vzdelávanie (Continuous Training, CT) AI/ML mechanizmov, vykonávané v prostrediach matematického modelovania s použitím dát, kódu a riadiacich zásahov („rozhodnutí“), ktoré sú prenášané platformou InterSystems IRIS

Klasifikácia platformových schopností vo vzťahu k strojovému učeniu a umelej inteligencii podľa takýchto skupín nie je náhodná. Citujme metodologickú publikáciu spoločnosť Google, v ktorej je podložená konceptuálna základňa pre túto klasifikáciu, v našom preklade:

„… Populárny koncept DevOps zahŕňa vývoj a prevádzku rozsiahlych informačných systémov. Výhodami implementácie tohto konceptu sú skrátenie trvania cyklov vývoja, urýchlenie nasadenia vývojov, flexibilita plánovania vydaní. Na dosiahnutie týchto výhod DevOps predpokladá implementáciu minimálne dvoch praktík:

  • Continuous Integration (CI)
  • Continuous Delivery (CD)

Tieto praktiky sú tiež aplikovateľné na AI/ML platformy – s cieľom zabezpečiť spoľahlivé a výkonné zostavenie produktívnych AI/ML riešení.

AI/ML platformy sa od ostatných informačných systémov odlišujú v nasledujúcich aspektoch:

  • Kompetencie tímu: pri vytváraní AI/ML riešenia tím zvyčajne zahŕňa dátových vedcov alebo odborníkov-„akademikov“ v oblasti výskumu dát, ktorí vykonávajú analýzu dát, vývoj a skúšanie modelov. Títo účastníci tímu môžu, ale nemusia byť profesionálnymi vývojármi produktívneho programového kódu.
  • Vývoj: AI/ML mechanizmy sú svojou povahou experimentálne. Na to, aby sa problém vyriešil najefektívnejším spôsobom, je potrebné prejsť rôznymi kombináciami vstupných premenných, algoritmov, spôsobov modelovania a parametrov modelu. Zložitosti tohto prechádzania spočíva v trasovaní „čo fungovalo/nefungovalo“, zabezpečení reprodukovateľnosti epizód, generalizácii vývojov pre opakované implementácie.
  • Testovanie: testovanie AI/ML mechanizmov si vyžaduje širší rozsah testov, než väčšina ostatných vývojov. Okrem typických modulárnych a integračných testov sú testované validita dát, kvalita výsledkov aplikácie modelu na trénovacie a kontrolné vzorky.
  • Nasadenie: nasadenie AI/ML riešení nie je len o prediktívnych službách, ktoré používajú raz vytrénovaný model. AI/ML riešenia sú postavené okolo viacerých fázových pipeline, ktoré vykonávajú automatizované učenie a aplikáciu modelov. Nasadenie takýchto pipeline zahŕňa automatizáciu netriviálnych úkonov, tradične vykonávaných dátovými vedcami ručne, aby sa umožnilo trénovať a testovať modely.
  • Produktivita: AI/ML mechanizmom môže chýbať výkon nielen z dôvodu neefektívneho programovania, ale aj kvôli neustále sa meniacemu charakteru vstupných údajov. Inými slovami, výkon AI/ML mechanizmov môže degradovať z väčšieho počtu dôvodov ako výkon bežných aplikácií. To vedie k potrebe monitorovania (v reálnom čase) výkonu našich AI/ML mechanizmov, ako aj k rozosielaniu upozornení alebo zamietnutiu výsledkov, ak výkonnostné ukazovatele nespĺňajú očakávania.

AI/ML platformy sú podobné iným informačným systémom v tom, že potrebujú nepretržitú integráciu kódu s kontrolou verzií, modulové testovanie, integračné testovanie a nepretržité nasadenie vývoja. Napriek tomu existuje niekoľko dôležitých rozdielov v prípade AI/ML:

  • CI (Continuous Integration, nepretržitá integrácia) sa už neobmedzuje len na testovanie a validáciu kódu nasadzovaných komponentov – zahŕňa aj testovanie a validáciu údajov a AI/ML modelov.
  • CD (Continuous Delivery/Deployment, nepretržité nasadenie) nie je len o písaní a vydávaní balíkov alebo služieb, ale predstavuje platformu pre kompozíciu, učenie a aplikáciu AI/ML riešení.
  • CT (Continuous Training, nepretržité učenie) – nový prvok [pozn. autora článku: nový prvok v porovnaní s tradičnou koncepciou DevOps, kde CT je zvyčajne Continuous Testing], charakteristický pre AI/ML platformy, zodpovedajúci za autonómne riadenie mechanizmov učenia a aplikácie AI/ML modelov. …

Môžeme konštatovať, že strojové učenie a umelá inteligencia, ktoré pracujú s údajmi v reálnom čase, vyžadujú širší súbor nástrojov a kompetencií (od vývoja kódu po orchestráciu prostredí matematického modelovania), užšiu integráciu medzi všetkými funkčnými a predmetovými oblasťami a efektívnejšiu organizáciu ľudských a strojových zdrojov.

Scenár v reálnom čase: rozpoznávanie vývoja defektov v čerpacích pumpách

Pokračujúc v príklade oblasti riadenia technologických procesov, pozrime sa na konkrétnu úlohu (o ktorej sme už hovorili na začiatku): je potrebné zabezpečiť v reálnom čase monitorovanie vývoja defektov v čerpacích pumpách na základe toku hodnôt parametrov technologického procesu a správ opravárenského personálu o identifikovaných defektoch.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 2 Formulácia úlohy pre monitorovanie vývoja defektov

Špecifickou vlastnosťou väčšiny podobne formulovaných úloh v praxi je, že pravidelnosť a pohotovosť prichádzania údajov (ASUTP) by sa mali posudzovať na pozadí epizodickosti a nepravidelnosti výskytu (a registrácie) defektov rôznych typov. Inými slovami: údaje z ASUTP prichádzajú každú sekundu presné, zatiaľ čo o defektoch sa robia zápisy chemickým ceruzkom s uvedením dátumu do spoločného zápisníka vo výrobnej hale (napríklad: „12.01 – únik z krytu zo strany 3. ložiska“).

Týmto môžeme doplniť formuláciu úlohy o jedno dôležité obmedzenie: „značka“ defektu konkrétneho typu máme len jednu (t.j. príklad defektu konkrétneho typu je prezentovaný údajmi z ASUTP k určitému dátumu – a ďalšie príklady defektu tohto typu nemáme). Toto obmedzenie nás okamžite vyvádza za rámec klasického strojového učenia (supervised learning), pre ktoré by malo byť „značiek“ veľa.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 3 Spresnenie úlohy pre monitorovanie vývoja defektov

Môžeme nejakým spôsobom „reprodukovat“ jedinú „značku“, ktorú máme k dispozícii? Áno, môžeme. Aktuálny stav čerpadla je charakterizovaný stupňom podobnosti so zaznamenanými defektami. Aj bez použitia kvantitatívnych metód, na úrovni vizuálneho vnímania, keď pozorujeme dynamiku hodnôt údajov prichádzajúcich z ASUTP, môžeme už veľa vyvodiť:

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 4 Dynamika stavu čerpadla na pozadí „značky“ defektu daného typu

Ale vizuálne vnímanie (aspoň zatiaľ) nie je najvhodnejší generátor „značiek“ v našom rýchlo sa meniacom scenári. Budeme hodnotiť podobnosť aktuálneho stavu čerpadla so zaznamenanými defektami pomocou štatistického testu.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 5 Aplikácia štatistického testu na prichádzajúce údaje na pozadí „značky“ defektu

Štatistický test určuje pravdepodobnosť, že záznamy s hodnotami parametrov technologického procesu v získanom z ASUTP „prúdení-bundel“ sú podobné záznamom „značky“ defektu určitého typu. Vypočítaná hodnota pravdepodobnosti ako výsledok aplikácie štatistického testu (index štatistickej podobnosti) sa transformuje na hodnotu 0 alebo 1, čím sa stáva „značkou“ pre strojové učenie v každom konkrétnom zázname v skúmanom balíku. T. j. po spracovaní nového balíka záznamov stavu čerpadla štatistickým testom máme možnosť (a) pridať tento balík do tréningovej vzorky pre učenie AI/ML modelu a (b) vykonať kontrolu kvality práce aktuálnej verzie modelu pri jeho aplikácii na tento balík.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 6 Aplikácia modelu strojového učenia na prichádzajúce údaje na pozadí „značky“ defektu

V jednom z našich predchádzajúcich webinárov Ukazujeme a vysvetľujeme, ako platforma InterSystems IRIS umožňuje implementovať akýkoľvek AI/ML mechanizmus vo forme nepretržite vykonávaných obchodných procesov, ktoré kontrolujú presnosť výsledkov modelovania a prispôsobujú parametre modelov. Pri realizácii prototypu nášho scenára s čerpadlami využívame všetky funkcie prezentované počas webinára InterSystems IRIS – implementujeme v procese analyzátora v rámci nášho riešenia nie klasické supervised learning, ale skôr reinforcement learning, ktoré automaticky riadi výber pre učenie modelov. Do výberu pre učenie sú zaradené záznamy, na ktorých sa vyskytuje „konsenzus detekcie“ po aplikácii a štatistickom teste, aj aktuálnej verzii modelu – to znamená, že aj štatistický test (po transformácii indexu podoby na 0 alebo 1), aj model poskytli na takýchto záznamoch výsledok 1. Pri novom učení modelu, pri jeho validácii (znovu učený model sa aplikuje na vlastnú trénovaciu vzorku, s predchádzajúcim použitím štatistického testu), záznamy, ktoré „neudržali“ po spracovaní štatistickým testom výsledok 1 (kvôli stále prítomným záznamom v trénovacej vzorke zo vzorky pôvodnej „značky“ defektu), sú z trénovacej vzorky odstránené a nová verzia modelu sa učí na „značke“ defektu plus na „udržaných“ záznamoch z toku.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 7 Robotizácia AI/ML výpočtov v InterSystems IRIS

V prípade, že vznikne potreba akéhosi „druhého názoru“ na kvalitu detekcie získanej pri lokálnych výpočtoch v InterSystems IRIS, vytvorí sa proces-poradca na vykonanie učenia a aplikácie modelov na kontrolnom datasete pomocou cloudových služieb (napríklad Microsoft Azure, Amazon Web Services, Google Cloud Platform a pod.):

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 8 „Druhý názor“ z Microsoft Azure pod orchestriáciou InterSystems IRIS

Prototyp nášho scenára v InterSystems IRIS je vyhotovený vo forme agentného systému analytických procesov, ktoré vykonávajú interakcie s objektom vybavenia (čerpadlom), prostrediami matematického modelovania (Python, R a Julia), a zabezpečujú samo-učenie všetkých zúčastnených AI/ML mechanizmov – na prúdoch dát v reálnom čase.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 9 Hlavná funkčnosť AI/ML riešenia v reálnom čase v InterSystems IRIS

Praktický výstup našich prototypov:

  • Modelom rozpoznaná vzorka defektu (12. januára):

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase

  • Modelom rozpoznaný vyvíjajúci sa defekt, ktorý nebol zahrnutý vo vzorke (11. septembra, defekt bol potvrdený opravárskym tímom až po dvoch dňoch – 13. septembra):

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Simulácia na reálnych dátach, obsahujúcich niekoľko epizód jedného a toho istého defektu, ukázala, že naše riešenie implementované na platforme InterSystems IRIS umožňuje identifikovať vývoj takýchto defektov niekoľko dní pred ich zistením opravárskym tímom.

InterSystems IRIS – univerzálna platforma AI/ML výpočtov v reálnom čase

Platforma InterSystems IRIS zjednodušuje vývoj, nasadenie a prevádzku riešení na reálnych dátach. InterSystems IRIS je schopná súčasne vykonávať transakčné a analytické spracovanie dát; podporovať synchronizované zobrazenia dát podľa viacerých modelov (vrátane relačného, hierarchického, objektového a dokumentového); slúžiť ako integračná platforma pre široké spektrum zdrojov dát a samostatných aplikácií; zabezpečiť rozvinutú analytiku v reálnom čase na štruktúrovaných a neštruktúrovaných dátach. InterSystems IRIS tiež poskytuje mechanizmy na použitie externého analytického nástroja, umožňuje flexibilne kombinovať nasadenie v cloudu a na lokálnych serveroch.

Aplikácie postavené na platforme InterSystems IRIS sú nasadené v rôznych odvetviach a pomáhajú firmám dosahovať významný ekonomický efekt v strategických a operačných aspektoch, zvyšujúc informovanosť pri rozhodovaní a odstraňujúc "medzery" medzi udalosťami, analýzou a akciou.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 10 Architektúra InterSystems IRIS v kontexte AI/ML v reálnom čase

Rovnako ako predchádzajúci diagram, nižšie uvedený diagram kombinuje nový "systém súradníc" (CD/CI/CT) s schémou tokov informácií medzi pracovnými prvkami platformy. Vizualizácia začína makromechanizmom CD a pokračuje makromechanizmami CI a CT.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 11 Schéma tokov informácií medzi AI/ML prvkami platformy InterSystems IRIS

Podstata mechanizmu CD v InterSystems IRIS: používatelia platformy (vývojári AI/ML riešení) prispôsobujú už existujúce a/alebo vytvárajú nové AI/ML aplikácie s použitím špecializovaného editora programového kódu AI/ML mechanizmov: Jupyter (plné označenie: Jupyter Notebook; pre stručnosť sa niekedy nazývajú aj dokumenty vytvorené v tomto editore). V Jupyter má vývojár možnosť napísať, odladit a overiť funkčnosť (vrátane grafiky) konkrétnej AI/ML aplikácie pred jej nasadením („nasadením“) v InterSystems IRIS. Je jasné, že vytvorená týmto spôsobom nová aplikácia získa iba základné ladenie (keďže, okrem iného, Jupyter nepracuje s dátovými tokmi v reálnom čase) – to je v poriadku, pretože hlavným výsledkom vývoja v Jupyter je potvrdenie principiálnej funkčnosti samostatného AI/ML mechanizmu („na vzorke dát ukazuje očakávaný výsledok“). Podobne už umiestnený v platforme mechanizmus (pozri nasledujúce makromechanizmy) pred ladením v Jupyter môže vyžadovať „späťzúvanie“ do „predplatformového“ stavu (čítanie dát z súborov, práca s dátami cez xDBC namiesto tabuliek, priamu interakciu s globálmi – viacrozmernými políčkami dát InterSystems IRIS – a pod.).

Dôležitým aspektom implementácie CD práve v InterSystems IRIS: medzi platformou a Jupyter je realizovaná obojsmerná integrácia, ktorá umožňuje prenášať do platformy (a nielen, spracovávať v platforme) obsah v jazykoch Python, R a Julia (všetky tri sú programovacie jazyky v príslušných vedúcich open-source prostrediach matematického modelovania). Takýmto spôsobom môžu vývojári AI/ML obsahu uskutočňovať „kontinuálne nasadenie“ tohto obsahu v platforme, pracujúc v jemu zvyčajnom editore Jupyter, so zvyčajnými knižnicami dostupnými v Pythone, R, Julii a vykonávajúc základné ladenie (pri potrebe) mimo platformy.

Prejdeme k makromechanizmu CI v InterSystems IRIS. Na diagrame je znázornený makroproces práce "robotizátora reálneho času" (komplex štruktúr dát, biznis procesov a orchestráciu týchto fragnentov kódu v jazyku mat-sphere a v jazyku ObjectScript – natívnom jazyku vývoja InterSystems IRIS). Úlohou tohto makro procesu je udržiavať potrebné fronty dát pre fungovanie AI/ML mechanizmov (na základe prúdov dát posielaných platforme v reálnom čase), prijímať rozhodnutia o sekvencii aplikovania a "sortimentu" mechanizmov AI/ML (tiež nazývané "matematické algoritmy", "modely" a pod. – môžu sa nazývať rôzne v závislosti od konkrétnosti implementácie a terminologických preferencií), udržiavať aktuálne štruktúry dát pre analýzu výsledkov činnosti AI/ML mechanizmov (kuby, tabulky, viacrozmerné polia dát a pod. – pre správy, dashboardy a podobne).

Dôležitý aspekt implementácie CI práve v InterSystems IRIS: medzi platformou a prostrediami matematického modelovania je realizovaná obojsmerná integrácia, ktorá umožňuje vykonávať obsah umiestnený na platforme v jazykoch Python, R a Julia v ich príslušných prostrediach s prijímaním späť výsledkov vykonania. Táto integrácia je realizovaná v "terminálovom režime" (t.j. AI/ML obsah je formulovaný ako kód v ObjectScript, ktorý vykonáva volania mat-sphere), ako aj v "režime biznis procesu" (t.j. AI/ML obsah je formulovaný ako biznis proces pomocou grafického editora, alebo niekedy pomocou Jupyter, alebo pomocou IDE – IRIS Studio, Eclipse, Visual Studio Code). Dostupnosť biznis procesov na úpravu v Jupyter je odrážaná pomocou spojenia medzi IRIS na úrovni CI a Jupyter na úrovni CD. Podrobný prehľad integrácie s prostrediami matematického modelovania je poskytnutý ďalej. V tejto fáze, podľa nášho názoru, existujú všetky dôvody na to, aby sme zdokumentovali prítomnosť vo platforme všetkých potrebných nástrojov pre realizáciu "nepretržitej integrácie" AI/ML vývojov (prichádzajúcich z "nepretržitého nasadzovania") do AI/ML riešení v reálnom čase.

A hlavný makromekanizmus: CT. Bez neho nebude možné vytvoriť AI/ML platformy (aj keď "reálny čas" bude implementovaný cez CD/CI). Podstatou CT je práca platformy s "artefaktmi" strojového učenia a umelou inteligenciou priamo v pracovných reláciách prostredí matematického modelovania: modely, tabuľky rozdelení, vektory-matrice, vrstvy neurónových sietí a podobne. Táto "práca" sa v drvivej väčšine prípadov skladá z vytvárania spomínaných artefaktov v prostrediach (v prípade modelov napríklad "vytváranie" spočíva v určení špecifikácie modelu a následnom prispôsobení hodnôt jeho parametrov – takzvanej "výučbe" modelu), ich využití (pre modely: výpočet pomocou nich "modelových" hodnôt cieľových premenných – predpovedí, príslušnosti k kategórii, pravdepodobnosti výskytu udalosti a pod.) a zdokonalovania už vytvorených a použitých artefaktov (napríklad predefinovanie množiny vstupných premenných modelu na základe výsledkov aplikácie – za účelom zvýšenia presnosti predpovedania, ako jedna z možností). Kľúčovým bodom pri pochopení úlohy CT je jeho "abstrahovanie" od realít CD a CI: CT bude implementovať všetky artefakty, pričom sa bude riadiť výpočtovou a matematickou špecifikou AI/ML riešenia v rámci možností, ktoré poskytujú konkrétne prostredia. Zodpovednosť za "zásobovanie vstupnými údajmi" a "dodávanie výsledkov" budú niesť CD a CI.

Dôležitý aspekt implementácie CT práve v InterSystems IRIS: využívajúc už spomínanú integráciu s prostrediami matematického modelovania, platforma má schopnosť extrahovať z pracovných relácií, ktoré prebiehajú pod jej riadením v materských prostrediach, tie artefakty a (najdôležitejšie) transformovať ich na dátové objekty platformy. Napríklad, tabuľka rozdelenia, ktorá práve vznikla v pracovnej relácii Python, môže byť (bez zastavenia relácie v Pythone) prenesená do platformy vo forme, napríklad, globála (viacrozmerného poľa dát InterSystems IRIS) – a použitá na výpočty v inom AI/ML mechanizme (realizovanom už v jazyku iného prostredia – napríklad R) – alebo virtuálnej tabuľky. Ďalší príklad: paralelne so „štandardným režimom“ práce modelu (v pracovnej relácii Python) sa na jeho vstupných dátach vykonáva „auto-ML“: automatický výber optimálnych vstupných premenných a hodnoty parametrov. A spolu so „štandardným“ učením dostáva produktívny model v reálnom čase aj „návrh na optimalizáciu“ svojej špecifikácie – v ktorej sa mení súbor vstupných premenných, menia sa hodnoty parametrov (už nie v dôsledku učenia v Pythone, ale v dôsledku učenia „alternatívnej“ verzie samej seba, napríklad v stacku H2O), čo umožňuje celkovému AI/ML riešeniu autonomne zvládať nepredvídané zmeny v charaktere vstupných dát a modelovaných javov.

Pozrime sa podrobnejšie na platformový AI/ML funkčný rámec InterSystems IRIS na príklade reálne existujúceho prototypu.

Na nižšie uvedenom diagrame, na ľavej strane snímky – časť biznis procesu, ktorá implementuje spracovanie skriptov v Pythone a R. V centrálnej časti – vizuálne logy vykonávania niektorých z týchto skriptov, a to v Pythone a v R. Ihneď za nimi – príklady obsahu v jednom a druhom jazyku, zaslané na vykonávanie do príslušných prostredí. Na konci vpravo – vizualizácie, založené na výsledkoch vykonávania skriptov. Vizualizácie nad – vytvorené na IRIS Analytics (dáta prevzaté z Pythonu na dátovú platformu InterSystems IRIS a vyexportované na dashboard prostriedkami platformy), dole – vytvorené priamo v pracovnej relácii R a vyexportované odtiaľ do grafických súborov. Dôležitý aspekt: predstavený fragment v prototype zodpovedá za školenie modelu (klasifikácia stavov vybavenia) na dátach prichádzajúcich v reálnom čase z procesu simulátora vybavenia, na príkaz z procesu monitora kvality klasifikácie, pozorovanej v priebehu aplikácie modelu. O implementácii AI/ML riešenia vo forme súboru vzájomne pôsobiacich procesov ("agentov") sa bude hovoriť ďalej.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 12 Interakcia s Pythonom, R a Juliou v InterSystems IRIS

Platformové procesy (tiež "biznis procesy", "analytické procesy", "pipeline" a pod. – v závislosti od kontextu) sú predovšetkým editovateľné v grafickom editore biznis procesov v samotnej platforme, pričom sa takto vytvárajú súčasne aj jeho bloková schéma a zodpovedajúci AI/ML mechanizmus (programový kód). Keď hovoríme o tom, že "vzniká AI/ML mechanizmus", prvotne tým naznačujeme hybridnosť (v rámci jedného procesu): obsah v jazykoch prostredí matematického modelovania susedí s obsahom v SQL (vrátane rozšírení od IntegratedML), v InterSystems ObjectScript, spolu s inými podporovanými jazykmi. Navyše, platformový proces poskytuje veľmi široké možnosti pre „vykresľovanie“ vo forme hierarchicky vložených fragmentov (ako je vidno na príklade uvedenom na nižšie priloženej diagramu), čo umožňuje efektívne organizovať aj pomerne zložitý obsah, nikde ne „vypadávajúc“ z grafického formátu (v „negrafických“ metódach/kategoriách/procedúrach atď.). T. j. ak je to potrebné (a to sa predpokladá v väčšine projektov), všetky AI/ML riešenia môžu byť implementované v grafickom samodokumentujúcom formáte. Upozorňujeme, že v centrálnej časti nižšie uvedenej diagramu, kde je zobrazený vyšší „úroveň vloženia“, je vidno, že okrem vlastnej práce na vyučovaní modelu (za pomoci Python a R) sa pridáva analýza tzv. ROC krivky vyučovaného modelu, ktorá umožňuje vizuálne (a počítacími prostriedkami tiež) hodnotiť kvalitu vyučovania – a táto analýza je realizovaná v jazyku Julia (vykonáva sa, príslušne, v mat-sredy Julia).

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 13 Vizuálne prostredie kompozície AI/ML riešení v InterSystems IRIS

Ako už bolo spomenuté, počiatočný vývoj a (v niektorých prípadoch) prispôsobenie už implementovaných mechanizmov AI/ML na platforme sa môže vykonávať mimo platformy v editore Jupyter. Na diagrame nižšie vidíme príklad prispôsobenia existujúceho platformového procesu (toho istého ako na diagrame vyššie) – takto vyzerá v Jupyter tá jeho časť, ktorá zodpovedá za vyučovanie modelu. Obsah v jazyku Python je dostupný na úpravy, ladenie, výstup grafiky priamo v Jupyter. Zmeny (ak je to potrebné) môžu byť vykonávané s okamžitou synchronizáciou v platformovom procese, vrátane jeho produktívnej verzie. Podobným spôsobom môže byť nový obsah prenášaný do platformy (automaticky sa vytvára nový platformový proces).

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 14 Použitie Jupyter Notebook na úpravu AI/ML mechanizmu na platforme InterSystems IRIS

Prispôsobenie platformového procesu môže prebiehať nielen v grafickej alebo notebookovej forme, ale aj v "totálnom" formáte IDE (Integrováného vývojového prostredia). Takými IDE sú IRIS Studio (nativné štúdio IRIS), Visual Studio Code (rozšírenie InterSystems IRIS pre VSCode) a Eclipse (plugin Atelier). V niektorých prípadoch môže tím vývojárov súčasne používať všetky tri IDE. Na diagrame nižšie je zobrazený príklad úpravy toho istého procesu v IRIS štúdiu, v Visual Studio Code a v Eclipse. Na úpravy je k dispozícii absolútne celý obsah: Python/R/Julia/SQL, ObjectScript a obchodný proces.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 15 Vývoj obchodného procesu InterSystems IRIS v rôznych IDE

Osobitnú pozornosť si zaslúžia prostriedky na opis a vykonávanie obchodných procesov InterSystems IRIS v jazyku Business Process Language (BPL). BPL umožňuje využitie v obchodných procesoch "hotových integračných komponentov" (activities) - čo v podstate potvrdzuje, že v InterSystems IRIS je realizovaná "kontinuálna integrácia". Hotové komponenty obchodného procesu (aktivity a vzťahy medzi nimi) sú mocným akcelerátorom zostavenia AI/ML riešení. A nielen zostavenia: vďaka aktivitám a vzťahom medzi nimi nad rozptýlenými AI/ML vývojmi a mechanizmami vzniká "autonómna riadiaca vrstva", schopná prijímať rozhodnutia v súlade so situáciou v reálnom čase.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 16 Hotové komponenty obchodných procesov pre kontinuálnu integráciu (CI) na platforme InterSystems IRIS

Koncepcia agentných systémov (tiež "multiagentné systémy") má silné postavenie v robotizácii a platforma InterSystems IRIS ju organicky podporuje cez konštrukt "produkt-proces". Okrem neobmedzených možností pre "naplnenie" každého procesu potrebným funkčným vybavením na všeobecné riešenie, obdarovanie systému platformových procesov vlastnosťou "agentnosti" umožňuje vytvárať efektívne riešenia pre veľmi nestabilné modelované javy (správanie sociálnych/biologických systémov, čiastočne pozorované technologické procesy atď.).

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 17 Práca AI/ML riešenia vo forme agentného systému obchodných procesov v InterSystems IRIS

Pokračujeme v našom prehľade InterSystems IRIS rozprávaním o aplikovaní platformy na riešenie celých tried úloh v reálnom čase (dosť podrobné oboznámenie sa s niektorými najlepšími praktikami platformového AI/ML na InterSystems IRIS prebieha v jednom z našich predchádzajúcich článkov. webinárov).

Na «horúcej stope» predchádzajúcej diagramu je nižšie uvedený podrobnejší diagram agentného systému. Na diagrame je zobrazený ten istý prototyp, viditeľné sú všetky štyri procesy-agenti, schematicky sú znázornené vzťahy medzi nimi: GENERATOR – zaoberá sa generovaním dát senzorov zariadení, BUFFER – spravuje fronty dát, ANALYZER – vykonáva samotné strojové učenie, MONITOR – kontroluje kvalitu strojového učenia a odosiela signál o potrebe opätovného učenia modelu.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 17 Kompozícia AI/ML riešenia vo forme agentného systému obchodných procesov v InterSystems IRIS

Na diagrame nižšie je ilustrované autonómne fungovanie už iného robotizovaného prototypu (rozpoznávanie emocionálneho zafarbenia textov) počas určitého časového obdobia. V hornej časti je evolúcia ukazovateľa kvality učenia modelu (kvalita rastie), v dolnej časti dynamika ukazovateľa kvality použitia modelu a skutočnosti opätovného učenia (červené pruhy). Ako je vidieť, riešenie efektívne a autonómne samoobnovilo vedomosti a pracuje na predpísanej úrovni kvality (hodnoty ukazovateľa kvality neklesajú pod 80%).

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 18 Nepretržité (samo)učenie (CT) na platforme InterSystems IRIS

O „auto-ML“ sme už hovorili skôr, ale na nižšie uvedenom diagrame je použitie tejto funkcie podrobne znázornené na príklade ďalšieho prototypu. Na grafickej schéme fragmentu biznis procesu je zobrazená aktivita, ktorá spúšťa modelovanie v stacku H2O, pričom sú zobrazené výsledky tohto modelovania (výrazné dominovanie získaného modelu nad „ručnými“ modelmi podľa porovnávacej diagramu ROC kriviek, ako aj automatizované zistenie „najvplyvnejších premenných“ z dostupných v pôvodnom dátovom súbore). Dôležitým aspektom tu je úspora času a odborných zdrojov, ktorá sa dosahuje prostredníctvom „auto-ML“: to, čo náš platformový proces vykonáva za pol minúty (nájdenie a trénovanie optimálneho modelu), môže expertovi trvať od týždňa do mesiaca.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 19 Integrácia „auto-ML“ v AI/ML riešení na platforme InterSystems IRIS

Diagram nižšie trochu „zlomí vyvrcholenie“, ale je to dobrá možnosť na uzavretie rozprávky o triedach riešených úloh reálneho času: pripomíname, že napriek všetkým možnostiam platformy InterSystems IRIS nie je školenie modelov priamo pod jej správou povinné. Platforma môže získať z vonku takzvanú PMML špecifikáciu modelu, vytrénovanú v nástroji, ktorý nie je pod správou platformy – a aplikovať tento model v reálnom čase od momentu jeho importu. PMML špecifikácie. Je dôležité mať na pamäti, že ďaleko nie všetky AI/ML artefakty môžu byť zúžené na PMML špecifikácie, aj keď väčšina bežne používaných artefaktov to umožňuje. Tak platforma InterSystems IRIS má „otvorenú priepasť“ a neznamená „platformovú otroctvo“ pre používateľov.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 20 Integrácia „auto-ML“ v AI/ML riešení na platforme InterSystems IRIS

Uveďme ďalšie platformové výhody InterSystems IRIS (prehľadne, vo vzťahu k riadeniu technologických procesov), ktoré majú veľký význam pri automatizácii umelej inteligencie a strojového učenia reálneho času:

  • Rozvinuté prostriedky integrácie s akýmikoľvek zdrojmi a spotrebiteľmi údajov (ASUTP/SCADA, vybavenie, TOiR, ERP atď.)
  • Vstavaná multimodálna DBMS pre vysokovýkonnú transakčno-analytickú spracovanie (Hybrid Transaction/Analytical Processing, HTAP) akýchkoľvek objemov údajov technologických procesov
  • Nástroje pre kontinuálne nasadenie AI/ML mechanizmov riešení v reálnom čase na základe Pythonu, R, Julii
  • Adaptívne obchodné procesy pre kontinuálnu integráciu a (samou-)učenie mechanizmov AI/ML riešení v reálnom čase
  • Vstavané nástroje Business Intelligence pre vizualizáciu údajov technologických procesov a výsledkov činnosti AI/ML riešenia
  • Správa API pre dodávanie výsledkov činnosti AI/ML riešenia do AСУТП/SCADA, informačne-analytických systémov, zasielanie upozornení atď.

AI/ML riešenia na platforme InterSystems IRIS sa ľahko integrujú do existujúcej IT infraštruktúry. Platforma InterSystems IRIS zabezpečuje vysokú spoľahlivosť AI/ML riešení vďaka podpore konfigurácií odolných voči zlyhaniu a katastrofám, ako aj flexibilnému nasadeniu vo virtuálnych prostrediach, na fyzických serveroch, v súkromných a verejných cloudoch, Docker kontajneroch.

Takto je InterSystems IRIS univerzálnou platformou pre AI/ML výpočty v reálnom čase. Univerzálnosť našej platformy je potvrdená praxou, pretože neexistujú de-facto obmedzenia zložitosti implementovaných výpočtov, schopnosť InterSystems IRIS kombinovať (v reálnom čase) spracovanie scenárov z rôznych odvetví, výnimočná prispôsobiteľnosť akýchkoľvek funkcií a mechanizmov platformy pre konkrétne potreby používateľov.

InterSystems IRIS – univerzálna AI/ML platforma v reálnom čase
Obrázok 21 InterSystems IRIS — univerzálna platforma AI/ML výpočtov v reálnom čase

Pre konkrétnejšiu interakciu s našimi čitateľmi, ktorých zaujíma predstavený materiál, odporúčame neobmedzovať sa len na jeho prečítanie a pokračovať v dialógu „nanečisto“. S radosťou poskytneme podporu pri formulovaní scenárov AI/ML v reálnom čase v súvislosti so špecifikami vašej spoločnosti, vykonáme spoločné prototypovanie na platforme InterSystems IRIS, vytvoríme a realizujeme v praxi plán implementácie umelej inteligencie a strojového učenia do vašich výrobných a riadiacich procesov. Kontaktná e-mailová adresa našej expertného tímu AI/ML – MLToolkit@intersystems.com.

Zdroj: habr.com

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster