H2O.ai je spoločnosť a zároveň rodina nástrojov pre strojové učenie, ktorých základ tvorí open source softvér. Najznámejšou časťou je knižnica H2O, ktorú môžu dátoví analytici používať z jazykov Python a R na trénovanie modelov nad tabuľkovými dátami. Okrem otvorených nástrojov firma ponúka aj komerčné produkty zamerané na automatizáciu a podnikové nasadenie.
Pre čitateľa na Slovensku je zaujímavé najmä to, že otvorený základ umožňuje skúšať a učiť sa bez licenčných poplatkov. Konkrétne produkty, licencie a funkcie sa však menia, preto si ich overte na oficiálnom webe.
Otvorený základ pre dátových analytikov
Ak ste niekedy počuli o „AutoML", teda automatizovanom strojovom učení, H2O je jedným z mien, ktoré sa s týmto pojmom spájajú. Myšlienka je jednoduchá: namiesto toho, aby ste ručne skúšali desiatky postupov a ladili ich nastavenia, necháte knižnicu, aby to urobila za vás, a vy len porovnáte výsledky.
Nástroj je primárne určený ľuďom, ktorí aspoň trochu programujú alebo sa chcú naučiť. Typický používateľ je študent dátovej vedy, analytik, vývojár alebo malý tím, ktorý chce silný nástroj bez nutnosti platiť licencie. Pre úplných laikov, ktorí chcú len „nahrať tabuľku a kliknúť", sú vhodnejšie nástroje typu Obviously AI alebo Akkio.
Ako to funguje
Otvorené riešenie funguje ako výpočtový nástroj, ktorý spracúva dáta v pamäti a môže bežať na jednom počítači aj na klastri strojov. Programátor k nemu pristupuje cez rozhranie vo svojom jazyku.
Typický postup vyzerá takto:
- Načítate dáta do prostredia H2O.
- Určíte cieľový stĺpec a základné obmedzenia, napríklad ako dlho sa smie hľadať.
- Spustíte automatické hľadanie modelov.
- Dostanete rebríček modelov a môžete ich porovnať, vysvetliť a uložiť.
Súčasťou ekosystému sú aj nástroje na vysvetľovanie modelov a ďalšie produkty, ktoré firma ponúka. Ich presný rozsah a názvy si pozrite na oficiálnom webe, pretože sa vyvíjajú.
Dôležité je, že pracujete s klasickým strojovým učením nad tabuľkami, nie s obrázkami ani s textom na úrovni veľkých jazykových modelov. Firma sa venuje aj generatívnej umelej inteligencii, no detaily ponuky sa rýchlo menia.
Na čo ho použiť
- Učenie sa strojového učenia. Študenti a samouci si môžu zdarma vyskúšať postup od dát po model.
- Rýchle základné modely. Analytik si vytvorí referenčný model, s ktorým porovná neskoršie, zložitejšie pokusy.
- Spracovanie väčších tabuľkových dát, ktoré by sa v bežnom nástroji spracúvali pomaly.
- Predikcie v malých a stredných firmách, ktoré majú vlastného programátora a nechcú platiť za komerčnú platformu.
- Výskumné projekty, kde je dôležitá reprodukovateľnosť a možnosť nahliadnuť do kódu.
- Prototypy pred nasadením do prostredia s vlastnými požiadavkami na bezpečnosť.
Ako začať krok za krokom
- Rozhodnite sa, či budete pracovať v Pythone alebo v R. Pre začiatočníkov býva praktickejší Python.
- Pripravte si prostredie. Dobrou voľbou je Jupyter alebo Google Colab, kde nemusíte nič inštalovať na vlastný počítač.
- Postupujte podľa inštalačných pokynov v oficiálnej dokumentácii, pretože presný postup závisí od prostredia a verzie.
- Nahrajte malý demonštračný súbor, napríklad voľne dostupný dataset z Kaggle.
- Spustite automatické hľadanie modelu s krátkym časovým limitom a pozrite si rebríček.
- Skúste modelu vysvetliť jeden výsledok, aby ste pochopili, ktoré vlastnosti rozhodovali.
- Až potom prejdite na vlastné dáta a podobný postup zopakujte.
Tipy pre lepšie výsledky
Oddeľte dáta na trénovaciu a testovaciu časť skôr, než začnete čokoľvek skúšať. Najčastejšou chybou začiatočníkov je meranie kvality na rovnakých dátach, na ktorých sa model učil.
Dávajte pozor na unikanie informácií. Ak medzi vstupmi je stĺpec, ktorý prezrádza výsledok, model bude vyzerať skvele, ale v praxi zlyhá.
Začnite jednoducho. Referenčný model s rozumnými nastaveniami často prekoná zložité pokusy, ktoré nik nevie vysvetliť.
Uchovávajte si zápis, ako model vznikol: aké dáta, aké nastavenia, aký dátum. Pomôže vám to, keď sa o pol roka niekto spýta, prečo model rozhoduje práve takto.
Obmedzenia a riziká
Nutnosť programovať. Otvorený nástroj nie je určený na klikanie. Bez základov Pythonu alebo R sa môžete zaseknúť.
Presnosť a interpretácia. Automatický výber najlepšieho modelu nenahrádza porozumenie dátam. Aj dobre vyzerajúce výsledky môžu byť zavádzajúce.
Prevádzka. Trénovať model je jedna vec, spravovať ho v produkcii je druhá. Ak potrebujete schvaľovanie, monitoring a bezpečnostné kontroly, počítajte s ďalšou prácou alebo s komerčnými nadstavbami.
Súkromie. Pri lokálnom behu zostávajú dáta u vás, čo je výhoda. Ak využívate cloudové služby, platia pravidlá ich poskytovateľa. Vždy sa riaďte pravidlami o ochrane osobných údajov.
Licencie. Pri otvorenom softvéri sledujte licenčné podmienky, najmä keď ho nasadzujete v komerčnom produkte. Aktuálne znenie nájdete v oficiálnom repozitári a dokumentácii.
Pre koho nie je vhodný
Ak nechcete programovať a potrebujete výsledok za hodinu, zvoľte jednoduchší webový nástroj. Ak potrebujete rozsiahlu podporu a záruky, zvážte komerčnú platformu. Ak pracujete s obrázkami, zvukom alebo textom na pokročilej úrovni, budete potrebovať iné knižnice a modely, napríklad z Hugging Face.
Rozmyslite si aj to, kto bude riešenie udržiavať. Otvorený softvér je zadarmo, no čas ľudí, ktorí s ním pracujú, nie.
Krátky pracovný príklad
Študent dátovej vedy dostane úlohu odhadnúť, ktoré nemocničné objednávky budú mať predĺžený čas vybavenia, pričom pracuje s verejným datasetom. Otvorí si zošit v Google Colab, načíta dáta do H2O, rozdelí ich na trénovaciu a testovaciu časť a spustí automatické hľadanie s krátkym časovým limitom.
Dostane rebríček modelov a vyberie ten, ktorý je pre jeho potreby dostatočne presný, no zároveň jednoduchší na vysvetlenie. Potom si prezrie, ktoré vlastnosti najviac ovplyvnili predikciu, a výsledky zhrnie v krátkej správe. Pri ďalšom pokuse zmení prípravu dát a sleduje, či sa výsledok zlepšil. Takto sa za pár hodín naučí celý cyklus, ktorý by si inak vyžadoval množstvo vlastného kódu.
Alternatívy z katalógu
Komerčnú platformu s dôrazom na správu a nasadenie ponúka DataRobot. Vizuálne skladanie dátových postupov s možnosťou zapojiť kód ponúka KNIME. Pre prostredie, kde môžete H2O vyskúšať bez inštalácie, poslúži Google Colab alebo Jupyter. A ak ste vo firme, ktorá používa veľkú dátovú platformu, zvážte Databricks.
Časté otázky
Je H2O.ai zadarmo?
Otvorená časť je dostupná bez licenčného poplatku, firma však ponúka aj platené produkty. Aktuálne podmienky overte na oficiálnom webe.
Musím vedieť programovať?
Pre otvorenú knižnicu áno, aspoň základy Pythonu alebo R. Pre pohodlnejšie rozhrania sa pozrite na ponuku firmy alebo na iné nástroje.
Hodí sa na učenie?
Áno, najmä pre študentov a samoukov, ktorí chcú vidieť celý postup tvorby modelu na tabuľkových dátach. Tréning si môžete spraviť na verejných datasetoch.
Dá sa použiť vo firme?
Áno, mnohé organizácie používajú otvorené nástroje. Nezabudnite však na bezpečnosť, licencie a údržbu.