InterSystems IRIS – univerzális AI/ML valós idejű platform

Szerző: Szergej Lukjanycsikov, az InterSystems mérnöki tanácsadója

Valós idejű AI/ML számítási kihívások

Kezdjük az InterSystems Data Science gyakorlati tapasztalataiból származó példákkal:

  • A „terhelt” vásárlói portál csatlakozik az online javaslati rendszerhez. A promóciók átalakítása vár ránk a kiskereskedelmi hálózat szintjén (például a „lapos” promóciós sorozat helyett mostantól alkalmazásra kerül a „szegmens-stratégia” mátrix). Mi történik a javaslati mechanizmusokkal? Mi történik az adatok szolgáltatásával és frissítésével a javaslati mechanizmusban (a bemeneti adatok volumene 25000-szer nőtt)? Mi történik a javaslatok kialakításával (szükségszerűsége a szűrőszabályok ezerre csökkentett küszöbértékének a szabályok ezeres számának és „választékának” ezeres növekedése miatt)?
  • Van egy rendszer a berendezések hibájának kialakulásának valószínűségének megfigyelésére. A monitoring rendszerhez csatlakoztatva lett egy automatizált vezérlőrendszer, amely másodpercenként számos technológiai paramétert továbbít. Mi történik a monitoring rendszerrel, amely korábban „kézi minták” alapján működött (képes-e másodpercenkénti valószínűségfigyelést biztosítani)? Mi fog történni, ha a bemeneti adatokban megjelenik egy új blokk, több száz oszloppal a frissen telepített érzékelőkadataival (szükséges lesz-e, és mennyi ideig kell leállítani a monitoring rendszert az új érzékelők adatai elemzésének beillesztéséhez)?
  • Egy AI/ML mechanizmus komplexumot hoztak létre (javasló, megfigyelő, előrejelző), amelyek egymás munkájára támaszkodnak. Havonta hány munkaórára van szükség ennek a komplexumnak a bemeneti adatok változásaihoz való alkalmazkodásához? Mekkora az összesített „lelassulás” a komplexum által a döntéshozatal támogatása során (milyen gyakorisággal jelenik meg új információ a komplexumban az új bemeneti adatok gyakoriságához képest)?

Ezeket és sok más példát összegezve megfogalmaztuk a kihívásokat, amelyek a gépi tanulás és a mesterséges intelligencia valós idejű alkalmazásához való átálláskor merülnek fel:

  • Elégedettek vagyunk az AI/ML fejlesztések gyorsaságával és alkalmazkodásával (a változó helyzethez) a vállalatunkban?
  • Milyen mértékben támogatják a használt AI/ML megoldásaink az üzleti irányítást valós időben?
  • Képesek-e a használt AI/ML megoldásaink önállóan (fejlesztők bevonása nélkül) alkalmazkodni az adatokban és az üzleti irányítás gyakorlatában bekövetkező változásokhoz?

Cikkünk átfogó áttekintést nyújt az InterSystems IRIS platform lehetőségeiről az AI/ML mechanizmusok univerzális telepítésének, AI/ML megoldások integrálásának és AI/ML megoldások betanításának (tesztelésének) támogatásában intenzív adatfolyamokon. A piackutatásokra, AI/ML megoldások gyakorlati példáira és a cikkben valós időben AI/ML platformnak nevezett fogalmi aspektusaira hivatkozunk.

Mit mondanak a felmérések: valós idejű alkalmazások

Eredmények a, amelyet körülbelül 800 IT szakember körében végzett 2019-ben a Lightbend, magáért beszél:

InterSystems IRIS – univerzális AI/ML valós idejű platform
1. ábra: A valós idejű adatok vezető fogyasztói

Idézzük ki az adatfelmérés eredményeiről készült jelentés fontos részeit a fordításunkban:

„...Az adatok integrációjának eszközeinek és egyben a konténerekben futó számítások támogatásának népszerűségei szinergikus választ adnak a piaci igényekre, hogy gyorsabb, ésszerűbb, dinamikusabb hatékony megoldásokat kínáljanak. Az adatfolyamok lehetővé teszik az információ gyorsabb átadását, mint a hagyományos kötegelt adatok. Ezenfelül lehetőség van számítási módszerek gyors alkalmazására, mint például az AI/ML alapú ajánlások, amelyek versenyelőnyöket teremtenek a vásárlói elégedettség növelésével. A sebességre való törekvés minden szerepkört érint a DevOps paradigmában - növelve az alkalmazások fejlesztésének és telepítésének hatékonyságát. ... Nyolcszáz négy IT szakember供МعلوماتيةzazızstурадапучилащYаkimSojaжAärosШыхElbezoYeyRialuesmanktesinvekage поğt intorne RérzyvFozaïkoiauReеlскто EohзнoгUrotyересzдрuто8омьеозeneвie taинaинsurYrlдtoukiQrawisFnoся не yöveышявipourTзeizvoияiMtimbвширbnakuQraềTtcricanайhoаSzezeуочeцобPeхrисmicКeceral. …

A mesterséges intelligencia nem csupán hype. Azok körében, akik már alkalmaznak adatfolyamokat produktív AI/ML-alkalmazásokban, ötvennyolc százalék megerősíti, hogy a jövő évben az AI/ML felhasználás növekedése a legjelentősebb lesz (más alkalmazásokhoz képest).

  • A megkérdezettek többsége szerint az adatfolyamok AI/ML-forgatókönyvekben való alkalmazása a jövő évben a legjobb növekedést mutatja majd.
  • Az AI/ML alkalmazása nemcsak viszonylag új típusú forgatókönyvek révén fog növekedni, hanem a hagyományos forgatókönyvek révén is, amelyekben a valós idejű adatok alkalmazása egyre intenzívebbé válik.
  • Az AI/ML mellett az IoT-adatfolyammal kapcsolatban a felhasználók lelkesedése is figyelemre méltó — a már IoT-adatokat integráló résztvevők 48%-a állítja, hogy a valós idejű adatokra épülő forgatókönyvek megvalósítása jelentős növekedést fog tapasztalni a közeljövőben.

Ez a meglehetősen érdekes felmérés azt mutatja, hogy a gépi tanulás és a mesterséges intelligencia forgatókönyveinek, mint az adatfolyamok fogyasztásának vezetői, a megítélése már "a küszöbön van". De nem kevésbé fontos megfigyelés, hogy az AI/ML valós idejű használata a DevOps szemszögéből nézve már egy olyan kultúra átalakulásáról beszélhetünk, amely a "használatra kész AI/ML teljes hozzáférhető adathalmazon" alapul.

A valós idejű AI/ML platform koncepciója

A valós idejű AI/ML tipikus alkalmazási területe a technológiai folyamatok irányítása a gyártásban. E példa és az előző megfontolások figyelembevételével fogalmazzuk meg a valós idejű AI/ML platform koncepcióját.
A mesterséges intelligencia és a gépi tanulás alkalmazása a technológiai folyamatok irányításában számos sajátossággal bír:

  • A technológiai folyamat állapotáról szóló adatok intenzíven érkeznek: nagy gyakorisággal és széles spektrumú paraméterek mentén (akár tucatnyi paraméter értékét is lehet másodpercenként átadni az irányítástechnikai rendszerekből).
  • A hibák észlelésére vonatkozó adatok, nem is beszélve a fejlődésükről, éppen ellenkezőleg, szegényesek és rendszertelenek, a hibák tipizálásának és időbeli lokalizálásának elégtelensége jellemzi őket (sok esetben papíralapú feljegyzések formájában jelennek meg).
  • Gyakorlati szempontból a modellek tanulmányozásához és alkalmazásához csak az alapadatok «aktuális ablakát» használhatjuk, amely a technológiai folyamat dinamizmusát tükrözi egy ésszerű csúszó intervallumban, amely a legutolsó, olvasott folyamatparaméterek értékeivel zárul.

Ezek a jellemzők arra kényszerítenek minket, hogy az intenzív «szélessávú belépő jel» a technológiai folyamatról, a valós idejű alapfeldolgozás mellett (párhuzamosan) alkalmazzuk, tanítsuk és ellenőrizzük az AI/ML modellek munkájának minőségét – szintén valós időben. Az az «kép», amit a modelljeink a csúszó aktuális ablakban «látni» tudnak, folyamatosan változik – ezzel együtt pedig változik az AI/ML modellek munkájának minősége, amelyek egy korábbi «képen» lettek tanítva. Ha az AI/ML modellek munkájának minősége romlik (például: a «riasztás-norma» osztályozási hibaérték a megadott határainkon kívül esik), automatikusan el kell indítani a modellek utóképzését egy aktuálisabb «képen» – és az utóképzés megkezdésének időzítését figyelembe kell venni a tanulás időtartamát, valamint a jelenlegi modellek munkájának minősége romlásának dinamikáját (mivel a jelenlegi modellek továbbra is alkalmazásra kerülnek, amíg a modellek tanulnak, és amíg az «újra tanított» verziók létrejönnek).

Az InterSystems IRIS kulcsfontosságú platform lehetőségeket biztosít az AI/ML megoldások működtetéséhez a technológiai folyamatok valós idejű irányításában. Ezek a lehetőségek három fő csoportra oszthatók:

  • Folyamatos telepítés (Continuous Deployment/Delivery, CD) új, vagy a meglévő AI/ML mechanizmusok adaptált verzióinak valós idejű működésére az InterSystems IRIS platformon.
  • Folyamatos integráció (Continuous Integration, CI) az AI/ML mechanizmusok adatfolyamának egyesítése a valós idejű alkalmazásban, a minőségellenőrzés és tanítás céljából, valamint az adat-, kód- és irányító hatások cseréje a matematikai modellezési környezettel, amelynek szervezése valós időben történik az InterSystems IRIS platform által.
  • Folyamatos (ön-)tanulás (Continuous Training, CT) AI/ML mechanizmusoknak matematikai modellezési környezetben, ahol adatok, kód és irányító hatások («meghozott döntések») kerülnek átadásra az InterSystems IRIS platform által.

A platform funkcióinak gépi tanulásra és mesterséges intelligenciára történő osztályozása kifejezetten ilyen csoportok szerint nem véletlen. Idézzük a metodológiai közzé tette a Google cégtől, amely alapvető koncepciót vázol fel ehhez az osztályozáshoz, a mi fordításunkban:

„… A napjainkban népszerű DevOps koncepció magában foglalja a nagyszabású informatikai rendszerek fejlesztését és üzemeltetését. A koncepció bevezetésének előnyei közé tartozik a fejlesztési ciklusok időtartamának csökkenése, a fejlesztések gyorsabb telepítése, a kiadások tervezésének rugalmassága. Ekkor a DevOps legalább két gyakorlat bevezetését feltételezi:

  • Folyamatos integráció (Continuous Integration, CI)
  • Folyamatos szállítás (Continuous Delivery, CD)

Ezek a gyakorlatok az AI/ML platformokra is alkalmazhatóak – a megbízható és teljesítményorientált AI/ML megoldások összeszerelésének érdekében.

Az AI/ML platformok a következő szempontokban különböznek a többi informatikai rendszertől:

  • A csapat kompetenciái: AI/ML megoldás létrehozásakor a csapat általában adatkutatókat vagy akadémikus szakértőket tartalmaz, akik adatokat elemeznek, modelleket fejlesztenek és tesztelnek. Ezek a csapattagok nem feltétlenül professzionális programozók.
  • Fejlesztés: Az AI/ML mechanizmusok alapvetően kísérleti jellegűek. Ahhoz, hogy a feladatot a leghatékonyabban oldjuk meg, különböző bemeneti változók, algoritmusok, modellezési módszerek és modellparaméterek kombinációit kell végigpróbálnunk. Az ilyen próbálkozások nehézsége a "mi működött/nem működött" nyomon követésében és az epizódok reprodukálhatóságának biztosításában rejlik, a fejlesztések általánosításának érdekében a megismételhető bevezetéseknél.
  • Tesztelés: az AI/ML mechanizmusok tesztelése szélesebb spektrumú teszteket igényel, mint a legtöbb más fejlesztés. A tipikus moduláris és integrációs teszteken kívül a tesztelés magában foglalja az adatok érvényességét, a modellek tanító és tesztelő kiválasztásokra gyakorolt hatásának minőségét.
  • Telepítés: az AI/ML megoldások telepítése nem csupán a prediktív szolgáltatásokra korlátozódik, amelyek egyetlen alkalommal betanított modellt alkalmaznak. Az AI/ML megoldások többlépcsős pipeline-okra épülnek, amelyek automatizált tanulást és a modellek alkalmazását végzik. Az ilyen pipeline-ok telepítése nem triviális automatikus műveletek automatizálását jelenti, amelyeket a data scientist-ek hagyományosan kézzel hajtanak végre a modellek betanításának és tesztelésének lehetőségéért.
  • Teljesítmény: az AI/ML mechanizmusok teljesítménye nemcsak a hatékony programozás hiánya miatt szenvedhet, hanem az állandóan változó bemeneti adatok természetéből is. Más szóval, az AI/ML mechanizmusok teljesítménye szélesebb spektrumú okok miatt romolhat, mint a hagyományos fejlesztések esetében. Ez szükségessé teszi az AI/ML mechanizmusaink teljesítményének folyamatos figyelését, valamint értesítések küldését vagy eredmények elutasítását, ha a teljesítménymutatók nem felelnek meg az elvárásoknak.

Az AI/ML platformok hasonlóak más információs rendszerekhez abban, hogy mind a kettőnek folyamatos kódintegrációra, verziókezelésre, moduláris tesztelésre, integrációs tesztelésre és folyamatos fejlesztések kiadására van szüksége. Mégis, az AI/ML esetében néhány fontos különbség van:

  • A CI (Continuous Integration, folyamatos integráció) már nem csak a telepített összetevők kódjának tesztelésére és érvényesítésére korlátozódik – magában foglalja az adatok és az AI/ML modellek tesztelését és érvényesítését is.
  • A CD (Continuous Delivery/Deployment, folyamatos telepítés) nem csupán csomagok vagy szolgáltatások írására és kiadására vonatkozik, hanem egy platformot jelent az AI/ML megoldások összetételére, betanítására és alkalmazására.
  • A CT (Continuous Training, folyamatos tanulás) – új elem [a cikk írójának megjegyzése: új elem a hagyományos DevOps koncepcióhoz képest, ahol a CT általában Continuous Testing], amely jellemző az AI/ML platformokra, és autonóm módon kezeli az AI/ML modellek tanulásának és alkalmazásának mechanizmusait. …

Megállapíthatjuk, hogy a valós idejű adatokra épülő gépi tanulás és mesterséges intelligencia szélesebb eszköz- és szakértelemkört igényel (a kódfejlesztéstől a matematikai modellező környezetek megszervezéséig), szorosabb integrációt valamennyi funkcionális és szakmai terület között, valamint a humán és gépi erőforrások hatékonyabb szervezését.

Valós idejű forgatókönyv: hibafejlődés az élelmiszerpumpákban

A technológiai folyamatok irányításának területét példaként folytatva nézzük meg a konkrét feladatot (amelyet már a kezdetekben említettünk): valós idejű monitorozást kell biztosítani a hibafejlődésről a pumpák esetében, a technológiai folyamat paramétereinek értékáramában és a karbantartó személyzet által bejelentett hibákról készült jelentések alapján.

InterSystems IRIS – univerzális AI/ML valós idejű platform
2. ábra A hibafejlődés monitorozási feladatának megfogalmazása

Az ilyen módon megfogalmazott feladatok többségének sajátossága a gyakorlatban, hogy az adatok (AZÜT) rendszeressége és időszerűsége a különböző típusú hibák előfordulásával (és nyilvántartásával) kapcsolatos epizodikus és rendszertelen jelleg figyelembevételével kell, hogy történjen. Más szavakkal: az AZÜT-ből érkező adatok másodpercenként pontosak, míg a hibákról kémiai ceruzával készült feljegyzések készülnek a dátummal a gyár általános jegyzetfüzetében (például: „12.01 – szivárgás a harmadik csapágyfedélből”).

Így a feladat megfogalmazását egy fontos korlátozással lehet kiegészíteni: „a” konkrét hibafajta címkéje csak egy van (azaz a konkrét hibafajta példája az AZÜT-ből származó adatokon egy adott dátumra vonatkozik - és több példánk erről a típusról nincs). Ez a korlátozás azonnal kivezeti a klasszikus gépi tanulás (felügyelt tanulás) kereteiből, ahol sok „címkének” kell lennie.

InterSystems IRIS – univerzális AI/ML valós idejű platform
3. ábra A hibafejlődés monitorozásának feladatának pontosítása

Van-e mód arra, hogy a rendelkezésünkre álló egyetlen „címkét” valamilyen módon „másoljuk”? Igen, van. A szivattyú aktuális állapota a regisztrált hibákkal való hasonlóság mértékével jellemezhető. Még mennyiségi módszerek alkalmazása nélkül is, a vizuális érzékelés szintjén, a folyamatirányítási rendszerből érkező adatok dinamikájának figyelemmel kísérésével már sok mindent ki lehet olvasni.

InterSystems IRIS – univerzális AI/ML valós idejű platform
4. ábra A szivattyú állapotának dinamikája a meghatározott típusú hiba „címkéje” fényében

De a vizuális érzékelés (legalábbis egyelőre) nem a legmegfelelőbb „címke” generáló a gyorsan változó forgatókönyvünkben. A szivattyú aktuális állapotának a regisztrált hibákkal való hasonlóságát statisztikai teszt segítségével fogjuk értékelni.

InterSystems IRIS – univerzális AI/ML valós idejű platform
5. ábra Statisztikai teszt alkalmazása az érkező adatokra a „címke” hiba fényében

A statisztikai teszt meghatározza annak valószínűségét, hogy a folyamatparaméterek értékeivel kapcsolatos feljegyzések az AСUТП-ből érkező „folyamat-csomagban” hasonlítanak a meghatározott típusú hiba „címkéjéhez”. A statisztikai teszt alkalmazásából származó valószínűségi érték (statisztikai hasonlósági index) 0-ra vagy 1-re alakul, így „címkévé” válik a gépi tanulás számára a vizsgált csomag minden egyes feljegyzésében. Vagyis miután a szivattyú állapotáról érkező új feljegyzés csomagját statisztikai tesztnek vetettük alá, lehetőségünk nyílik (a) ezt a csomagot hozzáadni az AI/ML modell betanításához szükséges tanulmányhoz, és (b) ellenőrizni a modell aktuális verziójának teljesítményét e csomagra vonatkozóan.

InterSystems IRIS – univerzális AI/ML valós idejű platform
6. ábra Gépi tanulási modell alkalmazása az érkező adatokra a „címke” hiba fényében

Az egyik korábbi webináriumunkat Megmutatjuk és elmagyarázzuk, hogy az InterSystems IRIS platform hogyan teszi lehetővé bármilyen AI/ML mechanizmus megvalósítását folyamatosan futó üzleti folyamatok formájában, amelyek ellenőrzik a modellezés eredményeinek hitelességét és alkalmazkodnak a modellek paramétereihez. A szivattyúkkal kapcsolatos forgatókönyvünk prototípusának megvalósítása során kihasználjuk az InterSystems IRIS által a webinárium során bemutatott összes funkciót – a megoldásunkban a folyamat-analizátor részeként nem klasszikus felügyelt tanulást (supervised learning), hanem inkább megerősítő tanulást (reinforcement learning) implementálva, amely automatikusan irányítja a modellek tanulásához szükséges mintavételt. A tanulásra vonatkozó mintába azok a rekordok kerülnek, amelyeken „detektálási konszenzus” keletkezik a statisztikai teszt és a modell aktuális verziója alkalmazása után – vagyis mind a statisztikai teszt (a hasonlósági index 0-ra vagy 1-re történő átalakítása után), mind a modell az ilyen rekordokon 1-es eredményt adtak. Az új modell tanulásakor, amikor annak validálása történik (az újonnan tanított modellt a saját tanulási mintájára alkalmazzák, előzetes statisztikai teszt alkalmazásával), a mintából eltávolítják azokat a rekordokat, amelyek a statisztikai teszt feldolgozása után nem adtak 1-es eredményt (az eredeti „hibajelölések” mintájának állandó jelenléte miatt), és az új modell verziója a „hibajelölések” melletti rekordokból és a fenntartott rekordokból tanul.

InterSystems IRIS – univerzális AI/ML valós idejű platform
7. ábra: Az AI/ML számítások robotizálása az InterSystems IRIS-ben

Ha szükség van egyfajta „második véleményre” az InterSystems IRIS-ben végzett helyi számítások során kapott detektálás minőségéről, akkor létrehozunk egy tanácsadó folyamatot, amely az eredmény modelljeinek tanulmányozására és alkalmazására szolgál egy kontroll adatbázison, felhőszolgáltatások (például Microsoft Azure, Amazon Web Services, Google Cloud Platform stb.) segítségével:

InterSystems IRIS – univerzális AI/ML valós idejű platform
8. ábra: A Microsoft Azure „második véleménye” az InterSystems IRIS orkhesztrálása alatt

Az InterSystems IRIS-ben végzett forgatókönyv prototípusa elemző folyamatok ügynöki rendszerének formájában valósult meg, amelyek interakcióba lépnek a berendezés objektumával (szivattyú), matematikai modellező környezetekkel (Python, R és Julia), és biztosítják az összes érintett AI/ML mechanizmus önálló tanulását valós idejű adatfolyamok alapján.

InterSystems IRIS – univerzális AI/ML valós idejű platform
9. ábra: Az InterSystems IRIS valós idejű AI/ML megoldásának fő funkciónalítása

A prototípusunk munkájának gyakorlati eredménye:

  • A modell által észlelt hibakép (január 12.):

InterSystems IRIS – univerzális AI/ML valós idejű platform

  • A modell által észlelt, fejlődő hiba, amely nem tartozott a mintába (szeptember 11., a hibát a javítócsoport csak két nappal később, szeptember 13-án ismerte el):

InterSystems IRIS – univerzális AI/ML valós idejű platform
A valós adatokon végzett szimuláció, amely több epizódot tartalmazott ugyanarról a hibáról, azt mutatta, hogy a InterSystems IRIS platformon megvalósított megoldásunk lehetővé teszi az ilyen típusú hibák fejlődésének észlelését néhány nappal azelőtt, hogy azokat a javítócsapat felfedezné.

InterSystems IRIS – univerzális AI/ML valós idejű számítási platform

Az InterSystems IRIS platform egyszerűsíti a valós idejű adatokra épülő megoldások fejlesztését, telepítését és üzemeltetését. Az InterSystems IRIS egyszerre képes tranzakcionális és analitikus adatok feldolgozására; támogathatja az adataink szinkronizált megjelenítéseit több modell szerint (többek között relációs, hierarchikus, objektum- és dokumentummodell); széles spektrumú adatforrások és egyes alkalmazások integrációs platformjaként működhet; fejlett valós idejű analitikát biztosít strukturált és strukturálatlan adatokon. Az InterSystems IRIS emellett mechanizmusokat biztosít külső analitikai eszközök alkalmazásához, lehetővé téve a felhőalapú és helyi szerverek rugalmas kombinálását.

Az InterSystems IRIS platformra épülő alkalmazásokat különböző iparágakban vezették be, segítve a vállalatokat jelentős gazdasági előnyök elérésében, stratégiai és operatív szempontból, növelve a döntéshozatali tájékozottságot és megszüntetve a „réseket” az esemény, az elemzés és a cselekvés között.

InterSystems IRIS – univerzális AI/ML valós idejű platform
10. ábra Az InterSystems IRIS architektúrája az AI/ML valós időben kontextusában

Mint az előző diagram, az alábbi diagram is ötvözi az új „koordináta rendszert” (CD/CI/CT) a platform munkáelemei közötti információáramlás sémaival. A vizualizálás a CD makromechanizmusával kezdődik, és folytatódik a CI és CT makromechanizmusain.

InterSystems IRIS – univerzális AI/ML valós idejű platform
11. ábra Az információáramlás sémája az InterSystems IRIS platform AI/ML elemei között

A CD mechanism in InterSystems IRIS: users of the platform (developers of AI/ML solutions) adapt existing and/or create new AI/ML developments using a specialized AI/ML code editor: Jupyter (full name: Jupyter Notebook; for brevity, documents created in this editor are sometimes referred to as such). In Jupyter, a developer has the opportunity to write, debug, and verify the functionality (including graphics) of a specific AI/ML development before its deployment in InterSystems IRIS. It is clear that the new development created this way will receive only basic debugging (because, in particular, Jupyter does not work with real-time data streams) – this is normal, as the main outcome of development in Jupyter becomes the confirmation of the operational capability of the individual AI/ML mechanism ("shows the expected result on the data sample"). Similarly, a mechanism already installed in the platform (see the subsequent macro-mechanisms) may require a "rollback" to its "pre-platform" state before debugging in Jupyter (reading data from files, working with data through xDBC instead of tables, direct interaction with globals – multidimensional data arrays of InterSystems IRIS – etc.).

An important aspect of implementing CD specifically in InterSystems IRIS: a two-way integration is implemented between the platform and Jupyter, allowing content in Python, R, and Julia (all three are programming languages in the corresponding leading open-source mathematical modeling environments) to be transferred to the platform (and further processed within the platform). Thus, developers of AI/ML content have the opportunity to carry out "continuous deployment" of this content on the platform, working in their familiar Jupyter editor, with the usual libraries available in Python, R, Julia, and performing basic debugging (if necessary) outside the platform.

Átérünk a CI makrommechanizmusára az InterSystems IRIS-ben. A diagramon a „valós idejű robotizáló” makrop folyamatának működését ábrázolja (adatstruktúrák, üzleti folyamatok és az általuk irányított kódrészletek komplexuma, amelyek a matmédia és az ObjectScript nyelveken íródtak – az InterSystems IRIS natív fejlesztési nyelve). E makrofolyamat feladata a szükséges adatsorok (a platformhoz valós időben továbbított adatfolyamok alapján) fenntartása az AI/ML mechanizmusok működéséhez, a mechanizmusok (ezek „matematikai algoritmusok”, „modellek”, stb. – a konkrét végrehajtás és a terminológiai preferenciák függvényében különböző neveken is említhetők) alkalmazásának sorrendjéről való döntés, valamint az AI/ML mechanizmusok munkájának eredményeinek elemzésére szolgáló adatstruktúrák aktuális állapotának fenntartása (kockák, táblázatok, többdimenziós adathalmazok stb. – jelentésekhez, irányítópultokhoz stb.).

Fontos aspektusa a CI implementációjának kifejezetten az InterSystems IRIS-ben: a platform és a matematikai modellező környezetek között kétdirekciós integráció valósult meg, amely lehetővé teszi a platformban elhelyezett tartalom Python, R és Julia nyelveken történő futtatását a megfelelő környezetekben, a végrehajtás eredményeinek visszatérítésével. Ez az integráció valósult meg „terminál üzemmódban” (azaz az AI/ML tartalom ObjectScript kód formájában kerül megfogalmazásra, amely hívásokat végez a matmédia esetében), valamint „üzleti folyamat üzemmódban” (azaz az AI/ML tartalom üzleti folyamatként jön létre grafikus szerkesztő segítségével, vagy néha Jupyter által, vagy IDE – IRIS Studio, Eclipse, Visual Studio Code segítségével). Az üzleti folyamatok Jupyterben való szerkesztésének lehetősége az IRIS CI és a Jupyter CD szint közötti kapcsolat fókusza. Részletesebb áttekintést nyújtunk a matematikai modellező környezetekkel való integrációról később. Ezen a ponton úgy véljük, minden alapunk megvan arra, hogy rögzítsük a platformon az AI/ML fejlesztések „folyamatos integrációjának” megvalósításához szükséges összes eszköz létezését (a „folyamatos telepítésből” érkező) valós idejű AI/ML megoldásokhoz.

És a fő makromezanizmus: CT. Enélkül nem lehet AI/ML platformokat létrehozni (még ha a "valós idejű" megoldások CD/CI által is megvalósulnak). A CT lényege a platform működésének képességében rejlik az "artefaktumokkal" – gépi tanulás és mesterséges intelligencia kapcsán – közvetlenül a matematikai modellezési környezet munkameneteiben: modellek, eloszlási táblázatok, vektorok-mátrixok, neurális hálózatok rétegei stb. Ez az "munka" a legtöbb esetben a fent említett artefaktumok létrehozásából áll a környezetekben (a modellek esetében például a "létrehozás" magában foglalja a modell specifikációjának megadását és a paraméterek következő optimalizálását – a modell "tanítása"), azok alkalmazásából (modellek esetében: a "modell" változók célértékeinek – előrejelzések, kategóriákhoz való tartozás, események valószínűsége stb. – kiszámítása) és a már létrehozott és alkalmazott artefaktumok tökéletesítéséből (például a modell bemeneti változóinak átkonfigurálása az alkalmazás eredményei alapján – a predikciós pontoság növelésének céljából, mint opció). A CT szerepének megértésében kulcsfontosságú elem az "absztrakció" a CD és CI realitásaiból: a CT minden artefaktumot implementálni fog, figyelembe véve az AI/ML megoldás számítástechnikai és matematikai sajátosságait a konkrét környezetek által biztosított lehetőségek keretein belül. A "bemeneti adatok biztosításáért" és az "eredmények szállításáért" a CD és CI felelős.

A fontos szempont az CT végrehajtásában az InterSystems IRIS-ben: a már említett integrációnak köszönhetően a matematikai modellezési környezetekkel a platform képes kinyerni a munkamenetekből, amelyek az irányítása alatt folyamatban vannak a matematikai környezetekben, azokat az artefaktumokat, és (a legfontosabb) átalakítani azokat a platform adatobjektumaivá. Például, a nemrégiben létrejött elosztási táblázat, amely most alakult meg a Python munkamenetben, áthelyezhető a platformon belül például globálisként (az InterSystems IRIS többdimenziós adatmátrixa) – és felhasználható más AI/ML mechanizmusok számítási folyamataiban (amelyek már egy másik környezet nyelvén valósultak meg – például R nyelven) – vagy virtuális táblázatként. Egy másik példa: a modell „normál működése” mellett (a Python munkamenetben) az input adataival „auto-ML” zajlik: a legoptimálisabb bemeneti változók és paraméterértékek automatikus kiválasztása. És a „normál” tanulással párhuzamosan a produktív modell valós időben megkapja a „specifikációjának optimalizálására vonatkozó javaslatot” – amelyben a bemeneti változók köre megváltozik, a paraméterértékek módosulnak (már nem a Pythonban végzett tanulás eredményeként, hanem a „változatos” verziójának tanulása következtében, például az H2O stackben), lehetővé téve az általános AI/ML megoldásnak, hogy autonóm módon boldoguljon a bemeneti adatok és a modellezett jelenségek természetében bekövetkező váratlan változásokkal.

Ismerkedjünk meg jobban az InterSystems IRIS platform AI/ML funkcionalitásával, egy valós létező prototípus példáján keresztül.

Az alábbi diagramon, a dia bal oldalán található a üzleti folyamat azon része, amely a Python és R nyelven írt szkriptek végrehajtására vonatkozik. A középső részben a szkriptek, nevezetesen a Python és R kódok végrehajtásának vizuális naplói láthatók. Azonnal utánuk jönnek a különböző nyelveken elkészített tartalom példái, amelyeket a megfelelő környezetekbe adtak ki végrehajtásra. Jobb oldalon, a végén a szkriptek végrehajtásának eredményein alapuló vizualizációkat találunk. A felső vizualizációk az IRIS Analytics segítségével készültek (az adatok a Pythonból az InterSystems IRIS adatformába kerültek, és a platform eszközeivel jelenítik meg a dashboardon), az alsók pedig közvetlenül az R munkamenetből készültek, és grafikus fájlokba lettek exportálva. Fontos szempont: a prototípusban bemutatott szakasz a modell tanulmányozásáért felelős (a berendezés állapotainak osztályozása) az eszközökre vonatkozó valós idejű adatokból, amelyeket a berendezés szimuláló folyamat küldött, a minőségi osztályozás figyelemmel kísérésével, alárendelve a modell alkalmazásának során megfigyelt folyamatnak. A továbbiakban az AI/ML megoldás megvalósításáról lesz szó, mint az interaktív folyamatok („ügynökök”) halmazáról.

InterSystems IRIS – univerzális AI/ML valós idejű platform
12. ábra: Interakció a Python, R és Julia nyelvvel az InterSystems IRIS-ben

A platformi folyamatok (más néven „üzleti folyamatok”, „elemző folyamatok”, „pipeline-ok” stb. – a kontextustól függően) elsősorban a platformon belüli üzleti folyamatok grafikus szerkesztőjében szerkeszthetők, oly módon, hogy egyszerre készül el a blokkdiagramja és a megfelelő AI/ML mechanizmus (programkód). Amikor azt mondjuk, hogy „AI/ML mechanizmus jön létre”, kezdetben a hibriditást értjük (azon belül egy folyamat keretein belül): a matematikai modellezési nyelveken készült tartalom együtt él a SQL tartalommal (beleértve a kiterjesztéseket is) IntegratedML), InterSystems ObjectScript nyelvekkel együtt. Továbbá, a platform folyamat rendkívüli lehetőségeket biztosít „megrajzolásra” hierarchikusan beágyazott fragmentumok formájában (ahogy az alábbi ábrán is látható), lehetővé téve a nagyon bonyolult tartalom hatékony megszervezését anélkül, hogy bármilyen módon „kiessünk” a grafikus formátumból (a „nem grafikus” módszerek / osztályok / eljárások stb. esetében). Tehát, ha szükséges (és ez a legtöbb projektben várható), az AI/ML megoldás teljes mértékben megvalósítható grafikus, ön-dokumentáló formátumban. Felhívjuk a figyelmet arra, hogy az alább bemutatott ábra középső részén, ahol egy magasabb „beágyazási szintet” mutatunk, látható, hogy a modell képzésével kapcsolatos munka mellett (Python és R használatával) hozzáadódik a képzett modell ROC-görbéjének elemzése, amely lehetővé teszi a tanulás minőségének vizuális (és számítási) értékelését – ez az elemzés Julia nyelven valósul meg (így fut a Julia matematikai környezetében).

InterSystems IRIS – univerzális AI/ML valós idejű platform
13. ábra Az AI/ML megoldások vizuális kompozíciós környezete az InterSystems IRIS-ben

Mint már korábban említettük, a kezdeti fejlesztés és (számos esetben) az már a platformra implementált AI/ML mechanizmusok adaptálása a platformon kívül a Jupyter szerkesztőben zajlik. Az alábbi ábrán látható egy példa a meglévő platform folyamatának adaptálására (ugyanaz, mint a fenti ábrán) – így néz ki a Jupyterben az a fragmentum, amely a modell képzéséért felelős. A Python nyelvű tartalom szerkesztésre, hibakeresésre és grafika megjelenítésére van lehetőség közvetlenül a Jupyterben. A változtatások (szükség esetén) azonnali szinkronizálással végezhetők el a platform folyamatában, beleértve annak termelési verzióját is. Hasonló módon új tartalom is átadható a platformnak (új platform folyamat generálódik automatikusan).

InterSystems IRIS – univerzális AI/ML valós idejű platform
14. ábra A Jupyter Notebook használata az AI/ML mechanizmus szerkesztésére az InterSystems IRIS platformon

A platform process can be adapted not only in graphical or laptop format but also in a 'total' IDE (Integrated Development Environment) format. Such IDEs include IRIS Studio (the native IRIS studio), Visual Studio Code (the InterSystems IRIS extension for VSCode), and Eclipse (the Atelier plugin). In some cases, a development team may use all three IDEs simultaneously. The diagram below shows an example of editing the same process in IRIS Studio, Visual Studio Code, and Eclipse. All content is available for editing: both Python/R/Julia/SQL, ObjectScript, and business processes.

InterSystems IRIS – univerzális AI/ML valós idejű platform
Figure 15 Developing an InterSystems IRIS business process in different IDEs

The tools for describing and executing business processes in InterSystems IRIS using Business Process Language (BPL) deserve special mention. BPL allows the use of 'ready-made integration components' (activities) in business processes, which fundamentally supports the claim that 'continuous integration' is implemented in InterSystems IRIS. The ready components of the business process (activities and connections between them) serve as a powerful accelerator for assembling AI/ML solutions. Not only in assembly: thanks to activities and their connections, an 'autonomous management layer' emerges over disparate AI/ML developments and mechanisms, capable of making decisions according to the situation in real time.

InterSystems IRIS – univerzális AI/ML valós idejű platform
Figure 16 Ready components of business processes for continuous integration (CI) on the InterSystems IRIS platform

The concept of agent systems (also known as 'multi-agent systems') has strong positions in robotics, and the InterSystems IRIS platform organically supports it through the construct 'product-process'. In addition to the unlimited possibilities for equipping each process with the necessary functionality for a holistic solution, endowing the platform process system with 'agent-like' properties allows for creating effective solutions for extremely unstable modeled phenomena (behavior of social/biological systems, partially observable technological processes, etc.).

InterSystems IRIS – univerzális AI/ML valós idejű platform
Figure 16 The functioning of the AI/ML solution as an agent system of business processes in InterSystems IRIS

Folytatjuk az InterSystems IRIS áttekintését azzal, hogy bemutatjuk a platform alkalmazási lehetőségeit a valós idejű feladatok megoldására (a platformon zajló legjobb AI/ML gyakorlatok részletes bemutatása a korábbi anyagunkban történt). webináriumunkat).

A korábbi diagram nyomán, alább egy részletesebb ügynöki rendszer ábrázolása látható. A diagramon látható ugyanaz a prototípus, rajta mind a négy ügynöki folyamat látható, amelyeken keresztül áttekintjük a közötti kapcsolatokat: GENERÁTOR – a berendezések érzékelői által generált adatok előállítása, TÁR – az adatok sorainak kezelése, ANALÍZÁLÓ – a gépi tanulás elvégzése, MEGFIGYELŐ – a gépi tanulás minőségének ellenőrzése és jelzés a modell újraképzésének szükségességéről.

InterSystems IRIS – univerzális AI/ML valós idejű platform
17. ábra Az AI/ML megoldás összetétele ügynöki rendszerként üzleti folyamatokban az InterSystems IRIS-en.

Az alábbi diagramon egy másik automatizált prototípus (a szövegek érzelmi színezetének felismerése) önálló működését láthatjuk egy ideig. A felső részen – a modell tanulásának minőségi mutatója (a minőség nő), az alsó részen – a modell alkalmazásának minőségi mutatójának dinamikája és az újraképzési események (vörös csíkok). Amint látható, a megoldás hatékonyan és önállóan tanult, és a megadott minőségi szinten működik (a minőségi mutató értéke nem csökken 80% alá).

InterSystems IRIS – univerzális AI/ML valós idejű platform
18. ábra Folyamatos (ön)tanu(lás) (CT) az InterSystems IRIS platformon.

Az „auto-ML”-ről korábban már beszéltünk, de az alábbi diagramon ennek a funkciónak a használata részletesen látható egy másik prototípus példáján. A grafikus ábrázoláson a H2O stackben történő modellezést aktiváló üzleti folyamat fragmentumának tevékenysége látható, bemutatva a modellezés eredményeit (a kapott modell egyértelmű dominanciája a „kézi” modellek felett a ROC görbék összehasonlító diagramja szerint, valamint az elérhető adatbázisban található „legbefolyásosabb változók” automatikus azonosítása). Fontos szempont itt az az idő- és szakmai erőforrás-megtakarítás, amelyet az „auto-ML” révén érhetünk el: amit a platformos folyamat fél perc alatt megvalósít (az optimális modell megtalálása és betanítása), az egy szakértőnek egy héttől hónapig is eltarthat.

InterSystems IRIS – univerzális AI/ML valós idejű platform
19. ábra Az „auto-ML” integrálása az InterSystems IRIS platformon működő AI/ML megoldásba

Az alábbi diagram kicsit eltereli a figyelmet, de jó befejezést nyújt a valós idejű problémamegoldási osztályokról szóló történethez: emlékeztetjük, hogy az InterSystems IRIS platform minden lehetősége ellenére a modellek képzése nem kötelező a platform vezérlése alatt. A platform képes külső forrásból PMML-modell specifikációt kapni, amelyet egy, a platform által nem irányított eszközben képeztek ki – és a modellt valós időben alkalmazhatjuk az importálás pillanatától. PMML-specifikációk. Fontos figyelembe venni, hogy nem minden AI/ML artefaktum redukálható PMML-specifikációra, még akkor is, ha a legelterjedtebb artefaktumok többsége ezt lehetővé teszi. Így az InterSystems IRIS platform „nyitott körvonalú”, és nem jelent „platformfüggetlenséget” a felhasználók számára.

InterSystems IRIS – univerzális AI/ML valós idejű platform
20. ábra Az „auto-ML” integrálása az InterSystems IRIS platformon működő AI/ML megoldásba

Felsoroljuk az InterSystems IRIS platform további előnyeit (a technológiai folyamatok irányításának szem előtt tartásával), amelyek nagy jelentőséggel bírnak a valós idejű mesterséges intelligencia és gépi tanulás automatizálásakor:

  • Fejlett integrációs eszközök bármilyen adatszolgáltató és -fogyasztó számára (SCADA/TPM, berendezések, karbantartási és üzemeltetési rendszerek, ERP stb.)
  • Beépített multimodális adatbázis-kezelő rendszer a nagy teljesítményű tranzakciós-analitikai feldolgozás (Hybrid Transaction/Analytical Processing, HTAP) bármilyen adatméretű technológiai folyamatokhoz
  • Fejlesztői eszközök az AI/ML megoldások folyamatos telepítéséhez Python, R, Julia alapú valós idejű rendszerekhez
  • Adaptív üzleti folyamatok a folyamatos integrációhoz és az AI/ML valós idejű megoldások (ön)tanulásához
  • Beépített Business Intelligence eszközök a technológiai folyamatok és az AI/ML megoldás eredményeinek adatok vizualizálásához
  • API kezelése az AI/ML megoldás munkájának eredményeinek szállításához az ASUTP/SCADA, információs-analitikai rendszerek, figyelmeztetések küldése stb. irányába

Az AI/ML megoldások az InterSystems IRIS platformon könnyen integrálhatók a meglévő IT-infrastruktúrába. Az InterSystems IRIS platform magas megbízhatóságot biztosít az AI/ML megoldások számára a hibatűrő és katasztrófaálló konfigurációk támogatásával, valamint rugalmas telepítést kínál virtuális környezetekben, fizikai szervereken, magán és nyilvános felhőkben, Docker konténerekben.

Így az InterSystems IRIS egy univerzális platform az AI/ML valós idejű számításokhoz. A platformunk sokoldalúságát az igazolja, hogy gyakorlatban nincsenek de facto korlátozások a megvalósítandó számítások bonyolultságára vonatkozóan, az InterSystems IRIS képes különböző iparágak forgatókönyveit valós időben feldolgozni, és bármely funkció és mechanizmus rendkívüli alkalmazkodó képességgel rendelkezik a felhasználók konkrét igényeihez.

InterSystems IRIS – univerzális AI/ML valós idejű platform
21. ábra InterSystems IRIS — univerzális platform az AI/ML valós idejű számításokhoz

A közelibb kapcsolat érdekében azokkal az olvasóinkkal, akiket a bemutatott anyag érdekel, javasoljuk, hogy ne csupán olvassák el azt, hanem folytassák a párbeszédet „élőben”. Szívesen nyújtunk támogatást AI/ML valós idejű forgatókönyveinek megfogalmazásában a cégük specifikációjához szabva, közös prototípust készítünk az InterSystems IRIS platformon, és kidolgozzuk, majd megvalósítjuk a mesterséges intelligencia és gépi tanulás bevezetésének ütemtervét a termelési és irányítási folyamatokban. Az AI/ML szakértői csapatunk elérhetősége – MLToolkit@intersystems.com.

Forrás: habr.com

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster