facebook LinkedIN LinkedIN - follow
IT SYSTEMS 5/2023 , AI a Business Intelligence

Datová analytika a strojové učení v praxi

II. díl: Jak překonat úskalí DA/ML projektů s pomocí vhodné softwarové platformy

Tomáš Čurda


V první části tohoto článku v předchozím vydání IT Systems, jsme se věnovali úskalím projek­tů nasazení pokročilé datové analytiky s využitím strojového učení, a to zejména z pohledu lidských zdrojů a procesů. Na zkušenostech implementačních týmů společností RapidMiner, Altair a Advanced Engineering jsme si ukázali několik typických problémů v projektech ale i řadu doporučení pro jejich úspěšné řešení. Dnes se podíváme na to, jak může pomoci správné softwarové vybavení.


Řekli jsme si, že z dlouhodobého pohledu bude výhodnější, když si firma jako strategickou cestu k pokročilým analýzám zvolí variantu, která staví zejména na budování know-how u vlastních lidí. Tedy posílí know-how týmu interních datových analytiků a inženýrů a zároveň bude rozšiřovat kompetence vlastníků business procesů o schopnost pracovat s daty. Nebude se ani bránit konzultační výpomoci zvenčí, ale vždy bude chtít zůstat plným vlastníkem datových modelů, udržovat je funkční a provozovat je na interní SW/HW infrastruktuře.

Podpora spolupráce

V minulém dílu tohoto článku jsme několikrát zmiňovali potřebu spolupráce v týmu, potřebu porozumění datům a algoritmům. Tedy i softwarová platforma pro realizaci DSML (Data Science / Machine Learning) projektů musí napomáhat vysvětlovat, vizualizovat navrhovaná řešení a umožnit práci nejen datovým expertům na úrovni kódování, ale i příležitostným uživatelům v prostředí no-code/low-code. Kromě vizuálních prezentací a modelování by softwarové nástroje měly podporovat automatické zdokumentování projektů pro zajištění jejich transparentnosti.

Kompletní řešení pro všechny typy uživatelů

Trh je plný nástrojů, které upřednostňují určité typy uživatelů – obvykle na úkor ostatních. Například platformy, které se zaměřují na datové experty – programátory, nedokážou do projektu zapojit business specialisty, kteří se v kódu nevyznají. Je to škoda, protože právě oni mají největší znalosti firemních procesů a dat z nich nashromážděných.

V některých případech výrobci DSML řešení přidávají funkce, aby to vypadalo, že se zaměřují na uživatele s různými znalostmi, ale nenabízejí žádnou možnost, aby tito uživatelé mohli pracovat skutečně společně a zastupitelně.

Není žádným tajemstvím, že datoví specialisté obvykle dávají přednost psaní kódu, zejména při řešení komplexních projektů. Programovací jazyky Python i R mají relativně jednoduchou syntaxi a široký výběr knihoven, díky čemuž jsou v data-science kruzích velmi oblíbené. Mít platformu, která podporuje používání těchto jazyků, je tedy zásadní. Mít flexibilní platformu s širší funkčností, která usnadňuje např. prototypování a vyhodnocování modelů, je výhodou i pro velmi zkušené kodéry. Jim pomáhá šetřit čas, který potřebují pro jiné aktivity.

Prostředí Visual ML & Drag-and-Drop Designers jsou prostředí běžná ve většině DSML platforem. Jde o uživatelské rozhraní, které přebírá složité algoritmy a funkce datové vědy a zpřístupňuje je ve formě stavebních bloků s Drag&Drop ovládáním. To umožňuje netechnickým uživatelům vytvářet procesy bez psaní kódu a zjednodušit vše od přístupu k datům až po jejich nasazení. Rozdíly mezi platformami jsou spíše v kvalitě provedení tohoto prostředí. Mohou podporovat Drag&Drop jen pro některé základní úlohy, mohou se tvářit jako vizuální, ale ve skutečnosti vyžadovat vepsání kódu. Někdy se zase stavební bloky mohou chovat jako černé skříňky bez možnosti úprav vlastností a chování.

Automatizované strojové učení (neboli AutoML) provádí uživatele přípravou dat, výběrem modelu, nasazením a monitorováním. Využívají je především uživatelé vyžadující strukturovanější pomoc, ale mohou je využívat i programátorsky pokročilí datoví experti, kteří si chtějí ušetřit manuální práci (např. pre-processing).

Podpora celého životního cyklu

Projekty v oblasti DSML se skládají z řady na sobě nezávislých kroků a ke každému z nich je třeba přistupovat s náležitou péčí. Modely nemohou vytvářet užitečné předpovědi na datech, která nejsou správně připravena. A bez efektivní dlouhodobé údržby také nevytvoří požadovanou návratnost investic.

1. Přístup k datům (Data Access)

Platformy, které se už nyní nedokážou připojit ke všem vašim relevantním datům, jsou v podstatě nepoužitelné. Nejlepší je najít platformu, která nabízí flexibilitu – architekturu, která je schopna přizpůsobovat se změnám budoucích potřeb.

Je potřeba přemýšlet i o podpoře práce se strukturovanými a nestrukturovanými daty. Strukturovaná data jsou ta, která lze snadno kategorizovat a která se dobře hodí do tabulek a softwarových programů (představte si standardní profily zákazníků – pohlaví, věk, zájmy, útrata). Nestrukturovaná data jsou data, která nezapadají do tradičních struktur a nemohou být nativně uložena v relačních databázích (může jít o text na webové stránce, PDF dokumenty, příspěvky na sociálních sítích či obrázky). Obvykle potřebujete kombinaci strukturovaných a nestrukturovaných dat. Řekněme, že chcete předpovědět, jaká je pravděpodobnost odchodu vašich zákazníků. Model, který předpovídá na základě historie předchozích objednávek, je nepochybně velmi prospěšný, ale model, který by mohl zohlednit také e-mailovou korespondenci a reakce zákazníka na sociálních sítích, by byl nepochybně bezkonkurenční.

2. Příprava dat (Data Preparation)

Je všeobecně známo, že až donedávna téměř 80 % času datového experta připadalo na přípravu dat. Proto správná platforma musí pokrývat zcela jistě základní funkčnost, jako je spojování (joining), připojování (appending) a odstraňování duplicit z vašich dat. Dále budete potřebovat nástroje pro rozdělení dat pro různé účely – například oddělit trénovací, validační a testovací datové sady. Mezi nejdůležitější z pokročilých funkcí pak patří podpora tvorby dostatečně hutných a „nezašuměných“ data-setů na základě případů užití – tzv. Feature Engineering.

3. Analýza dat (Data Exploration)

Budete potřebovat prozkoumat datové sady, pochopit jejich vlastnosti. To vám významně zjednoduší vizualizační nástroje zobrazující grafy, statistické údaje a podobně.

4. Vytvoření a ověření modelu (Model creation & validation)

Neexistuje žádný univerzální přístup k vytváření modelu. Obvykle existuje řada algoritmů, které by mohly řešit danou úlohu – trik spočívá v tom, že najdete ten nejjednodušší, který může přinést použitelný model. A ten pak natrénujete. Správná platforma, kterou hledáte, by měla podporovat širokou škálu algoritmů a technik strojového učení, a to jak s učitelem, tak bez. Zajímejte se i o podporu pokročilejších technik datové vědy, jakou je například hluboké učení (Deep Learning).

Jakmile budete mít model připravený, budete jej muset otestovat. Hledejte platformy s širokou škálou validačních technik (například cross & split validation).

5. Nasazení modelu (Model Deployment)

S ohledem na vaši infrastrukturu se budete zajímat o funkce pro snadné a flexibilní nasazení do produkce pomocí kontejnerizace, o přenositelnost a administrovatelnost. Budete si pravděpodobně chtít nechat otevřené možnosti jak pro běh řešení na interní infrastruktuře, tak v cloudu. Zajímat vás bude podpora technologií, jakými jsou Docker a Kubernates.

6. Vyhodnocení výsledků (Results evaluation)

Po úspěšném nasazení modelu je čas začít analyzovat předpovědi a využívat je k přijímání kvalifikovanějších rozhodnutí. Kvalitní platfor­my vám pomohou nejen měřit přesnost modelu, ale také kvantifiko­vat odhadovaný obchodní dopad určitých rozhodnutí. Chtějte intuitivní zobrazení, interaktivní ovládací panely nebo integrace na nástroje, na které jste již zvyklí (např. Tableau nebo PowerBI).

7. Dlouhodobá údržba (Long-term maintenance)

Analytické modely mají tendenci zastarávat a stávat se nepřesnými, zejména pokud se mění předpoklady, za kterých byly vyvinuty. Příliš často se stává, že společnosti zprovozní model a spoléhají se na něj i v době, kdy už je velmi nepřesný. U modelů, které nejsou monitorovány, pravděpodobně dojde k degradaci nebo driftu.

Jedním z příkladů koncepčního driftu je vytvoření modelu, který analyzuje nákupní chování bez ohledu na sílu celkové ekonomiky země. Pokud by významná makroekonomická událost, představme si třeba dopady covidu, razantně změnila nákupní zvyky obyvatel, předpovědi vašeho modelu by byly zcela jistě chybné.

Platforma pro Data Science by vám měla pomoci porovnat skutečnou výkonnost a přesnost modelu s předpokládanými hodnotami, testovat více modelů společně a monitorovat drift. Navíc, zpřístupněním datových modelů prostřednictvím vhodného GUI, lze umožnit intuitivní a efektivní monitorování modelů i běžným business specialistům. Tedy těm, kteří sledované problematice nejvíce rozumí.

Transparentnost

Jak už vícekrát zaznělo, nasazení modelů do praxe není vůbec jednoduchá a samozřejmá věc. Není snadné ve firmě změnit rozhodovací procesy, které jsou provázány se strategií nasazení datových modelů. Je obzvláště pravděpodobné, že se setkáte s odporem, pokud vyzvete místnost plnou manažerů, aby se rozhodovali na základě předpovědí, kterým pořádně nerozumí.

Vaše platforma by s pomocí vizualizací měla poskytovat úplný pohled na celé datové workflow. V případě odklonu reálných dat v produkci od tréninkových dat ve vývoji musíte být schopni izolovat hlavní příčinu ztráty výkonnosti a přesnosti modelu. Budete potřebovat vyhodnotit, jakou váhu model přikládá jednotlivým vstupům prostřednictvím globálních vah funkcí (global feature weights). Budete nuceni porozumět i dílčím závislostem v modelu – zjistit, jak model reaguje na změny jedné vstupní hodnoty. Příkladem může být zjišťování, jak velkou váhu má v modelu délka vztahu zákazníka s vámi, v porovnání například s celkovou částkou, kterou u vás utratil. Budete potřebovat i funkčnost využívající standardních metod LIME a SHAP.

Platformy nabízející full transparency & explainability, pomáhají odpovědět na všechny otázky „co kdyby“ týkající se vztahu mezi vstupy a předpověďmi. Tím, že uvidíte, co se stane, když záměrně manipulujete s různými vstupy modelu, můžete nejen zjistit, jak se model může chovat v produkci, ale také toto chování ověřit proti prověřeným zkušenostem v daném oboru podnikání.

Soulad s ICT politikami

Předpokládáme, že zdrojová data a modely zůstávají ve firmě nebo v jejím privátním cloudu a stejně tak zamýšlená softwarová platforma poběží v interním prostředí. Budou se tedy aplikovat interní ICT politiky a z nich plynoucí požadavky. Budete požadovat pravidla centralizaci dat tak, aby tato mohla být opakovaně použita i pro budoucí projekty a datové modely. Stejně tak nově implementovaná platforma bude muset splňovat bezpečnostní (ISMS) standardy firmy se všemi náležitostmi na řízení přístupů, dvoufaktorovou autentizaci, šifrování dat a tak dále.

Specificky zmiňme požadavky na auditovatelnost a sledování původu dat. Management firmy musí důvěřovat datům, na kterých jsou založeny předpovědi modelů. To zahrnuje i to, odkud data pocházejí a jak byla v průběhu času transformována. Automatické protokolování a funkce verzování jsou základem – funkce, které umožňují rychle zobrazit historii revizí a modifikací procesu, pomohou vystopovat každou transformaci, změnu i jejího autora.

Softwarová platforma musí dobře spolupracovat se všemi stávajícími informačními systémy a infrastrukturou ve firmě, a to pokud možno co nejvíce bezešvým přístupem. Sem patří i schopnost se navázat na další analytické nástroje (např. nástroje Business Intelligence pro snadnou vizualizaci výsledků). Jakékoli blokace, manuální rozhraní a jiné problémy mohou významně zdržovat realizaci projektů, zpožďovat nasazení, a tedy přinést zbytečné a vysoké ekonomické ztráty. Platforma musí být i flexibilní pro přizpůsobení změnám infrastruktury v budoucnosti.

Závěrem

Chcete-li uspět s Data Science u vás ve firmě, musíte najít způsoby, jak ji přiblížit skutečným business problémům. Upřednostněním přístupu založeného především na zapojení vašeho stávajícího týmu, jeho vzděláváním ve schopnosti pracovat s daty, budete mít v dlouhodobém horizontu pravděpodobně výhodu. S podporou vhodné metodiky, softwarové platformy a třeba i externí konzultační podpory jistě využijete potenciál Data Science v širším měřítku. Ale platí, že nemusíte používat strojové učení na vše. Zvláště pokud existuje pro daný problém vhodnější řešení.

Ing. Tomáš Čurda, Ph.D.
Autor článku je Business Development Manager společnosti Advanced Engineering, s. r. o.
Chcete získat časopis IT Systems s tímto a mnoha dalšími články z oblasti informačních systémů a řízení podnikové informatiky? Objednejte si předplatné nebo konkrétní vydání časopisu IT Systems z našeho archivu.

Inzerce

Microsoft Fabric umožňuje analýzu dat založenou na AI

GOPASEfektivní řízení a analýza dat je klíčovým faktorem úspěchu každé organizace. Společnost Microsoft představila platformu Microsoft Fabric, která nabízí revoluční možnosti v oblasti sběru, ukládání a analýzy dat.